You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
lokinet/vendor/libtuntap-master
Rick V 1eddba0dd3
that _should_ be just enough to implement TUN on Solaris 2.x
sadly this is ineligble for upstream because we don't bother
to use TAP in the slightest
5 years ago
..
bindings include libtuntap 6 years ago
doc include libtuntap 6 years ago
regress include libtuntap 6 years ago
CMakeLists.txt include libtuntap 6 years ago
Makefile include libtuntap 6 years ago
README.md include libtuntap 6 years ago
TODO.md include libtuntap 6 years ago
tuntap-unix-aix.c include libtuntap 6 years ago
tuntap-unix-bsd.c that _should_ be just enough to implement TUN on Solaris 2.x 5 years ago
tuntap-unix-darwin.c fix prev commit 5 years ago
tuntap-unix-freebsd.c this? 6 years ago
tuntap-unix-linux.c add initial jni stuff for lokinet android. i fucking hate android so god damn much. 6 years ago
tuntap-unix-netbsd.c we don't need TAP 6 years ago
tuntap-unix-openbsd.c the AVX2 codepaths now appear to be 32-bit clean. 6 years ago
tuntap-unix-sunos.c that _should_ be just enough to implement TUN on Solaris 2.x 5 years ago
tuntap-unix.c that _should_ be just enough to implement TUN on Solaris 2.x 5 years ago
tuntap-windows.c seek only the generic TAP device 5 years ago
tuntap.cpp Move lokinet unspecific components to a util/ library 5 years ago
tuntap_log.cpp Move lokinet unspecific components to a util/ library 5 years ago

README.md

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 !