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やん。関係ないわ。テストなんかせんでよかった。