Commit Graph

1470 Commits

Author SHA1 Message Date
orignal
c5d9d71a8a create relay tag and relay request block 2022-04-21 15:47:36 -04:00
orignal
3e0f5d231d send queue after batch of packets 2022-04-18 15:47:35 -04:00
orignal
6990f177ba window size 2022-04-18 13:14:09 -04:00
orignal
4c91ae0085 check if end of list 2022-04-16 17:01:06 -04:00
orignal
43f74d4d5a resend packet with new packet number 2022-04-16 15:42:11 -04:00
orignal
8c3e716c3f ranges in ack block 2022-04-15 16:26:44 -04:00
orignal
05946125b5 handle single packet 2022-04-13 12:33:59 -04:00
orignal
1e2a0a4549 handle incoming packets in batch 2022-04-12 11:42:51 -04:00
orignal
f9d67b28ec handle fragmented SessionConfirmed 2022-04-09 19:56:57 -04:00
orignal
46b77cc280 increase RouterInfo buffer size 2022-04-09 14:40:38 -04:00
orignal
678a1ae0fb send fragmented messages 2022-04-09 11:42:34 -04:00
orignal
51cbffd097 don't lookup session for every sinle packet 2022-04-07 10:57:57 -04:00
orignal
207b13dcab send correct acnt if gaps 2022-04-05 18:23:52 -04:00
orignal
3052dbd1e8 single receive thread for both ipv4 and ipv6 2022-04-05 16:27:52 -04:00
orignal
5891b1ceb2 separate receive thread 2022-04-05 16:14:13 -04:00
orignal
07e14ddda8 check if SSU2 enabled 2022-04-04 20:37:29 -04:00
orignal
db5e90787c update I2NP header after all fragments received 2022-04-04 13:25:08 -04:00
orignal
67e501f5c7 correct nonce for SessionCorfirmed part 2 2022-04-04 11:52:14 -04:00
orignal
2160001167 correct non for token request and retry encryption 2022-04-04 09:58:17 -04:00
orignal
f5f4150d17 fixed typo 2022-04-03 13:43:33 -04:00
orignal
f5f282af97 cost for published SSU2 address 2022-04-02 14:32:26 -04:00
orignal
82f9585b7a handle fragments 2022-04-02 13:05:11 -04:00
orignal
eb561bb0c2 handle Ack ranges 2022-04-01 15:09:35 -04:00
orignal
81207999eb check token in SessionRequest 2022-03-31 21:07:51 -04:00
orignal
2fef595b83 resend packets 2022-03-31 15:35:55 -04:00
orignal
2024e790ca send I2NP messages 2022-03-30 18:04:12 -04:00
orignal
f9925c7374 hanlde Ack block 2022-03-30 15:03:45 -04:00
orignal
dd774b8dfd store out of sequence packet numbers 2022-03-30 12:31:24 -04:00
orignal
064b8042a5 ssu2.published and update SSU2 ipv4 2022-03-29 14:56:57 -04:00
orignal
7923ed9567 publish SSU2 address 2022-03-29 13:56:56 -04:00
orignal
30b83414ef find SSU2 address by address type 2022-03-28 18:03:22 -04:00
orignal
990906c57f insert garlic tag in destination's thread 2022-03-28 12:15:40 -04:00
orignal
4c323a666a show SSU2 transports in web console 2022-03-27 19:29:50 -04:00
orignal
a3f165d374 handle and send termination 2022-03-27 16:39:58 -04:00
orignal
7d5f51e357 don't send instant Ack for out-of-sequence message 2022-03-27 09:26:45 -04:00
orignal
371a339b18 encrypt Data header 2022-03-27 07:47:25 -04:00
orignal
7e7aee27b6 handle I2NP message block 2022-03-26 21:59:21 -04:00
orignal
53148fe58f send Ack packet 2022-03-26 16:35:07 -04:00
orignal
56b6de6962 correct header decryption for Data message 2022-03-25 17:57:59 -04:00
orignal
44735681af KDF and process Data message 2022-03-25 15:34:43 -04:00
orignal
ee1c4f4fdc internal numeric id for families 2022-03-24 15:50:20 -04:00
orignal
fb6ecdde1e handle TokenRequest 2022-03-23 21:48:41 -04:00
orignal
861166d8a9 send TokenRequest message: 2022-03-23 19:13:44 -04:00
R4SAS
70dca81c40 dropped MESHNET build option
Dropping MESHNET build option due to lack of usage. That change won't
affect on usage with currently supported Yggdrasil network.

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-03-24 01:36:12 +03:00
orignal
2440ffbfc9 handle SSU2 SessionConfirmed 2022-03-23 14:06:55 -04:00
orignal
77c5dde320 send SessionConfirmed 2022-03-21 21:06:14 -04:00
orignal
aa49cad279 correct encrypted payload size for MixHash 2022-03-21 13:21:08 -04:00
orignal
f56ae240ab don't delete peding endpoint if Retry received 2022-03-21 12:56:02 -04:00
orignal
e871a30a78 initialize connid in constructor 2022-03-20 16:53:32 -04:00
orignal
30e6984889 handle Retry message 2022-03-20 15:10:18 -04:00
orignal
324932c758 separate i and key fields for shared SSU address 2022-03-20 10:28:08 -04:00
orignal
421800bc8f recognize SSU address supporting SSU2 2022-03-19 17:34:07 -04:00
orignal
87bf5c2418 cleanup pending sessions 2022-03-18 20:21:31 -04:00
orignal
5c9af1c613 MixHash with encrypted payload after decryption 2022-03-18 15:32:32 -04:00
orignal
765e0e5c6b correct 'i' size for SSU2 2022-03-18 13:33:33 -04:00
orignal
cc296e16dc don't make SSU2 address published is 'i' is presented 2022-03-18 13:02:59 -04:00
orignal
ab9901525b separated sockets for ipv4 and ipv6 2022-03-17 18:45:14 -04:00
orignal
3643a46a0c don't update SSU2 port 2022-03-17 14:47:00 -04:00
orignal
d467e6869d don't update address for SSU2 2022-03-17 13:21:51 -04:00
orignal
3c5c375f71 connect to SSU2 address 2022-03-16 21:11:48 -04:00
orignal
7473d8c9aa create and handle Address block 2022-03-16 13:13:31 -04:00
orignal
40c8a1bc1d handle payload blocks 2022-03-15 20:49:41 -04:00
orignal
7b72d91549 receive incoming SSU2 packets 2022-03-14 19:25:59 -04:00
orignal
b3c2e86436 skip unknown address 2022-03-14 15:54:55 -04:00
orignal
908bdc7624 always publish intro key for SSU2 address 2022-03-13 21:55:03 -04:00
orignal
21c1ec9c8c enable SSU2 server 2022-03-13 21:34:11 -04:00
orignal
6eba061c2a show local SSU2 address 2022-03-13 11:04:37 -04:00
orignal
f184f550b9 SSU2 address in config and RouterInfo 2022-03-12 21:51:17 -05:00
orignal
bb7c0fef20 SSU2 address in config and RouterInfo 2022-03-12 21:40:12 -05:00
orignal
5c15a12116 don't allocate buffer from netdb for LocalRouterInfo 2022-03-11 19:03:00 -05:00
orignal
68d015763e recognize SSU2 addresses 2022-03-11 16:17:44 -05:00
orignal
7faa732f38 send SessionCreated 2022-03-08 21:33:21 -05:00
orignal
11f9eeabf1 inbound.lengthVariance and outbound.lengthVariance 2022-03-07 22:20:11 -05:00
orignal
a152f36894 MixHash for SSU2 long header 2022-03-07 18:20:06 -05:00
orignal
d4ede6ff01 process SessionRequest 2022-03-05 18:39:27 -05:00
orignal
35542d803c KDF for session request 2022-03-04 21:51:40 -05:00
orignal
f6ba776c12 SSU2 keys 2022-03-01 21:23:08 -05:00
orignal
1511dcb309 store endpoint and send packet 2022-02-28 21:46:00 -05:00
R4SAS
35afa98112
[reseed] add new reseed
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-03-01 00:23:52 +03:00
orignal
9f1a125ed9 decrypt connID for incoming packet 2022-02-27 20:15:14 -05:00
orignal
0a34f1f3ad 2.41.0 2022-02-19 17:21:11 -05:00
orignal
7bdeaa9611 don't pick own router for peer test 2022-02-19 08:15:49 -05:00
R4SAS
a51ef0cfc6
set of updates:
* [webconsole] change error handling code to restart acceptor after any
error
* [webconsole] call shutdown vefore stopping acceptor on exit
* update license headers for modified files, change year to file
  creation year, not 2013 (when project started)

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-18 09:20:06 +03:00
orignal
a92c29e04c drop routers older than 6 months on start 2022-02-13 15:42:06 -05:00
orignal
510fe43ec4 create and encrypt SessionRequest 2022-02-11 19:21:04 -05:00
R4SAS
73e572b66b
disable thread naming for PowerPC (#1726)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-11 22:17:38 +03:00
R4SAS
90130b5492
fix exception printing
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-11 00:38:29 +03:00
R4SAS
f22faaefeb
remove duplicate definition
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-11 00:27:19 +03:00
R4SAS
ac25649425 cast pthread name to char* for apple sdk
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-11 00:05:07 +03:00
orignal
04388325a8 KDF and encryption for SessionRequest 2022-02-10 14:03:09 -05:00
orignal
61ec873842 fixed incorrect ret code 2022-02-10 13:07:29 -05:00
orignal
ea1f2d4e26 use i for intro key for SSU 2022-02-06 10:17:35 -05:00
orignal
4211c733a2 s and i keys for all addresses 2022-02-05 17:14:25 -05:00
orignal
450266818a Noise XK for SSU2 2022-02-05 15:58:39 -05:00
orignal
1e019157bb SSU2 initial commit 2022-02-04 15:01:18 -05:00
orignal
c9a1066f02 send SessionCreated before connection close if slock skew 2022-02-03 14:49:36 -05:00
R4SAS
0062f7d764
[reseed] dont do yggdrasill address check if option disabled
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-03 14:49:24 +03:00
orignal
95e994e171 pass incomplete I2NP message by move 2022-02-02 17:33:33 -05:00
orignal
19cc1c3b3f adjust clock from SSU SessionCreated is time difference exceeds 15 seconds 2022-02-01 18:43:11 -05:00
R4SAS
53f19e4050
Use builtin bitswap for endian on windows
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-01-29 22:09:27 +03:00
R4SAS
54b7d46f5a reseeds update
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-01-28 18:39:21 +03:00
orignal
c10ee59de3 cleanup memrory pools if no more streams 2022-01-21 21:34:50 -05:00
orignal
58cf26c304 cleanup properties before update 2022-01-15 19:26:11 -05:00
orignal
a2de5564ac moved m_Properties to LocalRouterInfo 2022-01-15 18:54:02 -05:00
orignal
338b17ccf1 LocalRouterInfo for own router 2022-01-15 12:48:49 -05:00
orignal
2cd50ebaee fixed race condition 2022-01-07 13:39:12 -05:00
orignal
cb6f6a6596 Merge branch 'openssl' of https://github.com/PurpleI2P/i2pd into openssl 2022-01-03 16:28:17 -05:00
orignal
e4ab0acc92 create RouterInfo from shared pointer to Buffer 2022-01-03 16:27:28 -05:00
Dimitris Apostolou
ac2c6c6010
Fix typo 2022-01-02 12:14:12 +02:00
orignal
c6b2ce93c4 Memory pool for RouterInfo address 2022-01-01 15:12:59 -05:00
orignal
f567417bb3 memory pool for RouterInfo buffer 2021-12-30 15:16:13 -05:00
orignal
ae5cb3bbe7 rollback 2021-12-28 08:00:03 -05:00
orignal
0eb8e15796 allocated actual buffer size for RouterInfo 2021-12-27 13:02:06 -05:00
orignal
1c95c7856f avoid duplicated addresses. Check presence of netId and version 2021-12-24 18:58:20 -05:00
orignal
daf7551e59 try another fllodfill if no compatible tunnels 2021-12-18 17:55:26 -05:00
orignal
5b63d3692e HidUser0's yggdrasil reseed added 2021-12-13 13:47:59 -05:00
R4SAS
1be4cce074
[addressbook] fix loading subscriptions from config
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-12-07 22:59:11 +03:00
orignal
935e93eb36 minimal send ack interval 2021-12-05 17:54:34 -05:00
orignal
b3bd175e64 2.40.0 2021-11-27 18:01:13 -05:00
R4SAS
edc0162163
clean line trailing spaces and tabs
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-11-27 23:30:35 +03:00
R4SAS
94661f697b
[log] update log messages (closes #1693)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-11-27 22:53:53 +03:00
R4SAS
96cdb3bca3
reseeds update
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-11-21 20:20:23 +03:00
orignal
6c57ba36f7 lazy initialization or tunnel gateway's random buffer 2021-11-20 18:31:18 -05:00
acetone
8b931dd40b
Transit traffic bandwidth limit 2021-11-20 08:37:36 -05:00
acetone
6b81478bd2
Merge branch 'PurpleI2P:openssl' into openssl 2021-11-20 05:47:32 -05:00
acetone
9d94eb83c1
--help
Traffic bandwidth -> Transit traffic bandwidth
2021-11-20 05:46:44 -05:00
R4SAS
174983548d
Merge pull request #1705 from rex4539/typos
Fix typos
2021-11-14 20:37:33 +03:00
orignal
9abd383014 eliminate extra pointers for tunnel hops 2021-11-13 15:11:59 -05:00
Dimitris Apostolou
8ee9c437e1
Fix typos 2021-11-13 19:07:50 +02:00
orignal
4052b1ea6d pick compatible outbound tunnel for datagrams 2021-11-08 18:23:26 -05:00
orignal
d798faa1ca pick compatible ooutbound tunnel 2021-11-07 17:18:31 -05:00
orignal
3f63f15b16 copy compatible transports to new tunnel 2021-11-06 19:16:45 -04:00
orignal
f8c390cdd3 pick compatible tunnels 2021-11-06 15:44:56 -04:00
orignal
8f0978cfd6 all transports by default 2021-11-06 10:49:18 -04:00
orignal
1a8a32a773 select next tunnel with compatible transports 2021-11-05 14:51:24 -04:00
orignal
c0400bfd07 virtual destructor for TunnelConfig 2021-10-31 22:14:59 -04:00
R4SAS
c6e4758187
Revert "Merge pull request #1703 from simonvetter/simon/memory-and-multithreading-fixes"
This reverts commit 67863cfcf9, reversing
changes made to 4c5ec68ff1.

That change completly bloking transports thread on windows.

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-11-01 05:03:34 +03:00
orignal
56ec8fe95b eliminate local destination mutex 2021-10-31 21:20:16 -04:00
Simon Vetter
58b7b7d731 libi2pd: add missing locks to i2p::tunnel::TunnelPool 2021-10-31 23:26:52 +01:00
Simon Vetter
1de1c79d4f libi2pd: add missing locks to i2p::tunnel::Tunnels
m_InboundTunnelsMutex, m_OutboundTunnelsMutex and m_PoolsMutex
have been changed to recursive_mutexes since they can be
acquired multiple times by the same thread.
2021-10-31 23:14:28 +01:00
Simon Vetter
7073a6bf38 libi2pd: make Tunnel and TunnelConfig destructors virtual 2021-10-31 14:02:25 +01:00
orignal
26db88d89b check if sip key is available 2021-10-27 22:33:37 -04:00
orignal
876e98d91e check if sip key is available 2021-10-27 22:23:32 -04:00
orignal
8566f6c127 don't store EVP_PKEY sip keys 2021-10-27 21:18:21 -04:00
orignal
bb8dc67942 don't use openssl's SipHash from 3.0.0 due regression 2021-10-27 19:05:16 -04:00
orignal
9965d72990 don't store EVP_PKEY with EdDSA signer and verifier 2021-10-26 21:36:34 -04:00
orignal
921ec9ec12 fix build with openssl 3.0.0 2021-10-23 18:10:02 -04:00
orignal
f1990bc2ab use tunnel endpoint memroy pool to split to tunnel messages at gateway 2021-10-22 21:08:20 -04:00
orignal
cdc8e463b7 use memory pool for outgoing tunnel gateway messages 2021-10-22 19:18:45 -04:00
R4SAS
b0f043ec86
[make] USE_GIT_VERSION option to use commit info in version (closes #1702)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-10-22 05:35:01 +03:00