Commit Graph

355 Commits

Author SHA1 Message Date
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
Logan oos Even
30a1ff9313
readability code clean-up (#543) 2020-12-19 12:28:33 +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
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
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
Francesco Carli
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
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
Logan oos Even
c89dc584ab
send gratuitous arp only upon first registration (#502) 2020-11-16 21:38:37 +01:00
Logan oos Even
bac807c472
use payload struct for assembly (#503)
* use payload struct for assembly

* use payload struct for assembly
2020-11-16 21:38:19 +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
Luca Deri
22756f40f9 Compialtion fix 2020-11-13 22:14:20 +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
Logan oos Even
08ef50e7fc
small performance patch for header encryption (#500) 2020-11-13 10:57:01 +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
Luca Deri
79f4c8474c Warning fix 2020-11-11 10:31:47 +01:00
Luca Deri
2a46674a9a Compilation fixes 2020-11-11 10:12:49 +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
skyformat99
2930f34bb9
Update sn_utils.c (#496)
fix  compile error in Visual Studio 2015 #495
2020-11-11 09:27:04 +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
Luca Deri
90bb3eaf92 Indent 2020-11-10 16:58:51 +01:00
Luca Deri
7e26499c4f Compilation fixes 2020-11-10 16:58:51 +01:00
Francesco Carli
eeb0f545a8
Fix compile errors (#494) 2020-11-10 16:57:39 +01:00
skyformat99
4581ae2859
fix Error compiling in Visual Studio 2015 (#491)
fix  Error compiling in Visual Studio 2015, Because the CHAR data type conflicts with the built-in data type
2020-11-10 16:35:28 +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
fengdaolong
4bad6a7625
Detail adjustment. (#488)
* Fix compilation warning.

* Detail adjustment.

Co-authored-by: Luca Deri <lucaderi@users.noreply.github.com>
2020-11-09 16:11:09 +01:00
Francesco Carli
eff68f1241
Define out -m option (#485) 2020-11-09 16:07:01 +01:00
Francesco Carli
e48f1fcc73
Fixes federation bug (#480)
* Fixes federation bug

* Fixes federation bug

* Update edge_utils.c
2020-11-09 16:06:00 +01:00
Logan oos Even
6da8e5497e
enabled gratuitous arp packets (#474)
Co-authored-by: Logan007 <you@example.com>
2020-11-09 16:04:41 +01:00
Francesco Carli
dcbc39c0fb
Update REGISTER_SUPER_ACK handling on edge (#478) 2020-10-27 17:02:35 +01:00
Luca Deri
8e9bf61469 Fixed warning 2020-10-26 21:23:47 +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
Luca Deri
3095c816e2 Warnign fixes 2020-10-20 17:17:17 +02:00
Luca Deri
bbabf30bc5 Crash fix
-l needs to be validated: added basic check (not enough TOFIX)
2020-10-20 17:10:50 +02:00
Logan oos Even
a42deedea9
added two rails for twofish cbc decryption (#472)
Co-authored-by: Logan007 <you@example.com>
2020-10-20 16:48:37 +02:00
Logan oos Even
51d55a60f8
made AES new default cipher (#471)
Co-authored-by: Logan007 <you@example.com>
2020-10-19 19:45:29 +02:00
Francesco Carli
0c3fdc4df3
Fix segfault in issue #463 (#464) 2020-10-19 09:45:00 +02: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
e3f64bfd1e
AES-NI speed-up (#459)
* converted cbc loops more into sse

* added a 2nd parallel cbc decryption (aes-ni)

* transformed while into for

* offering 4 parallel aes-ni rails

Co-authored-by: Logan007 <you@example.com>
2020-10-11 11:43:04 +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
7d565df3a6
Fix segfault (#454)
* Fix segfault

* Update sn_utils.c
2020-10-06 21:57:04 +02:00
Logan oos Even
1c45c7101a
fixed lzo datatype (#447)
Co-authored-by: Logan007 <you@example.com>
2020-10-03 17:15:51 +02:00
Francesco Carli
8dfffd9fbe
Implement purge-and-re-registration process for supernodes (#445) 2020-10-01 16:23:10 +02:00
lucaderi
3f8d32fa77 Compilation fixes 2020-09-29 10:54:36 +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
31269dde52
Update sn_utils.c 2020-09-25 12:19:20 +02:00
francesco_carli
9dbc54f443
Update sn.c 2020-09-25 12:17:37 +02:00
francesco_carli
acafbc61a1
Add comm_init() function 2020-09-24 20:12:20 +02:00
francesco_carli
b5d4a70983
Add comm_init() function 2020-09-24 20:07:33 +02:00
Logan007
df869bfd3b merged edge's subnet parameter into address parameter 2020-09-21 13:37:06 +05:45
Luca Deri
b4d2c1d806
Merge pull request #428 from Logan007/tapConfDoc
consolidated documentation on tap interface configuration
2020-09-20 18:31:04 +02:00
Logan007
d77fdc1c71 consolidated documentation on tap interface configuration 2020-09-20 17:39:33 +05:45
Logan007
2c77729acf removed jitter allowance for systemic packets 2020-09-19 15:47:16 +05:45
Logan007
1d00efa72c adopted aes key-length trigger values 2020-09-19 02:37:59 +05:45
Luca Deri
ddad9bc275
Merge pull request #420 from Logan007/compFix
windows compilation fix
2020-09-18 12:47:05 +02:00
Luca Deri
e3dd4fb9b9
Merge pull request #423 from Logan007/cntRegExp
removed begin and end from reg exp
2020-09-15 23:23:22 +02:00
Logan007
82922c60c6 removed begin and end from reg exp 2020-09-16 02:44:57 +05:45
Logan007
30a515544b removed begin and end from reg exp 2020-09-16 02:41:50 +05:45
Logan007
f71ef12753 removed begin, end, and whitespace from reg exp 2020-09-16 02:24:08 +05:45
Logan007
90bf8da3f5 dropped OpenSSL 1.0 support 2020-09-14 20:46:53 +05:45
Logan007
cb309799a7 windows compilation fix 2020-09-14 13:10:37 +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
Logan007
07b675bae6 made compression scheme name accessible even if not compiled 2020-09-10 14:05:08 +05:45
Logan007
e64f2f69a0 sse code clean up 2020-09-09 16:09:53 +05:45
Logan007
7f8d1ac5a2 sse code clean up 2020-09-09 16:08:12 +05:45
Logan007
1925c2df42 huge cc20 sse speed-up 2020-09-09 14:59:43 +05:45
Logan007
6c982b9373 small cc20 sse speed-up 2020-09-09 14:09:19 +05:45
Logan007
e492e18c27 counter fix (limit to 32 bit) 2020-09-09 01:04:02 +05:45
Logan007
5ed8560503 added aes-ni support to pearson hashing 2020-09-06 18:42:04 +05:45
Logan007
fac5aa7d20 added aes-ni support to pearson hashing 2020-09-06 01:52:44 +05:45
Logan007
f89796dbe6 sse compilation fix 2020-09-03 18:27:37 +05:45
Logan007
c95eefe5d9 sse compilation fix 2020-09-03 18:11:41 +05:45
Luca Deri
43090bdcb4
Merge pull request #400 from Logan007/revCc20
reworked cc20
2020-09-02 12:34:15 +02:00
Luca Deri
b73b0c86ea
Merge pull request #399 from Logan007/aesNi
added aes-ni support
2020-09-02 12:33:47 +02:00
Logan007
885877cda3 added sse to built-in cc20 2020-09-02 16:08:30 +05:45
Logan007
cc7430ae66 increased built-in cc20's speed 2020-09-02 02:33:05 +05:45
Logan007
5bdccb17fd increased built-in cc20's speed 2020-09-02 02:24:24 +05:45
Logan007
f1f8ca6092 increased built-in cc20's speed 2020-09-02 02:16:30 +05:45
Logan007
87ee4d6fa7 reworked cc20 2020-09-01 22:50:52 +05:45
Logan007
91ca25baa2 reworked cc20 2020-09-01 22:26:06 +05:45
Logan oos Even
90a071a1d3
Merge branch 'dev' into revCc20 2020-09-01 20:16:32 +05:45
Logan007
8757312d41 reworked cc20 2020-09-01 20:09:29 +05:45
Logan007
399ecf8801 reworked cc20 2020-09-01 15:13:25 +05:45
Logan007
81a1ccc702 added aes-ni support 2020-09-01 02:09:31 +05:45
Logan007
25ef1bb291 replaced Pearson hashing permutation by aes' s-box 2020-08-31 21:09:49 +05:45
Logan oos Even
56071bf494
Merge branch 'dev' into amndmntAes 2020-08-31 02:36:01 +05:45
Logan007
c9412a290b made aes always available 2020-08-31 02:24:23 +05:45
Luca Deri
22d48a3db8
Merge pull request #396 from Logan007/revRnd
cosmetics on random numbers code
2020-08-30 20:57:59 +02:00
Luca Deri
3f2401c5ff
Merge pull request #395 from Logan007/amndmntTf
twofish transform code clean-up amendment
2020-08-30 20:57:50 +02:00
Luca Deri
86fb545c7d
Merge pull request #394 from Logan007/revSpeck
speck transform code clean-up
2020-08-30 20:57:39 +02:00
Logan007
8d7680408f cosmetics on random numbers code 2020-08-30 03:05:48 +05:45
Logan007
1a70ab2c0d speck transform code clean-up 2020-08-29 22:43:16 +05:45
Logan007
052144285a twofish transform code clean-up ammendment 2020-08-29 22:38:27 +05:45
Logan007
e8181c96f9 speck transform code clean-up 2020-08-29 20:53:37 +05:45
fengdaolong
71676c4309 Prevent allocation duplicate IP. 2020-08-29 01:33:06 +08:00
Luca Deri
b3d4f21c91
Merge pull request #391 from hamishcoleman/leakfix2
Avoid leaking memory if the buffer is uncompressable
2020-08-28 13:03:46 +02:00
Luca Deri
5a06abc75d Compilation fixes 2020-08-28 13:03:06 +02:00
Luca Deri
31a05e18d1
Merge pull request #389 from Logan007/revTf
reworked twofish implementation and replaced it by a faster version
2020-08-28 13:01:19 +02:00
Luca Deri
25620fcbc7 Compilation fixes 2020-08-28 13:00:45 +02:00
Luca Deri
9038e7dbe6
Merge pull request #380 from Logan007/revAes
changed aes transform to cipher text stealing mode
2020-08-28 12:56:17 +02:00
Hamish Coleman
949c651845 Avoid leaking memory if the buffer is uncompressable 2020-08-27 05:49:12 +10:00
Logan007
fb4a4ee2d8 replaced twofish implementation by a faster version 2020-08-26 20:36:35 +05:45
Logan007
bf6ef081e0 replaced twofish implementation by a faster version 2020-08-26 20:06:40 +05:45
Logan007
d5c1295bec replaced twofish implementation by a faster version 2020-08-26 18:07:05 +05:45
Logan007
b4f9caa00b changed aes transform to cipher text stealing mode 2020-08-25 23:15:32 +05:45
Logan007
680248d154 changed aes transform to cipher text stealing mode 2020-08-24 02:37:06 +05:45
Logan007
6d05d48878 changed aes transform to cipher text stealing mode 2020-08-23 20:02:19 +05:45
Luca Deri
f7f9c98752
Merge pull request #379 from Logan007/reSck
re-open sockets if supernode not responding
2020-08-23 14:16:20 +02:00
Luca Deri
0489c7bbe9
Merge pull request #373 from Logan007/snSd
seeded random number generator in supernode
2020-08-23 14:13:39 +02:00
Luca Deri
9ef2ee6f52
Merge pull request #372 from Logan007/aIp
let auto ip feature handle several sub-networks
2020-08-23 14:13:05 +02:00
Logan007
9554f336d2 re-open sockets if supernode not responding 2020-08-21 01:53:44 +05:45
Logan007
3d00182264 re-open sockets if supernode not responding 2020-08-21 00:53:27 +05:45
Logan007
a35675da4d internally renamed dhcp --> auto ip 2020-08-19 14:46:58 +05:45
Logan007
1dea026fdb seeded random number generator 2020-08-19 00:21:50 +05:45
Logan007
78409df1c8 let auto ip feature handle several sub-networks 2020-08-18 22:35:27 +05:45
fengdaolong
6bdfdf6be4 Enhanced edge management console function.
1. Edge can view the IP address and socket information of the connected tap adapter through the management console (127.0.0.1:5644);
2. Repair two memory leaks;
3. Fix several code errors and redundant logic;
2020-08-16 22:34:41 +08:00
Luca Deri
fbca7bed9e
Merge pull request #365 from Logan007/invldTransopErr
added IP & MAC to invalid transop error message
2020-08-16 12:37:31 +02:00
Luca Deri
ce8551fc61 Added better -A handling with config files 2020-08-16 12:15:30 +02:00
Logan007
b10a24c65a added IP & MAC to invalid transop error message 2020-08-16 15:55:15 +05:45
Luca Deri
0825bfb16b Compilation fixes 2020-08-16 10:46:11 +02:00
Luca Deri
ed5b793379
Merge pull request #363 from Logan007/edgMgmtPrt
extended edge's management port output
2020-08-16 10:37:15 +02:00
Luca Deri
8f9ccce9bf
Merge pull request #360 from Logan007/rpLzo
updated minilzo
2020-08-16 10:36:02 +02:00
Luca Deri
5354cd79d7
Merge pull request #359 from Logan007/pktFlds
split PACKET's transform field to give way for separate compression field
2020-08-16 10:35:44 +02:00
Luca Deri
3be0a009b0
Merge pull request #358 from Logan007/rmMinCryptoVersn
removed minor transform version
2020-08-16 10:35:03 +02:00
Logan007
038c5971b7 extended management port output 2020-08-16 14:02:25 +05:45
Logan007
e0266bfe5f updated minilzo 2020-08-15 23:26:21 +05:45
Logan007
9c10116d51 split PACKET's transform field to give way for seperate compression field 2020-08-15 22:48:57 +05:45
Logan007
c2cae9d02e removed minor tranform version 2020-08-15 21:14:24 +05:45
Logan007
ece0c91ef1 simplified twofish's key handling 2020-08-12 19:59:58 +05:45
Luca Deri
052127734e Merge compilation fix 2020-08-12 14:45:08 +02:00
Luca Deri
d4e9df013e
Merge branch 'dev' into prepReg 2020-08-12 14:41:09 +02:00