lokinet/vendor/libtuntap-master
Jeff dcb48db5fe
enable profiling on clients by default (#1421)
* enable client relay profiling by default

* macos dns fixes

* improve peer profiling algorithm to track timeouts vs failures

* remove debug ioctl call in tuntap code

* use ub_wait instead of ub_process as that was what was there before

* const correctness

* DRY out checking for SIIT

* typofix

* correct name
2020-10-27 17:34:09 -04: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 Move logging to subdirectory 2019-09-03 20:52:27 +01:00
tuntap-unix-aix.c include libtuntap 2018-06-23 05:18:31 -07:00
tuntap-unix-bsd.c that _should_ be just enough to implement TUN on Solaris 2.x 2019-03-25 12:03:55 -05:00
tuntap-unix-darwin.c fix prev commit 2019-02-06 13:34:07 -05:00
tuntap-unix-freebsd.c this? 2018-12-15 12:27:50 -05:00
tuntap-unix-linux.c Fix gcc trunk warnings 2019-08-02 10:29:08 +01: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 finally fix solaris 2019-06-18 19:35:10 -05:00
tuntap-unix.c enable profiling on clients by default (#1421) 2020-10-27 17:34:09 -04:00
tuntap-windows.c allow running lokinet as root on windows (#1347) 2020-09-17 15:20:50 -04:00
tuntap.cpp Move logging to subdirectory 2019-09-03 20:52:27 +01: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 !