I get the error Cannot ioctl TUNSETIFF tun0: File descriptor in bad state (errno=77)
What was happening earlier was that I built openvpn first, then realized I needed to build the tun/tap kernel module, so built that and then rebuilt openvpn - but configure (god bless it) used the cached result of NOT finding if_tun.h. I cleared configure's cache and rebuilt it again - this time it found "tun/tap v1.4". Now I'm onto a new set of problems though. Now I get:
34: Cannot ioctl TUNSETIFF tun: File descriptor in bad state (errno=77)
Though I've never seen this error personally, it has been talked about extensively on the vtun list (another tunneling daemon that uses the TUN/TAP driver).
Go to http://sourceforge.net/mailarchive/forum.php?forum_id=1826
and search for "bad state".
It appears to be caused by a mismatch between the tun/tap kernel module and the kernel itself.
What kernel version are you using?
Because in versions 2.4.6 and higher, the TUN/TAP module is integral to the kernel -- if you try to build an external version of the module, rather than using the one already bundled, it will likely fail.
Also, I've read a few posts that suggest that /usr/src/linux needs to point to headers that match the running kernel. Depending on what Sean has, it may be worthwhile to ensure all the various versions (kernel/headers/tunTap) all match.
