Logan oos Even
7fa0cc1e0a
added preferred socket handling (-e) ( #765 )
2021-09-09 14:07:29 +05:45
Logan oos Even
b6e865aac7
trimmed open_socket() down by one parameter ( #768 )
2021-09-06 17:03:15 +05:45
Logan oos Even
e13c9a01a5
rearranged thread-related code ( #761 )
2021-08-30 14:23:31 +05:45
Logan oos Even
c21accc2a1
enabled edge to bind to a specified IP address (-b) ( #753 )
2021-08-28 03:08:23 +05:45
Logan oos Even
e09f3a4875
added federation support to user/password auth scheme ( #741 )
2021-07-31 22:17:07 +05:45
skyformat99
6f63f401fe
updated for compilation with VS2015 ( #739 )
2021-07-26 12:53:05 +05:45
Logan oos Even
c35129b8e2
added 'reload_communities' command to supernode management port ( #740 )
2021-07-24 03:46:50 +05:45
Logan oos Even
84d0991977
fortified user/pw auth scheme ( #731 )
2021-07-21 02:52:38 +05:45
Logan oos Even
39aa50b4cd
added manual MAC/IP address spoofing protection override at supernode (-M) ( #716 )
2021-06-21 17:03:07 +05:45
Logan oos Even
1586ae62a7
made n2n react more swiftly to (D)DNS changes ( #705 )
2021-06-07 17:57:49 +05:45
Logan oos Even
3c6ab56d3f
allowed (temporarily) initially non-resolving supernode names ( #701 )
2021-06-05 17:54:32 +05:45
Logan oos Even
c55e3e3246
multithreaded supernode name resolution ( #645 )
2021-06-04 03:52:12 +05:45
Logan oos Even
a28327a0af
added user-password edge authentication ( #673 )
2021-06-04 03:11:22 +05:45
Logan oos Even
667b7df083
added memrnd() ( #685 )
2021-04-19 00:47:37 +05:45
randomize00
cfa92d28d8
add callback function for hin2n to protect socket ( #684 )
2021-04-14 11:31:50 +05:45
Sven Roederer
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 Even
7c3951a10f
revised tcp implementation ( #674 )
2021-03-26 20:45:31 +05:45
Logan oos Even
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 Even
aa1f4311f9
adapted packet format ( #662 )
...
* adapted packet format
2021-03-16 17:24:59 +05:45
Logan oos Even
23a9c871f8
increased resilience to supernode failure ( #660 )
2021-03-09 04:46:42 +05:45
Logan oos Even
1bcc64ccb3
fixed unrelated error message ( #653 )
2021-03-04 16:17:48 +05:45
Logan oos Even
20133f599c
improved socket handling ( #650 )
2021-03-01 14:13:14 +05:45
Logan oos Even
c8fabbdfe0
added more targeted routing for packet forwarding in federation ( #643 )
2021-02-23 18:51:14 +05:45
Logan oos Even
a482fe112d
added TCP support ( #627 )
...
(disabled on Windows)
2021-02-22 22:37:47 +05:45
vtcpip
b42c111527
fix windows compile ( #636 )
2021-02-10 15:16:16 +05:45
Logan oos Even
cef5561c5a
switched to 2021 ( #632 )
2021-02-08 16:11:06 +05:45
Logan oos Even
aaca1424fd
added AVX-512 support to SPECK cipher ( #630 )
2021-02-08 15:27:29 +05:45
Logan oos Even
fb827a843b
reworked edge management port output ( #623 )
2021-02-06 18:24:08 +05:45
Logan oos Even
b3a4eac4d7
enabled windows random numbers for seed ( #622 )
2021-02-02 18:43:30 +05:45
Logan oos Even
09e8d5e730
limited number of concurrently pinged supernodes ( #619 )
2021-02-01 18:31:36 +05:45
Logan oos Even
ba9a32fb30
fixed minor timing issues ( #616 )
2021-01-31 21:12:08 +05:45
Logan oos Even
de76b16fd5
added missing 'metric'
2021-01-31 20:03:11 +05:45
anzz1
9cac336488
added network interface metric option for windows ( #606 )
2021-01-30 18:00:01 +05:45
Logan oos Even
c696f59e07
ensured correct community file loading (sn) ( #609 )
2021-01-29 14:52:11 +05:45
Logan oos Even
39a71513f4
reworked supernode help text ( #605 )
2021-01-28 00:07:11 +05:45
Logan oos Even
3574865bf0
disabled SPECK defaulting to NEON support on ARM ( #602 )
2021-01-26 21:23:08 +05:45
Logan oos Even
c0c472b4aa
revised bootstrap ( #599 )
2021-01-25 16:54:38 +05:45
Logan oos Even
2e204adf1d
prepared auth scheme answer ( #597 )
2021-01-22 21:45:51 +05:45
Logan oos Even
a639e1d735
properly handled supernodes' timestamps ( #591 )
2021-01-18 00:12:45 +05:45
Logan oos Even
e4e6efacf0
enhanced header encryption to full 128 bit iv ( #589 )
2021-01-17 18:37:17 +05:45
Logan oos Even
773123f7a9
removed duplicate field for supernode socket from edge ( #587 )
2021-01-16 17:13:52 +05:45
Logan oos Even
7eeca3d78f
cleaned up mac type usage ( #583 )
2021-01-13 14:50:26 +05:45
Logan oos Even
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
fengdaolong
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 Even
808920089d
switched to Pearson B. Hashing ( #570 )
...
* switched to Pearson B. Hashing
* switched to Pearson B. Hashing
2021-01-07 11:15:40 +01:00
Logan oos Even
9bbf7d95f6
hardware-accelerated header encryption ( #565 )
...
* hardware-accelerated header encryption
* hardware-accelerated header encryption
* hardware-accelerated header encryption
2021-01-07 11:14:44 +01:00
Francesco Carli
54f6da4cf4
Change space indention ( #557 )
...
* change space indention
* change space indention
2020-12-24 14:56:29 +01:00
Logan oos Even
71065278fa
readability code clean-up ( #550 )
...
* readability code clean-up
* readability code clean-up
2020-12-19 12:29:15 +01:00
Francesco Carli
de92fab878
readability code clean-up ( #549 )
2020-12-19 12:29:09 +01:00
Logan oos Even
ab4f507012
readability code clean-up ( #548 )
...
* readability code clean-up
* readability code clean-up
2020-12-19 12:29:03 +01:00
Francesco Carli
4e6d9a8f43
readability code clean-up ( #547 )
2020-12-19 12:28:57 +01:00
Francesco Carli
bd48a5c34d
readability code clean-up ( #546 )
2020-12-19 12:28:52 +01:00
Francesco Carli
646da54915
readability code clean-up ( #545 )
2020-12-19 12:28:45 +01:00
Francesco Carli
24b2f2762f
readability code clean-up ( #544 )
2020-12-19 12:28:39 +01:00
Francesco Carli
e71de330e5
readability code clean-up ( #542 )
2020-12-19 12:28:06 +01:00
Logan oos Even
df716c9da5
readability code clean-up, added 64-bit hash ( #538 )
2020-12-19 12:27:14 +01:00
Logan oos Even
599e424b5d
Revert "changed timer source ( #522 )" ( #536 )
...
This reverts commit 0298efa36e
.
2020-12-19 12:26:54 +01:00
Logan oos Even
1c29fbee8a
readability code clean-up ( #532 )
2020-12-19 12:26:32 +01:00
Logan oos Even
d063cf3088
readability code clean-up ( #531 )
...
* readability code clean-up
* readability code clean-up
2020-12-19 12:26:21 +01:00
Logan oos Even
9fbe941511
readability code clean-up ( #530 )
2020-12-08 15:47:08 +01:00
Logan oos Even
3252231ecb
readability code clean-up ( #529 )
2020-12-08 15:46:57 +01:00
fengdaolong
cb7ee56876
Fix Windows MinGW compilation failure. ( #526 )
2020-12-08 15:46:20 +01:00
Logan oos Even
0298efa36e
changed timer source ( #522 )
...
* changed timer source
* changed timer source
* changed timer source
* changed timer source
* changed timer source
* changed timer source
2020-12-08 15:46:00 +01:00
joshuafc
e66f913e81
Deal with warnings at network_traffic_filter.c
( #508 )
...
* 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.
* Deal with warnings at `network_traffic_filter.c`
* network filter without type cast
2020-11-19 09:32:44 +01:00
Francesco Carli
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
joshuafc
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
Francesco Carli
01f09e693e
Same chance to all supernodes to be transmitted by REGISTER_SUPER_ACK ( #498 )
...
* Same chance for all supernodes to be transmitted with REG_SUPER_ACK
* Update sn_utils.c
* Update random_numbers.h
* Update sn_utils.c
* Update random_numbers.c
* Update sn_utils.c
* Update sn_utils.c
2020-11-13 22:12:04 +01:00
Luca Deri
176e17dedf
Moved typedef to n2n_typedefs.h from n2n_wire.h
2020-11-13 10:56:18 +01:00
Logan oos Even
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
lucaderi
72d5243650
Include rework to avoid circular dependencies, single place for typedefs and compilation on all platforms that don't like type redefinition
2020-11-13 09:28:52 +01:00
Francesco Carli
8915609f1a
Implement a load-based supernode selection strategy on edges ( #493 )
...
* Implement load-based selection strategy
* Update n2n_wire.h
* Update edge_utils.c
* Update n2n.c
* Update sn_utils.c
* Update edge_utils.c
2020-11-11 09:27:39 +01:00
Luca Deri
f0be328261
Disabled filtering code
2020-11-10 23:47:55 +01:00
lucaderi
0a0888f1f2
More fixes
2020-11-10 18:10:20 +01:00
Luca Deri
6bd375efc4
Compilation fixes
...
Network filtering code has been temporarely commented out as it is broken
2020-11-10 17:58:35 +01:00
joshuafc
a840aebb83
Add feature to drop or accept specific packet transmit over edge network interface by rules. ( #489 )
...
* 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.
2020-11-10 16:35:05 +01:00
Francesco Carli
e65fd984d7
Packet forwarding between supernodes ( #486 )
...
* Packet forwarding between supernodes
* Update wire.c
2020-11-10 16:34:49 +01:00
Francesco Carli
dcbc39c0fb
Update REGISTER_SUPER_ACK handling on edge ( #478 )
2020-10-27 17:02:35 +01:00
BetaBeauty
57f742fe42
Extra Device Description in P2P Connection and Register to Super Node ( #475 )
...
* add cmake export commands
* add extra edge description (hint) field
* add peer2peer description registry
* fixed bug: peer2peer not pass the dev_desc filed
* update -I option in the helper text
Co-authored-by: Longtao Wang <longtao.wang@cortexlabs.ai>
2020-10-26 21:13:56 +01:00
Francesco Carli
ed25ff8d01
Fixes minor issues introduced by #460 ( #461 )
2020-10-11 21:54:06 +02:00
Luca Deri
f6e4047ce0
Partial fixes for addressing compilation issues introduced by https://github.com/ntop/n2n/pull/460
2020-10-11 11:57:48 +02:00
Francesco Carli
c9eedd68f0
Initialize the federation of supernodes ( #460 )
...
* Add supernode2sock() and add_sn_to_federation_by_mac_or_sock()
* Update sn_utils.c
* Update sn.c and sn_utils.c
* Update REG_SUPER_ACK payload
* Update add_sn_to_federation_by_mac_or_sock()
2020-10-11 11:44:40 +02:00
Logan oos Even
64361dcec1
narrowed granularity of hardware feature support ( #455 )
...
Co-authored-by: Logan007 <you@example.com>
2020-10-10 15:09:28 +02:00
Francesco Carli
8dfffd9fbe
Implement purge-and-re-registration process for supernodes ( #445 )
2020-10-01 16:23:10 +02:00
francesco_carli
d9e2a0091a
Handle REGISTER_SUPER from other supernodes ( #443 )
...
* Handle REGISTER_SUPER from other supernodes
* Update wire.c
2020-09-29 10:50:09 +02:00
fcarli3
b2b76a450e
How get federation name as parameter
2020-09-25 18:06:29 +02:00
francesco_carli
6e875e7cab
Add new federation flag to community structure
2020-09-24 20:04:07 +02:00
francesco_carli
746962510f
Add new enum data type and indicators
2020-09-24 20:00:32 +02:00
Logan007
df869bfd3b
merged edge's subnet parameter into address parameter
2020-09-21 13:37:06 +05:45
Luca Deri
421968ac4e
Merge pull request #430 from VergLsm/dev
...
fix(win): "config.h: No such file or directory"
2020-09-20 18:31:43 +02:00
VergLsm
907e56a525
fix(win): "config.h: No such file or directory"
2020-09-21 00:14:28 +08:00
Logan007
2c77729acf
removed jitter allowance for systemic packets
2020-09-19 15:47:16 +05:45
Logan007
90bf8da3f5
dropped OpenSSL 1.0 support
2020-09-14 20:46:53 +05:45
Luca Deri
1815790280
Merge pull request #414 from Logan007/comprFix
...
compression scheme name fix
2020-09-10 20:13:25 +02:00
Luca Deri
bf41b8b20e
Merge pull request #408 from Logan007/revPearson
...
added aes-ni support to Pearson hashing
2020-09-10 20:11:41 +02:00
Luca Deri
74605da4f0
Merge pull request #404 from Logan007/sseCor
...
compilation fix: correct (S)SSE version
2020-09-10 20:09:42 +02:00
Logan007
7a06bf39db
made compression scheme name accessible even if not compiled
2020-09-10 14:08:08 +05:45
Logan007
6c982b9373
small cc20 sse speed-up
2020-09-09 14:09:19 +05:45
Logan007
fac5aa7d20
added aes-ni support to pearson hashing
2020-09-06 01:52:44 +05:45
Logan007
671a00aba7
fixed sse version
2020-09-02 17:41:37 +05:45