BS再編でトバッチリ、バイナリとにらめっこ(2)
どうやらPLEX配布のドライバーにバージョン違いがあるらしい。気持ち悪いので調べてみた。ダウンロードしてみたところ、コンパイル済みのtty_Virtual.koとusb-px4.koがzipで固めてあるだけだった。以前はrecpt1も同梱だった気がする。さっそくハッシュをとってみる。
$ md5sum usb-px4.ko e481c5ad4f0e085c23f19d968d461655 usb-px4.ko
違いますねえ。ファイルサイズも違う。なにやってんだろ。
$ ls -l usb-px4.ko -rw-rw-r-- 1 foo foo 7838824 Dec 22 14:03 usb-px4.ko $ ls -l ../Linux_Driver/Linux_Driver/usb-px4.ko -rw-rw-r-- 1 foo foo 7387804 Sep 14 2017 ~/somewhere/usb-px4.ko
.dataセクションも違います。オフセットもアライメントもサイズも。
[20] .data PROGBITS 0000000000000000 00049940 0000000000015d40 0000000000000000 WA 0 0 32
しかし、場所が変わるだけで要領は同じ。これだと掲示板の情報と一致する。そもそも、手元のバイナリを覗いて様子が違うから自力で解決したのに。バージョン違いとは...
$ cmp -l usb-px4.ko usb-px4_20180510.ko | gawk '{printf "%08X %02X %02X\n", $1-1, strtonum(0$2), strtonum(0$3)}' 00049C88 50 78 00049C89 88 F2 00049C8A B3 B2 00049C98 31 12 00049E68 60 50 00049E69 0B 88 00049E6A B7 B3 00049E78 F2 31 0004ABF8 01 00 0004ABFC 01 02 0004ACA0 07 01
改造後のハッシュ。
$ md5sum usb-px4_20180510.ko 397cdc7a9f3ddaa5cec9f3baad382297 usb-px4_20180510.ko
ん、待てよ。ワシのんCentOS 6.9やん。関係ないわ。テストなんかせんでよかった。