egrep in /usr/sbin/ndisgen

Thomas Mueller mueller6724 at
Wed Dec 11 01:27:34 UTC 2013

from Toomas AAS:

> I'm trying to generate a NDIS-wrapped driver for my USB WiFi adapter
> that is not directly supported by FreeBSD. I've tried various versions
> of Windows driver, but ndisgen doesn't like any of the INF files: "I
> don't recognize this file format. It may not be a valid .INF file."

> The INF file validation that is performed by /usr/sbin/ndisgen is:

> ${EGREP} -i -c "Signature|.S.i.g.n.a.t.u.r.e" ${INFPATH}

> I tried this on the latest INF file at hand, and indeed it returns zero:

> $ egrep -i -c "Signature|.S.i.g.n.a.t.u.r.e" netr28ux.inf

> However:

> $ egrep -i -c ".S.i.g.n.a.t.u.r.e" netr28ux.inf

> So, why does the first egrep not match if the second one matches?

> My OS version is 9.2-STABLE amd64

> Toomas

I had a problem of ndisgen not recognizing the .INF file simply because of the lack of a carriage return (ASCII 13) at the end.

So I opened vi, added a carriage return at the end. Or was it the other way around?

Then I was able to generate the NDIS-wrapped kernel module for 9.2_STABLE amd64 and also 9.1_STABLE i386.

But this failed to connect to network.

This was enough to make me remove NDIS support from my config for 10-STABLE and 11-HEAD.

Good part is that I finally managed to make the wireless connection with Hiro H50191 USB adapter, chipset RSU8191SU, device rsu in FreeBSD 10-STABLE and 11-HEAD.  dhclient succeeded but slower than with a working Ethernet/wired connection.

Perhaps what went wrong previously, why I was unable to connect, was wrong software commands or failing Netgear router.

Now I use TP-Link TL-WR841N router, which I bought on my own.


More information about the freebsd-questions mailing list