Commit Graph

23 Commits

Author SHA1 Message Date
Mathias Hall-Andersen
029410b118 Rework of entire locking system
Locking on the Device instance is now much more fined-grained,
seperating out the fields into "resources" st. most common interactions
only require a small number.
2018-02-02 16:40:14 +01:00
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
479a6f240e Fixed typos 2017-11-29 21:12:09 +01:00
Mathias Hall-Andersen
471f7ff08e Added cross namespace TUN status detection 2017-11-29 18:46:31 +01:00
Mathias Hall-Andersen
fa399a91d5 Ported remaining netns.sh
- Ported remaining netns.sh tests
- Begin work on generic implementation of bind interface
2017-11-17 17:25:58 +01:00
Mathias Hall-Andersen
e1227d3af4 Allows passing UAPI fd to service 2017-11-17 14:36:08 +01:00
Mathias Hall-Andersen
88801529fd Moved TUN device creation to pre-fork 2017-11-14 18:26:28 +01:00
Mathias Hall-Andersen
eefa47b0f9 Begin work on source address caching (linux) 2017-09-24 21:35:25 +02:00
Mathias Hall-Andersen
0294a5c0dd Improved handling of key-material 2017-09-01 14:21:53 +02:00
Mathias Hall-Andersen
c6d03ef17f Update MTU based on netlink messages (linux) 2017-08-22 14:57:32 +02:00
Mathias Hall-Andersen
04640eb629 Added missing IF index check 2017-08-17 12:58:18 +02:00
Mathias Hall-Andersen
24f9394f64 Detects interface status on linux 2017-08-17 00:25:39 +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
47f8a3d89a Moved remaining platform dependent UAPI code 2017-07-20 15:06:24 +02:00
Mathias Hall-Andersen
bd6027a4d5 Fixed file descriptor leak on linux 2017-07-18 14:15:29 +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
ed31e75739 Fixed cookie reply processing bug 2017-07-07 13:47:09 +02:00
Mathias Hall-Andersen
1e620427bd Handshake negotiation functioning 2017-07-01 23:29:22 +02:00
Mathias Hall-Andersen
ba3e486667 Completed initial version of outbound flow 2017-06-30 14:41:08 +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