Commit Graph

303 Commits

Author SHA1 Message Date
Adrien Gallouët
8b9fc86d12 Fix stats on links with latency > MUD_STAT_TIMEOUT
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-15 08:12:41 +00:00
Adrien Gallouët
66b8a7323d Code cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-14 22:47:33 +00:00
Adrien Gallouët
865c6aa640 Compute MTU only with usable paths
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-14 22:36:58 +00:00
Adrien Gallouët
2c5eb574f9 Add a specific timer for mtu probing
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-14 18:47:43 +00:00
Adrien Gallouët
ef319d2153 Add mud_set_keyx_timeout()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-14 06:54:38 +00:00
Adrien Gallouët
467310bb4f Create ephemeral key at startup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-14 06:49:44 +00:00
Adrien Gallouët
b787bad536 Store addr on errors
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-14 06:40:37 +00:00
Adrien Gallouët
93d7d36b68 Hardening and fixes
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-13 18:32:14 +00:00
Adrien Gallouët
87d9806a88 Clear errno if no path
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-12 14:59:59 +00:00
Adrien Gallouët
ae3f4ed9ac Count and store last time of bad mud_decrypt()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-12 10:28:05 +00:00
Adrien Gallouët
b53248b6da Send ip and port to peers
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-10 15:31:41 +00:00
Adrien Gallouët
bb6b87bb54 Hardening
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-09 22:14:10 +00:00
Adrien Gallouët
cd4ad61d1c Always kiss your friends <3 + add it in the nonce
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-06 16:00:12 +00:00
Adrien Gallouët
b809bf0785 First draft of path mtu disc without icmp
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-04 15:14:18 +00:00
Adrien Gallouët
c583e207c8 Return ENOTSUP if aes256gcm is not supported
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-03-04 14:58:52 +00:00
Adrien Gallouët
5aeb0a3cb2 Ask for a gnu99 compiler
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-27 09:28:16 +00:00
Adrien Gallouët
5a62bd7faa Add mud_get_paths() to export all paths
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-26 23:57:39 +00:00
Adrien Gallouët
81b279b060 Add up,backup and down states
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-24 15:26:38 +00:00
Adrien Gallouët
ac1ba977f4 Setup cmsg directly in mud_send_path()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-24 14:54:44 +00:00
Adrien Gallouët
7303dea98c Let's decrypt everything
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-20 19:30:16 +00:00
Adrien Gallouët
1aded8ec29 Unset skip flag when adding a knwon path
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-17 20:21:45 +00:00
Adrien Gallouët
53f8d31f77 Use size_t for mtu
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-16 15:57:03 +00:00
Adrien Gallouët
7013d8e323 Cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-15 14:18:48 +00:00
Adrien Gallouët
6e5e2dea64 Autoselect ipv4/ipv6
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-15 14:10:28 +00:00
Adrien Gallouët
219e17edb6 Ask for sockaddr directly
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-14 21:30:17 +00:00
Adrien Gallouët
582eb29617 Use unsigned long in mud_set_x()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-11 10:14:58 +00:00
Adrien Gallouët
d8ede46d8a Avoid useless copies and protect keys
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-02-06 18:10:39 +00:00
Adrien Gallouët
d4546ccae0 Add mud_del_path()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-01-29 16:17:06 +00:00
Adrien Gallouët
61e7a23a11 Rework mud->peer and remove mud_ipaddr
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-01-29 16:17:06 +00:00
Adrien Gallouët
7c90d54b91 Add mud_add_path()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-01-24 16:27:41 +00:00
Adrien Gallouët
a6555c8ab1 Format code
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-01-24 10:14:08 +00:00
Adrien Gallouët
8d861c9682 Allow client to add the first path
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-01-24 10:07:59 +00:00
Adrien Gallouët
368ab1b710 Add some checks in mud_set_path()
They are useless in theory but as we do not define
the macros CMSG_FIRSTHDR and CMSG_NXTHDR..

Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2017-12-01 11:02:33 +00:00
Adrien Gallouët
13cf44c813 Code cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2017-11-26 13:17:15 +00:00
Adrien Gallouët
91cf697fb4 Set MSG_CONFIRM
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2017-11-16 09:45:17 +00:00
Adrien Gallouët
153108aeac Cleanup .travis.yml
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2017-11-16 07:51:06 +00:00
Adrien Gallouët
2c82c01233 Don't set mtu in mud_create()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2017-11-15 22:44:03 +00:00
Adrien Gallouët
21957cc0cc Add mud_set_aes()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2017-11-15 22:41:13 +00:00
Adrien Gallouët
63b0b4261c Check for MUD_DFRAG to disable fragment flag
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2017-11-15 22:24:29 +00:00
Adrien Gallouët
522ca2804d Add mud_new_key()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2017-11-15 22:04:44 +00:00
Adrien Gallouët
78b76437e5 Force _GNU_SOURCE on Linux 2017-03-07 10:41:29 +00:00
Adrien Gallouët
b9a346dd62 Update README.md 2017-03-02 17:40:09 +01:00
Adrien Gallouët
dfcc08feed Fix keyx regressions and cleanup 2017-01-29 12:01:27 +00:00
Adrien Gallouët
49662179e9 Refuse to create a new mud with a bad clock 2017-01-27 19:23:26 +00:00
Adrien Gallouët
996126cc40 Use MUD_EPOCH instead of 1970 2017-01-27 19:05:21 +00:00
Adrien Gallouët
f67eae0a7f Restore old behaviour 2017-01-20 09:52:28 +00:00
Adrien Gallouët
8dc7a2d4b3 Check for send_time too before dup 2017-01-19 14:53:56 +00:00
Adrien Gallouët
f6b6610980 Move mud_keyx in mud_conf 2017-01-18 15:23:37 +00:00
Adrien Gallouët
82299973e0 Code cleanup 2017-01-18 10:19:18 +00:00
Adrien Gallouët
762b4487bf Force kx on all paths 2017-01-16 16:10:28 +00:00