Hi All,<br><br>As some of you have requested, I&#39;ve extracted the code from my (under work) VPN which talks to the TUN/TAP device under Linux (/dev/net/tun).<br><br>Some things to note:<br>1) I&#39;ve only tested this under Linux.<br>

2) The help-win.c file under cbits HAS allowed similar code to talk to the TUN/TAP driver used by the OpenVPN project, but I haven&#39;t implemented this functionality yet.<br>3) The help-bsd.c file under cbits HAS allowed Mac/BSD flavors to talk to a TUN/TAP driver, but I&#39;ve never tested this and haven&#39;t implemented this functionality yet.<br>

<br>I don&#39;t have a whole lot there right now, but keep a lookout for more releases with some examples and better docs (as I get around to it).<br><br>For a very verbose example, you can look at how I use the Network.TUNTAP module in this project: <a href="http://github.com/sw17ch/Scurry" target="_blank">http://github.com/sw17ch/Scurry</a>, specifically <a href="http://github.com/sw17ch/Scurry/blob/master/src/Scurry/TAPTask.hs">http://github.com/sw17ch/Scurry/blob/master/src/Scurry/TAPTask.hs</a>.<br>

<br>Hackage: <a href="http://hackage.haskell.org/package/tuntap" target="_blank">http://hackage.haskell.org/package/tuntap</a><br>GitHub: <a href="http://github.com/sw17ch/tuntap" target="_blank">http://github.com/sw17ch/tuntap</a><br>
<br>John Van Enk<br><br>PS: Thanks to Matthew Isleb and Job Vranish for their help on the C code used.<br>