NDISwrapper is a free software driver wrapper that enables the use of Microsoft Windows drivers for wireless network devices (cards, USB modems, and routers), on Unix-like operating systems. Ndiswrapper works by implementing the Windows kernel and NDIS APIs, and dynamically linking the driver to this implementation.
With the release of Hardy Heron, I tried getting NDISwrapper working, as it was my prefered method of wireless on my Dell 1501. I tried a bunch of different methods but nothing worked for me. I was reading linux.slashdot.org today when I came across this article.
It explains why I was unable to get ndiswrapper to work in Hardy Heron. A change in the 2.6.24 kernel broke ndiswrapper by accidentally removing its access to GPL-only symbols. Without access to GPL-only symbols NDISwrapper is unable to implement the Windows kernel and NDIS APIs and link the driver.
Pavel Roskin attempted to patch the kernel to allow NDISwrapper to access those GPL-only symbols but Linus Torvalds shot down his patch. He stated, "I'm not seeing why ndiswrapper should be treated separately. If it loads non-GPL modules, it shouldn't be able to use GPLONLY symbols." He then went on to state, "ndiswrapper itself is *not* compatible with the GPL. Trying to claim that ndiswrapper somehow itself is GPL'd even though it then loads modules that aren't is stupid and pointless. Clearly it just re-exports those GPL ONLY functions to code that is *not* GPL'd."
Linus makes a excellent point, if NDISwrapper is going to abuse the use of GPL-only sysmbols by exporting them to code that is not GPL then they should not have access to GPL code. While it saddens me that the faster method of using the Broadcom card in my Dell Inspiron 1501 is gone, I do believe in the GPL.
Until then there's always:
sudo apt-get install b43-fwcutter
edited by pHreaksYcle