sscanf(s, "%x=%x", &ia, &ib);
でいいだろうに。

つーか、桁数を制限するならちゃんと'='の位置を確認するべき。
それをサボるなら一旦adrやdataにコピーする必要はない。

それから、fgets()の第2パラメータはsizeof bufにしておく方が無難。
#あとでsのサイズを100以外にするときに修正漏れが起きる可能性があるから。