Commit Graph
134 Commits
Author SHA1 Message Date
Logan oos EvenandGitHub 1586ae62a7 made n2n react more swiftly to (D)DNS changes (#705) 2021-06-07 17:57:49 +05:45
Logan oos EvenandGitHub 3c6ab56d3f allowed (temporarily) initially non-resolving supernode names (#701) 2021-06-05 17:54:32 +05:45
Logan oos EvenandGitHub c55e3e3246 multithreaded supernode name resolution (#645) 2021-06-04 03:52:12 +05:45
Logan oos EvenandGitHub a28327a0af added user-password edge authentication (#673) 2021-06-04 03:11:22 +05:45
Logan oos EvenandGitHub 667b7df083 added memrnd() (#685) 2021-04-19 00:47:37 +05:45
randomize00andGitHub cfa92d28d8 add callback function for hin2n to protect socket (#684) 2021-04-14 11:31:50 +05:45
randomize00andGitHub e2c687558f fix potential memory leak (#682)
authored-by: randomize00 <randomize00@users.noreply.github.com>
2021-04-07 14:31:40 +05:45
Sven RoedererandGitHub 23c18e349f drop non portable SOL_TCP / fix MacOS v2 (#680)
* Revert "Fix compilation on MacOS"

in order to another solution

* src: use IPPROTO_TCP in place of SOL_TCP

* use the more specific IPPROTO_TCP type for setsockopt
* fixes build on MacOS

src/edge_utils.c:891:31: error: use of undeclared identifier 'SOL_TCP'; did you mean 'FPP_TCP'?
        setsockopt(eee->sock, SOL_TCP, TCP_NODELAY, &value, sizeof(value));

src/edge_utils.c:894:31: error: use of undeclared identifier 'SOL_TCP'
        setsockopt(eee->sock, SOL_TCP, TCP_CORK, &value, sizeof(value));
                              ^
src/edge_utils.c:894:40: error: use of undeclared identifier 'TCP_CORK'
        setsockopt(eee->sock, SOL_TCP, TCP_CORK, &value, sizeof(value));

* include/n2n.h: drop redefiniton of SOL_TCP for WIN32, as we don't use it anywhere now

* src: only use TCP_CORK on LINUX

* it's LINUX only and fails on Win32 and MacOS (man 7 tcp)
2021-04-05 19:30:53 +02:00
Alfredo Cardigliano 53e930db10 Fix compilation on MacOS 2021-03-29 09:28:13 +02:00
Logan oos EvenandGitHub a23b459738 fixed memory issue (#675) 2021-03-26 21:13:20 +05:45
Logan oos EvenandGitHub edc6f53ca0 prevented transmission of QUERY_PEER on multicast MAC addresses (#668) 2021-03-18 18:14:01 +05:45
Logan oos EvenandGitHub f41babcf4d fixed compile warnings (#664) 2021-03-17 12:38:00 +05:45
Logan oos EvenandGitHub 0287837241 skewed supernode selection for the benefit of current supernode in no-pong case (#663) 2021-03-16 23:24:39 +05:45
Logan oos EvenandGitHub aa1f4311f9 adapted packet format (#662)
* adapted packet format
2021-03-16 17:24:59 +05:45
Logan oos EvenandGitHub 23a9c871f8 increased resilience to supernode failure (#660) 2021-03-09 04:46:42 +05:45
Logan oos EvenandGitHub 1bcc64ccb3 fixed unrelated error message (#653) 2021-03-04 16:17:48 +05:45
Logan oos EvenandGitHub 20133f599c improved socket handling (#650) 2021-03-01 14:13:14 +05:45
Logan oos EvenandGitHub db4b927b8e fixed multicast decode error message (#648) 2021-02-27 21:29:25 +05:45
Logan oos EvenandGitHub 64b8136301 fixed compile warnings (#647) 2021-02-27 20:38:18 +05:45
Logan oos EvenandGitHub e47b492c4d fixed compile warning (#646) 2021-02-27 18:03:04 +05:45
Logan oos EvenandGitHub a482fe112d added TCP support (#627)
(disabled on Windows)
2021-02-22 22:37:47 +05:45
vtcpipandGitHub b42c111527 fix windows compile (#636) 2021-02-10 15:16:16 +05:45
Logan oos EvenandGitHub c73e59341d made gratuitous arp being sent at the right time (#635) 2021-02-08 20:55:11 +05:45
Logan oos EvenandGitHub 54ba76e3bc clarified error message (#634) 2021-02-08 17:24:03 +05:45
Logan oos EvenandGitHub 12e55935c2 adjusted supernode management port output (#628) 2021-02-07 19:00:58 +05:45
Logan oos EvenandGitHub fb827a843b reworked edge management port output (#623) 2021-02-06 18:24:08 +05:45
Logan oos EvenandGitHub 08a4e332c8 generalized auth scheme handling (#624) 2021-02-03 20:52:41 +05:45
Logan oos EvenandGitHub 09e8d5e730 limited number of concurrently pinged supernodes (#619) 2021-02-01 18:31:36 +05:45
Logan oos EvenandGitHub ba9a32fb30 fixed minor timing issues (#616) 2021-01-31 21:12:08 +05:45
anzz1andGitHub 9cac336488 added network interface metric option for windows (#606) 2021-01-30 18:00:01 +05:45
Logan oos EvenandGitHub 6c8e1b6f60 fixed edge segfault (#613) 2021-01-30 17:35:12 +05:45
Logan oos EvenandGitHub 5f34baf9b9 clarified authentication error (#600) 2021-01-25 19:08:34 +05:45
Logan oos EvenandGitHub c0c472b4aa revised bootstrap (#599) 2021-01-25 16:54:38 +05:45
Logan oos EvenandGitHub a639e1d735 properly handled supernodes' timestamps (#591) 2021-01-18 00:12:45 +05:45
Logan oos EvenandGitHub e4e6efacf0 enhanced header encryption to full 128 bit iv (#589) 2021-01-17 18:37:17 +05:45
Logan oos EvenandGitHub 773123f7a9 removed duplicate field for supernode socket from edge (#587) 2021-01-16 17:13:52 +05:45
Logan oos EvenandGitHub 0e29d695ee quick-fixed auto ip (#586) 2021-01-16 05:39:20 +05:45
Logan oos EvenandGitHub e1b66aeb96 fix bug/typo introduced with latest mac handling change 2021-01-16 02:18:18 +05:45
Logan oos EvenandGitHub 7eeca3d78f cleaned up mac type usage (#583) 2021-01-13 14:50:26 +05:45
Logan oos EvenandGitHub 9ee62d7415 rebased time stamp format: header encryption (#579)
* rebased time stamp format (header encryption)

* rearranged time stamp fields
2021-01-12 14:28:21 +05:45
fengdaolongandGitHub 3a480a4a21 solved the problem that Windows cannot multicast (#576)
* Solve the problem that Windows cannot multicast.

* Better git judgment logic.
2021-01-12 14:26:40 +05:45
Logan oos EvenandGitHub bda11d3e99 fix AES default (#572) 2021-01-07 16:31:08 +05:45
Francesco CarliandGitHub 244b1bef95 Change space indention (#556)
* readability code clean-up

* readability code clean-up

* change space indention

* change space indention

* Update sn_utils.c
2021-01-07 11:14:25 +01:00
Francesco CarliandGitHub e71de330e5 readability code clean-up (#542) 2020-12-19 12:28:06 +01:00
fengdaolongandGitHub d7654397a8 Fix the problem of running edge, IP or domain name resolution failure under Windows system. (#527) 2020-12-08 15:46:40 +01:00
Francesco CarliandGitHub bde819700d Protection mechanism against MAC spoofing (#512)
* Implement MAC spoofing protection mechanism

* Update edge_utils.c

* Fix compile errors

* Update edge_utils.c

* Update edge_utils.c

* Update edge_utils.c
2020-12-02 08:33:10 +01:00
Francesco CarliandGitHub 3bd4635f04 Protection mechanism against duplicated MACs (#509)
* Prevent duplicated MACs

* Prevent duplicated MACs

* Fix compile errors

* Fix compile errors

* Implement auth scheme

* Fix compile errors

* Add auth_edge

* Add auth_edge

* Implement REGISTER_SUPER forwarding

* Add argument to update_edge

* Add auth field to supernode struct

* Add REGISTER_SUPER_NAK handling

* Fix issues

* Code clean-up

* Move auth token initialization
2020-11-19 09:31:24 +01:00
Logan oos EvenandGitHub c89dc584ab send gratuitous arp only upon first registration (#502) 2020-11-16 21:38:37 +01:00
joshuafcandGitHub b3f564e58c Traffic Restrictions, Pass Build on CircleCI and local Windows 10 VS2019 (#499)
* Add new file 'network_traffic_filter.c/.h"

* Add feature to drop or accept specific packet transmit over edge network interface by rules.

* fix CMakeLists.txt typo

* Update Rule String Format

* replace -F (filter) with -R (rule) for traffic restrictions.

* Update edge help (-h)  message. Update documents.

* Pass Build on CircleCI and local Windows 10 VS2019

* Fix cmake build failed because of sn_selection

* fix operate void* cause vs2016 build failed

* Fix typo to pass build on windows.

* add inttypes.h for n2n_typedefs.h to pass windows build

* modify headers to pass build on windows.
2020-11-16 21:27:42 +01:00
1574f1e1c6 added payload struct to carry supernode data (#501)
* added payload struct to carry supernode data

* added payload struct to carry supernode data

* added payload struct to carry supernode data

Co-authored-by: Luca Deri <lucaderi@users.noreply.github.com>
2020-11-13 10:55:00 +01:00