Commit Graph

301 Commits

Author SHA1 Message Date
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
Logan007
1d048c59a9 polished reg exp handling and fixed bugs 2020-08-08 22:45:34 +05:45
fengdaolong
92dfa67e22 Added DHCP function embedded in sn.
1. Automatically assign IP addresses to the edge through the DHCP function that comes with sn, the default IP address pool is 172.17.12.0/24.
2. The -d parameter is added to sn, and the IP address pool of the embedded DHCP can be customized.
3. Now edge does not need to add -a and -s parameters to automatically obtain the IP address.
4. The IP automatically obtained by the cross-community edge can be the same, because the communities are isolated from each other and do not interfere with each other.
5. On the management side of sn (127.0.0.1:5645), you can now view the IP address of the tutap adapter of each edge.
6. Fix many bugs that have a certain chance of causing memory leaks.
7. Note: This version is not fully compatible with the previous version.
2020-08-08 22:40:45 +08:00
Logan007
dece8d787e freed reg exp on exit, counted reg exp, warned on empty community list file, returned early from packet handling on non-matching reg exp 2020-08-08 14:51:05 +05:45
Logan007
8ac86635e1 equalized handling of non-matching communities 2020-08-07 20:37:45 +05:45
Logan007
30e2594de9 sharpened condition guarding reg ex loop 2020-08-07 01:21:11 +05:45
Luca Deri
96c05490e9 ompilation fixes 2020-08-06 19:28:39 +02:00
Logan007
fed02348aa guarded ITERation through patterns by if-clause for it only gets performed in case of still unknown community 2020-08-06 16:06:50 +05:45
Logan007
099f178d0e adopted re_match for the sake of completeness, too 2020-08-06 15:59:35 +05:45
Logan007
f7e50e12c0 allowed full matches only 2020-08-06 01:58:09 +05:45
Logan007
e481942bf0 instantiated reg exp pattern 2020-08-06 00:34:17 +05:45
Logan007
1b3e485da6 typo in comment 2020-08-04 19:06:30 +05:45
Logan007
b5b18443af added regular expression checking 2020-08-04 18:49:12 +05:45
Logan007
7311efa35a planned regular expression preparation 2020-08-04 16:09:09 +05:45
Logan007
9fba63dfb4 added per-community locking 2020-08-04 15:46:09 +05:45
Luca Deri
2b59850b77
Merge pull request #346 from skyformat99/fix_edge_register_super
fix register supernode loop - Another way
2020-08-04 10:04:32 +02:00
ygg
e0b48f133d On Windows, the Edge node exits when the network card is disabled and opened again 2020-08-04 13:37:01 +08:00
ygg
f737390dbc fix register supernode loop - Another way 2020-08-04 10:20:43 +08:00
Luca Deri
2ea8dd53b7
Merge pull request #339 from Logan007/cmpMac
added MAC comparison for REGISTER_SUPER_ACK
2020-07-29 14:24:27 +02:00
Luca Deri
5067d22587
Merge pull request #338 from switch-iot/feature_sn_uid_gid
add set uid/gid command option to supernode
2020-07-29 14:24:02 +02:00
Luca Deri
c8bbc251e0
Merge pull request #337 from Logan007/mvDef
moved some #DEFs to central n2n_define.h
2020-07-29 14:19:14 +02:00
Logan007
d28f476b17 added MAC comparison for REGISTER_SUPER_ACK 2020-07-29 17:41:22 +05:45
switch_st
7285f2a1bc add set uid/gid command option to supernode 2020-07-29 18:30:32 +08:00
Logan007
3549936b48 moved some #DEFs to n2n_define.h 2020-07-29 15:32:04 +05:45
ygg
62b3957cfb Hide the duplicate trace message 2020-07-29 13:50:00 +08:00
ygg
64857218a5 Indicates successful connection between the edge and SN nodes 2020-07-29 13:24:36 +08:00
Luca Deri
c5fe6201c0
Merge pull request #332 from Logan007/snSortCmn
sorting encrypted communities
2020-07-28 19:29:01 +02:00
Luca Deri
f02a5c91c6
Merge pull request #331 from Logan007/rndSeedLoop
retrying syscall and calls to hardware random number generators
2020-07-28 19:28:26 +02:00
Logan007
75317acaf3 added sorting of encrypted communities 2020-07-28 00:55:07 +05:45
Logan007
dc9b1449ab retrying syscall and calls to hardware rng 2020-07-27 20:55:36 +05:45
ygg
a81f4054cd Adds a trace message to mark connection type between edges. 2020-07-27 15:01:55 +08:00
Luca Deri
4e592dd82e Minor cleanup 2020-07-27 07:02:11 +02:00
Luca Deri
e635926d2c
Merge branch 'dev' into rp 2020-07-27 06:57:36 +02:00
Luca Deri
1284e5662c
Merge pull request #325 from switch-iot/feature_sn_mgmt_port
add management port command option to supernode
2020-07-27 06:55:52 +02:00
Luca Deri
ea01c45582
Merge pull request #324 from switch-iot/fix_build_warning
fix build warning of edge_init_routes
2020-07-27 06:55:14 +02:00
Luca Deri
ceace349c6
Merge pull request #322 from switch-iot/fix_sn_purge_cmnt
Update purge logic of communities and edges for supernode
2020-07-27 06:54:53 +02:00
Luca Deri
c21d2f47c6
Merge pull request #320 from switch-iot/fix_sn_mgmt_core
fix supernode coredump when accessing management socket
2020-07-27 06:53:58 +02:00
Logan oos Even
5ceb839b63
Merge branch 'dev' into rp 2020-07-25 18:54:33 +05:45
Logan007
0776e06912 added replay protection 2020-07-25 18:13:20 +05:45
switch_st
40f39caaac change the management port command order 2020-07-24 11:52:44 +08:00
switch_st
d59b977840 add management port command option to supernode 2020-07-24 11:23:12 +08:00
Logan007
b976379125 added data structures for replay protection 2020-07-23 20:34:54 +05:45
Logan007
895bbc2844 added time stamp blending and sending 2020-07-23 16:06:54 +05:45
switch_st
ca804b3a55 fix build warning of edge_init_routes 2020-07-23 10:05:29 +08:00
Logan007
d3e823af98 removed branchless code 2020-07-23 02:17:08 +05:45
Logan007
36eb807fca added time stamp handling functions 2020-07-23 01:55:02 +05:45
Luca Deri
235f55bda5 Compilation fixes 2020-07-22 16:01:54 +02:00
Luca Deri
8d76e7e576
Merge pull request #321 from switch-iot/fix_sn_daemon
fix build error for supernode when declared N2N_HAVE_DAEMON
2020-07-22 12:13:23 +02:00
Luca Deri
4939403fec
Merge pull request #319 from switch-iot/fixlog
close syslog in function closeTraceFile
2020-07-22 12:12:02 +02:00
Luca Deri
b17719383f
Merge pull request #318 from switch-iot/hin2n_arp
add main loop callback and move android arp code to this callback
2020-07-22 12:11:30 +02:00
switch_st
4d88fef4e2 update log word in sendto_mgmt 2020-07-22 17:18:00 +08:00
switch_st
81516d8d8c Update purge logic of communities and edges for supernode 2020-07-22 15:49:45 +08:00
switch_st
37bc520db2 fix supernode coredump when accessing management socket 2020-07-22 13:41:48 +08:00
switch_st
e24ad06a24 fix build error for supernode when declared N2N_HAVE_DAEMON 2020-07-22 12:15:56 +08:00
Logan007
252ce9779a moved windows-gettimeofday() from benchmark.c to n2n.c 2020-07-21 19:11:31 +05:45