|
从大神修改hw_hardinfo_feature打开shell功能得到启发,好奇看了下/etc/wap下面的文件,尤其/etc/wap/customize下面的customize_relation.cfg:
) `, \4 O' G2 Y. `binword="COMMON" cfgword="COMMON" featurefile="common_ft.cfg" specfile="spec_common.cfg" defaultctree="hw_default_china_wifi.xml" recoverscrip="recover_common.sh" updatescrip="upgrade_common.sh" webconfig="common_webconfig.xml" description="通用设备"
/ _# T' F* W+ H* w7 ]! s. x/ Obinword="COMMON" cfgword="CLOSETELNET" featurefile="closetelnet_ft.cfg" specfile="spec_common.cfg" defaultctree="hw_default_closetelnet.xml" recoverscrip="recover_common.sh" updatescrip="upgrade_common.sh" webconfig="common_webconfig.xml" description="通用安全设备"
" h) Y H/ ?- C/ `binword="COMMON" cfgword="UNICOM" featurefile="UNICOM_ft.cfg" specfile="spec_unicom.cfg" defaultctree="hw_default_cu.xml" recoverscrip="recover_unicom.sh" updatescrip="upgrade_unicom.sh" webconfig="common_webconfig.xml" description="中国联通"5 k R2 o7 t& a$ D4 W4 W: ^9 j
binword="COMMON" cfgword="UNICOMBRIDGE" featurefile="UNICOM_ft.cfg" specfile="spec_unicom.cfg" defaultctree="hw_default_cubridge.xml" recoverscrip="recover_unicom.sh" updatescrip="upgrade_unicombridge.sh" webconfig="common_webconfig.xml" description="中国联通"
$ G! j) m, h% N) x1 Ebinword="COMMON" cfgword="CHINA" featurefile="china_ft.cfg" specfile="spec_china.cfg" defaultctree="hw_default_ringchk.xml" recoverscrip="recover_common.sh" updatescrip="upgrade_ringchk.sh" webconfig="common_webconfig.xml" description="通用设备"
$ Q9 }, _' s S! H( ~9 _' N6 {& y M9 z6 G" h
看起来可以把hw_boardinfo下面的如下修改下,会有惊喜:)3 V+ u4 C8 V8 Y0 u; u/ z
obj.id = "0x0000001b" ; obj.value = "UNICOMBRIDGE";
7 ?! p+ ~. a6 d- t, B, \+ W; S3 U& z* @或者2 R, ~" d8 K' F# ?
obj.id = "0x0000001b" ; obj.value = "CHINA";
9 A- y) S8 y9 i; G' I# f3 }4 Q, c: b2 R6 Q$ H
/etc/wap/customize下面其他cfg文件也有意思,但是具体作用尤其关联关系不详;! e. a" z3 b/ G: J% g
" X5 |9 c0 n) y e; ^
再看看/etc/wap/dm.cfg下面,列出了类似硬件对应配置文件。% K4 a+ U9 @& E& T/ c; I
: y. d- a g% w9 w! {选择 5116HG8310Mv2.cfg打开,关键内容如下:
- X0 S: C6 _# f- [; d& kobj.id="0xB0000001";obj.name="featurecfg_ssmp";obj.value="/etc/wap/ft/ssmp/HG8010.cfg";+ L% C4 d$ D7 i7 G: v+ C5 i0 P! Q
obj.id="0xB0000002";obj.name="featurecfg_bbsp";obj.value="/etc/wap/ft/bbsp/bin6_5116.cfg";
4 t9 h' b+ g% K* Lobj.id="0xB0000003";obj.name="featurecfg_amp";obj.value="/etc/wap/ft/amp/wlanoffbrdNoVEIP.cfg";+ C# u0 m- D- u Z& a
obj.id="0xB0000004";obj.name="featurecfg_vspa";obj.value="/etc/wap/ft/vspa/HG8010.cfg";
; j9 L0 D# h+ sobj.id="0xB0000005";obj.name="featurecfg_hard";obj.value="/mnt/jffs2/hw_hardinfo_feature";' y& T+ ~: ?! _5 `" x
obj.id="0xB0000011";obj.name="spec_ssmp";obj.value="/etc/wap/spec/ssmp/spec_16M.cfg";
! t9 J7 g3 t3 x1 `% p, N$ fobj.id="0xB0000012";obj.name="spec_bbsp";obj.value="/etc/wap/spec/bbsp/spec_v3_5116_default.cfg";
7 c. B9 K8 j7 A Dobj.id="0xB0000013";obj.name="spec_amp";obj.value="/etc/wap/spec/amp/spec_mini.cfg";
3 r4 o+ c/ q- d; @. R/ uobj.id="0xB0000014";obj.name="spec_vspa";obj.value="/etc/wap/spec/vspa/spec1.cfg";: Y! U! T1 ]" q# p
obj.id="0xB0000015";obj.name="spec_boardtype";obj.value="/etc/wap/boardtype.cfg/5116HG8010H2Class.cfg";' m+ ^* T$ X7 j/ i+ u
obj.id="0xB0000016";obj.name="spec_hard";obj.value="/mnt/jffs2/hw_hardinfo_spec";
1 S) J2 h; _/ P: A) F) {
$ Q' N5 Z/ R4 G b5 M恩,这就印证了修改/mnt/jffs2/hw_hardinfo_feature和mnt/jffs2/hw_hardinfo_spec来修改设备功能,能力和界面的有效应。+ T" S: a+ u9 _, H- ~
推断可以通过修改这两个文件的内容,来打开语言,功能,权限等,具体怎么改。没空尝试, =,= 等小白鼠。
9 h$ u+ l; ^) O' c8 G+ S \由于是修改jffs2,不用刷机,所以还是安全的。大不了用allshell2.bin覆盖一遍。 w: K* j* s1 D
1 E+ w8 ]+ a2 T- s可以参考的文件是HG8010.cfg,主要定义SSMP,管理选项。1 \8 K5 ~- n/ n- ^
feature.name="HW_SSMP_FEATURE_MNGT_GZCT",里面的feature.attribute="1"的表示支持这个功能,feature.enable="1" 表示启用了。这三个信息合起来,加载到hw_hardinfo_feature可以启用新的功能 (当然可能还有参数的关联性要考虑,小白鼠上,^_^)
; z' @3 ?. i, h* }; m1 e2 B4 k1 O% l( b: ^4 |
还有bin6_5116.cfg,蛮多内容,主要定义BBSP,具体功能项目,有如:) C4 a" Q8 n4 _* Z
feature.name="BBSP_FT_ROUTE" feature.enable="0" feature.attribute="0"
* d. Q$ j2 F$ R. a4 Cfeature.name="BBSP_FT_ROUTE_STATIC" feature.enable="0" feature.attribute="1"
4 f' r4 _" `+ H# D! E; t) z! \feature.name="BBSP_FT_ROUTE_POLICY" feature.enable="0" feature.attribute="0"
; D3 m" l. _& l3 pfeature.name="BBSP_FT_WAN_IP" feature.enable="0" feature.attribute="1"3 ?4 _* P" {9 j: h, O' j( [
feature.name="BBSP_FT_WAN_PPP" feature.enable="0" feature.attribute="1"
* o- T, N6 Z% U! A' x3 i& ~, yfeature.name="BBSP_FT_WAN_ETHLINK" feature.enable="0" feature.attribute="1"
! N, m& a- J& i9 A) rfeature.name="BBSP_FT_WAN_CFG" feature.enable="0" feature.attribute="1". k, a2 _- d# E5 i; O( }/ \+ u% J3 a
feature.name="BBSP_FT_INTERNET_WAN_AUTO_BIND" feature.enable="0" feature.attribute="1"
% {$ K( A7 C/ O/ D. [修改到hw_hardinfo_feature去应该会有点好玩的变化。(feature.attribute="0"表示不支持此项功能)。
, o6 Z; X, B$ F! t) z
8 o2 L& w3 [0 g3 m- z% t% w! iwlanoffbrdNoVEIP.cfg看起来不能乱动。3 H7 z a6 g! m6 W2 e% Z0 v* E. D9 N# H
- V3 w( Q" x$ M) `
/etc/wap/spec参数太复杂,如有修改的必要,使用如下的格式,加入到hw_hardinfo_spec中去。& {0 K$ M. f; a
spec.name="SSMP_SPEC_WEB_LANGUAGE_SET" spec.type="string" spec.value="english"$ B* H) Q3 t# a' H- }
spec.name="SSMP_SPEC_WEB_LANGUAGE" spec.type="string" spec.value="english") }0 p( b/ G; J
看起来是可以通过这个参数修改界面语言的。
+ B/ q: ~" n/ K0 D( I! O/ ?! B. _' h6 j, O
/etc/wap里头的文件是模板,优先级应该是hw_hardinfo_spec 和 hw_hardinfo_feature,然后是/etc/wap/customize下面选中的配置文件(这个文件怎么选中的?通过hw_boardinfo里头的0x1a和0x1b来控制)。% ?9 _* T. G9 D/ P
" [9 T: f1 g' P$ T! @) T, p各个参数的具体含义以及关联关系,只能靠尝试了。等反馈:)
8 R" O' q4 h: U; a% I! q
7 W. ]3 l* K, W3 p( t3 U5 P: q% f8 P5 f: s- X
|
|