WHR-G54 は、 BLR3-TX4 に 802.11G-MPCI を追加したものとか。
BLR3-TX4 と WHR-G54 との違いがわかれば、 802.11G-MPCI の使い方がわかるのではないかと考えた。
例によって、strings BLR3F141b.EXE すると、またまた例によって、
[yasunari@giga BLR3-TX4]$ strings BLR3F141b.EXE | less : : BLR3-TX4 1.01 vmlinux : :この並び。
[yasunari@giga BLR3-TX4]$ od -xc BLR3F141b.EXE |less
:
:
0166700 0000 0001 0000 0201 424c 5233 2d54 5834
\0 \0 \0 001 \0 \0 002 001 B L R 3 - T X 4
0166720 0000 0000 0000 0000 0000 0000 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0166740 0000 0000 0000 0000 312e 3031 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 1 . 0 1 \0 \0 \0 \0
0166760 0000 0000 0000 0000 0000 0000 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0167000 0000 0000 0000 0000 0001 0029 0000 6805
\0 \0 \0 \0 \0 \0 \0 \0 \0 001 \0 ) \0 \0 h 005
0167020 0d0a 2c1e 005e 257a c908 194c 0000 006c
\r \n , 036 \0 ^ % z 311 \b 031 L \0 \0 \0 l
0167040 000b 2aa7 000b 2b13 0052 fa67 1f8b 0808
\0 \v * 247 \0 \v + 023 \0 R 372 g 037 213 \b \b
0167060 fad2 a240 0203 766d 6c69 6e75 7800 e45c
372 322 242 @ 002 003 v m l i n u x \0 344 \
:
:
まさに firmimg.bin。
[yasunari@giga BLR3-TX4]$ ls -l BLR3F141b.EXE
-rwxrw-r-- 1 yasunari root 6234112 May 14 13:52 BLR3F141b.EXE*
[yasunari@giga BLR3-TX4]$ tail -c 6173248 BLR3F141b.EXE > firmimg.bin
[yasunari@giga BLR3-TX4]$ od -xc firmimg.bin |head
0000000 0000 0001 0000 0201 424c 5233 2d54 5834
\0 \0 \0 001 \0 \0 002 001 B L R 3 - T X 4
0000020 0000 0000 0000 0000 0000 0000 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0000040 0000 0000 0000 0000 312e 3031 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 1 . 0 1 \0 \0 \0 \0
0000060 0000 0000 0000 0000 0000 0000 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0000100 0000 0000 0000 0000 0001 0029 0000 6805
\0 \0 \0 \0 \0 \0 \0 \0 \0 001 \0 ) \0 \0 h 005
[yasunari@giga BLR3-TX4]$ /home/linkstation/getfirm/getfirm firmimg.bin
info_ver 00000001
firmid 00000201
firmname BLR3-TX4
subver 1.01
ver_major 0001
ver_minor 0029
build 0000
date 6805 0d0a 2c1e
size 005e257a
chksum c908194c
kernel_offset 0000006c(108)
kernel_size 000b2aa7(731815)
initrd_offset 000b2b13(731923)
initrd_size 0052fa67(5438055)
[yasunari@giga BLR3-TX4]$ file vmlinux.gz
vmlinux.gz: gzip compressed data, was "vmlinux", from Unix, max compression
[yasunari@giga BLR3-TX4]$ file ramdisk.image.gz
ramdisk.image.gz: gzip compressed data, was "wlmr_loopfiles", from Unix, max compression
[yasunari@giga BLR3-TX4]$ gunzip ramdisk.image.gz
[yasunari@giga BLR3-TX4]$ file ramdisk.image
ramdisk.image: Linux rev 1.0 ext2 filesystem data
[yasunari@giga BLR3-TX4]$ su root
Password:
[root@giga BLR3-TX4]# mkdir root
[root@giga BLR3-TX4]# mount -o loop ramdisk.image root
[root@giga BLR3-TX4]# ls root
bin debug dev etc home lib lost+found mnt proc root sbin tmp usr var
[root@giga BLR3-TX4]# cd root
[root@giga root]# tar zcvf ../root.tar.gz .
[root@giga root]# cd ..
[root@giga BLR3-TX4]# umount root
[root@giga BLR3-TX4]# cd root
[root@giga root]# tar zxvf ../root.tar.gz
[root@giga root]# ls -lR > ls-lR
ls -lR の結果を見ていたのだが、
LinkStation とはカーネルのベースバージョンが違うとか、
chroot とか、
ごみいっぱいとか、、、
けっこう面白い。
[yasunari@giga WHR-G54]$ od -xc whrg54-213b.bin |less
0000000 0000 0001 0000 0202 5748 522d 4735 3400
\0 \0 \0 001 \0 \0 002 002 W H R - G 5 4 \0
0000020 0000 0000 0000 0000 0000 0000 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0000040 0000 0000 0000 0000 312e 3031 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 1 . 0 1 \0 \0 \0 \0
0000060 0000 0000 0000 0000 0000 0000 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0000100 0000 0000 0000 0000 0002 000d 0000 6805
\0 \0 \0 \0 \0 \0 \0 \0 \0 002 \0 \r \0 \0 h 005
0000120 0d11 391d 0066 2e6c d718 76d5 0000 006c
\r 021 9 035 \0 f . l 327 030 v 325 \0 \0 \0 l
0000140 000b 28b1 000b 291d 005b 054f 1f8b 0808
\0 \v ( 261 \0 \v ) 035 \0 [ 005 O 037 213 \b \b
0000160 7438 a340 0203 766d 6c69 6e75 7800 e45c
t 8 243 @ 002 003 v m l i n u x \0 344 \
:
:
firmimg.bin そのもののようである。[yasunari@giga WHR-G54]$ /home/linkstation/getfirm/getfirm whrg54-213b.bin info_ver 00000001 firmid 00000202 firmname WHR-G54 subver 1.01 ver_major 0002 ver_minor 000d build 0000 date 6805 0d11 391d size 00662e6c chksum d71876d5 kernel_offset 0000006c(108) kernel_size 000b28b1(731313) initrd_offset 000b291d(731421) initrd_size 005b054f(5965135) yasunari@giga WHR-G54]$ ls ramdisk.image.gz vmlinux.gz whrg54-213b.bin* [yasunari@giga WHR-G54]$ gunzip ramdisk.image.gz [yasunari@giga WHR-G54]$ su root Password: [root@giga WHR-G54]# mkdir root [root@giga WHR-G54]# mount -o loop ramdisk.image root [root@giga WHR-G54]# ls root bin debug dev etc home lib lost+found mnt proc root sbin tmp usr var [root@giga WHR-G54]# cd root [root@giga root]# tar zcvf ../root.tar.gz . [root@giga root]# cd .. [root@giga WHR-G54]# umount root [root@giga WHR-G54]# cd root [root@giga root]# tar zxvf ../root.tar.gzls -lR の結果
[root@giga firmware]# ls -l BLR3-TX4/vmlinux.gz WHR-G54/vmlinux.gz -rw-r--r-- 1 yasunari root 731815 Jun 26 04:43 BLR3-TX4/vmlinux.gz -rw-r--r-- 1 yasunari root 731313 Jun 27 01:40 WHR-G54/vmlinux.gzvmlinux.gz のサイズが違う。
[root@giga firmware]# ls -l BLR3-TX4/vmlinux WHR-G54/vmlinux -rw-r--r-- 1 yasunari root 1794056 Jun 26 04:43 BLR3-TX4/vmlinux -rw-r--r-- 1 yasunari root 1789960 Jun 27 01:40 WHR-G54/vmlinux [root@giga firmware]# cmp BLR3-TX4/vmlinux WHR-G54/vmlinux BLR3-TX4/vmlinux WHR-G54/vmlinux 異なります: バイト 39、行 1当然カーネルも違う。
さて、、、
diff -rc BLR3-TX4/root/etc/rc.d/init.d/wireless.sh WHR-G54/root/etc/rc.d/init.d/wireless.sh
*** BLR3-TX4/root/etc/rc.d/init.d/wireless.sh 2002-08-28 15:06:33.000000000 +0900
--- WHR-G54/root/etc/rc.d/init.d/wireless.sh 2004-05-13 17:56:37.000000000 +0900
:
:
***************
*** 85,91 ****
#set WDS Only mode
if [ -f /etc/eapol.conf ]; then
# set in the EapolRadius modules.
! eles
if [ "$INFRAALLOW" != "" ]; then
echo -n "airset $WIRELESS infra use $INFRAALLOW" | /bin/CLIparser
else
--- 42,48 ----
#set WDS Only mode
if [ -f /etc/eapol.conf ]; then
# set in the EapolRadius modules.
! else
if [ "$INFRAALLOW" != "" ]; then
echo -n "airset $WIRELESS infra use $INFRAALLOW" | /bin/CLIparser
else
:
:
こんな差分を見せられたら、ハックするのいやになった。[root@hackkit wl]# insmod wl.o insmod: QM_MODULES: Function not implementedえぇーー。カーネルがモジュールをサポートしていない???
| ← | LinkStation/玄箱 をハックしよう | → HD-120LAN 新規 HDD の接続 |