Все статьи на opennet описывают создание модуля NDIS для FreeBSD старым методом:
ndiscvt -i *.inf -s *.sys -o ndis_driver_data.hДанный способ уже давно устарел и теперь нужно использовать программу ndisgen.
Например. Имеем файлы из комплекта Windows драйверов:
Fw1130.bin - Network interface firmware.
FwRad16.bin - Radio firmware.
TNET1130.INF - Driver information file.
tnet1130.sys - Driver binary.
Старый способ:
cd /sys/modules/ndis
make depend
make
make install
cd ../if_ndis
ndiscvt -i TNET1130.INF -s tnet1130.sys -f Fw1130.bin -o ndis_driver_data.h
make depend
make
make install
ndiscvt -f FwRad16.bin
cp FwRad16.bin.ko /boot/kernel
kldload FwRad16.bin
kldload if_ndis
Для автоматизации загрузки помещаем в /boot/loader.conf
FwRad16.bin_load="YES"
if_ndis_load="YES"
Новый способ (не требует установки исходных текстов ядра):
ndisgen
... отвечаем на интерактивные вопросы, на выходе получаем tnet1130_sys.ko
cp tnet1130_sys.ko /boot/kernel/
kldload ndis
kldload if_ndis
kldload tnet1130_sys
Для автоматизации загрузки помещаем в /boot/loader.conf
ndis_load="YES"
if_ndis_load="YES"
tnet1130_sys_load="YES"
URL: http://www.pingwales.co.uk/2005/07/15/Project-Evil.html
Обсуждается: http://www.opennet.dev/tips/info/998.shtml