Hi all, as you probably have noticed, the amount of mails about problems with compiling ndis has increased in the last four weeks. The "old" way to compile ndis was to go to /usr/src/sys/modules/if_ndis/, use ndiscvt to create a header file containing the windows driver and to make;make install. It was fast and well documented in the handbook and on the web in general. Later Bill Paul wrote /usr/sbin/ndisgen to automate these steps. ndisgen is an interactive shell script, it is user friendly and describes what it's doing. However, using it is slower than the "old" way was. You can't use shell auto completion to specify the location of the drivers sys and inf files, some steps are done, even if they aren't needed each time you recompile ndis. ATM the existence of ndisgen is poorly documented. It's not mentioned in the handbook, not in the man pages and seldom appears on other websites. If you don't read the mailing lists or the cvs logs, you probably won't know about it. For a while the "new" and the "old" way coexisted, everybody was happy. Since perhaps four weeks, the "old" way stopped working for many (all?) people. You can still build and kldload the needed modules without error, but they will not work. Most of the time (every time?) ndisgen still does. AFAIK, nobody has announced that the "old" way is death, therefore I would like to know if the breakage is intentional and if it is, if there's a technical reason why these methods can no longer coexists. Mark A-J. Raught wrote on freebsd-mobile yesterday: "I prefer the old way, but as long as it works I'll suffer through the wizard feel." So do I, I guess we're not alone. Fabian -- http://www.fabiankeil.de/ -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 187 bytes Desc: not available Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20050705/56e9b039/attachment.bin
Daniel O'Connor
2005-Jul-06 01:52 UTC
ndisgen intended to be the only way to generate ndis?
On Tue, 5 Jul 2005 22:49, Fabian Keil wrote:> AFAIK, nobody has announced that the "old" way is death, > therefore I would like to know if the breakage is intentional > and if it is, if there's a technical reason why these methods > can no longer coexists.The "old way" built the .sys and .inf files into a .ko along with if_ndis code. In the "new way" you build the .sys and .inf files into a .ko without any other code. When you load it, it pulls in if_ndis which then reads the wrapped .sys and .inf file you loaded. You can't build things the "old way" any more because the if_ndis code no longer expects to be linked to a .sys file. I suggest the best approach would be to submit improved documentation for the ndiscvt man page (and a new ndisgen page) along with some handbook changes. It would also be fairly trivial to modify ndisgen to take some arguments. -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 187 bytes Desc: not available Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20050706/7b8b83ff/attachment.bin