[*] Emulating binary name: iwconfig
[*] Emulator used: qemu-mipsel
[*] Using root directory: /logs/s115_usermode_emulator/firmware/unblob_extracted/firmware_extract/DIR-600_fw_revb5_214b01_ALL_de_20130122/dir600b_v2.14_d1mg.bin_extract/1179788-3612812.squashfs_v4_le_extract (1/1)
[*] Using CPU config: NONE
[*] Emulating binary: /usr/sbin/iwconfig
[*] Emulating binary ./usr/sbin/iwconfig with parameter NONE
[*] Emulating binary ./usr/sbin/iwconfig with parameter -v
NONE No such device
[*] Emulating binary ./usr/sbin/iwconfig with parameter -V
iwconfig Version 26
Compatible with Wireless Extension v16 or earlier,
Currently compiled with Wireless Extension v16.
Kernel Currently compiled with Wireless Extension v22.
[*] Emulating binary ./usr/sbin/iwconfig with parameter -h
-V No such device
[*] Emulating binary ./usr/sbin/iwconfig with parameter -help
Usage: iwconfig interface [essid {NN|on|off}]
[nwid {NN|on|off}]
[mode {managed|ad-hoc|...}
[freq N.NNNN[k|M|G]]
[channel N]
[sens N]
[nick N]
[rate {N|auto|fixed}]
[rts {N|auto|fixed|off}]
[frag {N|auto|fixed|off}]
[enc {NNNN-NNNN|off}]
[power {period N|timeout N}]
[txpower N {mW|dBm}]
[commit]
Check man pages for more details.
[*] Emulating binary ./usr/sbin/iwconfig with parameter --help
-help No such device
[*] Emulating binary ./usr/sbin/iwconfig with parameter --version
Usage: iwconfig interface [essid {NN|on|off}]
[nwid {NN|on|off}]
[mode {managed|ad-hoc|...}
[freq N.NNNN[k|M|G]]
[channel N]
[sens N]
[nick N]
[rate {N|auto|fixed}]
[rts {N|auto|fixed|off}]
[frag {N|auto|fixed|off}]
[enc {NNNN-NNNN|off}]
[power {period N|timeout N}]
[txpower N {mW|dBm}]
[commit]
Check man pages for more details.
[*] Emulating binary ./usr/sbin/iwconfig with parameter version
iwconfig Version 26
Compatible with Wireless Extension v16 or earlier,
Currently compiled with Wireless Extension v16.
Kernel Currently compiled with Wireless Extension v22.
version No such device
For reproducing the EMBA user-mode emulation mechanism, the following commands could be used as starting point:
- Start EMBA docker container with the firmware directory as log directory:
# EMBA="." FIRMWARE="/home/runner/work/emba/emba/DIR-600_fw_revb5_214b01_ALL_de_20130122.zip" LOG="/absolute/path/to/EMBA/log/directory" docker-compose run emba
- Change your working directory to the root directory of your firmware:
# cd /logs/s115_usermode_emulator/firmware/unblob_extracted/firmware_extract/DIR-600_fw_revb5_214b01_ALL_de_20130122/dir600b_v2.14_d1mg.bin_extract/1179788-3612812.squashfs_v4_le_extract
- Copy the static compiled user-mode emulator to your current working directory
# cp $(which qemu-mipsel) .
- Start the emulation with the following command:
# jchroot . -- ./qemu-mipsel ./usr/sbin/iwconfig <parameters like -v or --help>
WARNING: EMBA is doing some more magic in the background. Probably it is not that easy, but give it a try.