Commit Graph

13 Commits

Author SHA1 Message Date
Mathias Hall-Andersen
996c7c4d8a Removed IFF_NO_PI from TUN linux
This change was needed for the Linux TUN status hack
to work properly (not increment the error counter).

This commit also updates the TUN interface to allow for
the construction / removal of the TUN info headers in-place.
2017-12-04 21:39:06 +01:00
Mathias Hall-Andersen
af464cff00 Better naming of bind helpers 2017-11-19 13:35:17 +01:00
Mathias Hall-Andersen
88801529fd Moved TUN device creation to pre-fork 2017-11-14 18:26:28 +01:00
Mathias Hall-Andersen
e86d03dca2 Initial implementation of source caching
Yet untested.
2017-10-16 21:33:47 +02:00
Mathias Hall-Andersen
4986cfe78b Add support for fwmark on linux 2017-08-22 17:22:45 +02:00
Mathias Hall-Andersen
c6d03ef17f Update MTU based on netlink messages (linux) 2017-08-22 14:57:32 +02:00
Mathias Hall-Andersen
cba1d6585a Number of fixes in response to code review
This version cannot complete a handshake.
The program will panic upon receiving any message on the UDP socket.
2017-08-07 15:25:04 +02:00
Mathias Hall-Andersen
8c34c4cbb3 First set of code review patches 2017-08-04 16:15:53 +02:00
Mathias Hall-Andersen
dd4da93749 Added padding
Added plaintext padding and fixed default interface MTU
2017-07-15 16:27:59 +02:00
Mathias Hall-Andersen
86707cbc88 Fixed MTU method for linux TUN interface
Updated the TUN interface
Added the "MTU" method for the linux implementation of the TUN interface
2017-07-11 22:48:58 +02:00
Mathias Hall-Andersen
1e620427bd Handshake negotiation functioning 2017-07-01 23:29:22 +02:00
Mathias Hall-Andersen
1f0976a26c Work on UAPI
Cross-platform API (get operation)
Handshake initiation creation process
Outbound packet flow
Fixes from code-review
2017-06-28 23:45:45 +02:00
Mathias Hall-Andersen
1868d15914 Beginning work on TUN interface
And outbound routing

I am not entirely convinced the use of net.IP is a good idea,
since the internal representation of net.IP is a byte slice
and all constructor functions in "net" return 16 byte slices
(padded for IPv4), while the use in this project uses 4 byte slices.
Which may be confusing.
2017-06-04 21:48:15 +02:00