lokinet/vendor/libtuntap-master
2018-11-08 07:36:18 -05:00
..
bindings include libtuntap 2018-06-23 05:18:31 -07:00
doc include libtuntap 2018-06-23 05:18:31 -07:00
regress include libtuntap 2018-06-23 05:18:31 -07:00
CMakeLists.txt include libtuntap 2018-06-23 05:18:31 -07:00
Makefile include libtuntap 2018-06-23 05:18:31 -07:00
README.md include libtuntap 2018-06-23 05:18:31 -07:00
TODO.md include libtuntap 2018-06-23 05:18:31 -07:00
tuntap_log.cpp Merge remote-tracking branch 'rick/dev' 2018-11-08 07:36:18 -05:00
tuntap-unix-aix.c include libtuntap 2018-06-23 05:18:31 -07:00
tuntap-unix-bsd.c hmm some BSDs implement SIOCSIFNAME, Solaris (being SVR4 UNIX) definitely does. 2018-08-23 13:44:44 -05:00
tuntap-unix-darwin.c Enable -Wextra 2018-11-07 15:31:13 +00:00
tuntap-unix-freebsd.c really make it compile 2018-10-29 13:22:26 -04:00
tuntap-unix-linux.c try fixing all that tun shit, YOLO 2018-10-01 13:16:15 -04:00
tuntap-unix-netbsd.c we don't need TAP 2018-09-24 12:07:34 -04:00
tuntap-unix-openbsd.c the AVX2 codepaths now appear to be 32-bit clean. 2018-10-01 15:06:07 -05:00
tuntap-unix-sunos.c hmm some BSDs implement SIOCSIFNAME, Solaris (being SVR4 UNIX) definitely does. 2018-08-23 13:44:44 -05:00
tuntap-unix.c Merge remote-tracking branch 'micheal/wextra' into dev 2018-11-07 10:57:34 -05:00
tuntap-windows.c fix warnings on windows 2018-11-07 18:09:49 -06:00
tuntap.cpp Merge remote-tracking branch 'rick/dev' 2018-11-07 11:05:47 -05:00

libtuntap

Description

libtuntap is a library for configuring TUN or TAP devices in a portable manner.

TUN and TAP are virtual networking devices which allow userland applications to receive packets sent to it. The userland applications can also send their own packets to the devices and they will be forwarded to the kernel.

This is useful for developping tunnels, private networks or virtualisation systems.

Supported Features

  • Creation of TUN and TAP devices;
  • Autodetection of available TUN or TAP devices;
  • Setting and getting the MAC address of the device;
  • Setting and getting the MTU of the device;
  • Setting the status of the device (up/down);
  • Setting the IPv4 address and netmask of the device;
  • Setting the persistence mode of the device;
  • Setting the name of the device (Linux only);
  • Setting the description of the device (OpenBSD and FreeBSD only).

Supported Systems

  • OpenBSD;
  • Linux;
  • NetBSD;
  • Darwin.

Current Porting Efforts

  • Windows;
  • FreeBSD.

In the future

  • AIX;
  • Solaris.

License

All the code is licensed under the ISC License. It's free, not GPLed !