Commit Graph

1772 Commits

Author SHA1 Message Date
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
orignal
ae0cf2e831 use memory pool for tunnel messages 2021-10-20 21:05:22 -04:00
Simon Vetter
a348e10620 libi2pd: fix undefined behaviour and memory overruns
This fixes the following issues (flagged by cppcheck):
[libi2pd/ECIESX25519AEADRatchetSession.cpp:537]: (error) Buffer is accessed out of bounds: m_NSREncodedKey
[libi2pd/Identity.cpp:22]: (error) Buffer is accessed out of bounds: keys.publicKey
[libi2pd/Identity.cpp:22]: (error) Buffer is accessed out of bounds: publicKey
[libi2pd/NetDb.cpp:70] -> [libi2pd/NetDb.cpp:69]: (error) Iterator 'it' used after element has been erased
[libi2pd/SSUData.cpp:186] -> [libi2pd/SSUData.cpp:187]: (warning) Shifting 32-bit value by 63 bits is undefined behaviour.
2021-10-19 22:27:12 +02:00
Simon Vetter
af794f901f libi2pd: minor logging fixes 2021-10-19 22:27:06 +02:00
orignal
278fd2d8d5 create tunnel I2NP message for tunnel data 2021-10-18 19:03:08 -04:00
orignal
197882a4c9 create I2NP depending on type in I2NP block 2021-10-17 15:30:24 -04:00
orignal
d310efcb5c pass I2NPMessage by move 2021-10-17 11:31:37 -04:00
orignal
1af9117b80 don't create new tunnel message for encryption/decryption 2021-10-15 14:01:41 -04:00
orignal
44e01b41f8 reserve address for 3 introducers 2021-10-12 13:28:16 -04:00
orignal
7def2fa6a3 use std::vector for address list 2021-10-10 09:53:21 -04:00
orignal
48131f4597 don't store full path with RouterInfo 2021-10-07 15:08:33 -04:00
orignal
49e8cf89d8 don't send short tunnel build messages for ElGamal only destinations 2021-10-06 12:42:32 -04:00
orignal
e6bcd04a36 short build message for re-created tunnels and far end transports 2021-10-05 19:38:33 -04:00
orignal
af133f4968 fixed crash if incorrect blinded signature type 2021-09-29 12:38:38 -04:00
orignal
cc75efcbca fixed build for C++11 2021-09-27 18:25:15 -04:00
orignal
2eded7cdd7 send ping every keealive interval for client tunnels 2021-09-26 16:25:12 -04:00
orignal
b10e5ce358 send ping 2021-09-26 11:20:20 -04:00
orignal
1bb1d89fab change back to map and unodered_map 2021-09-25 18:30:17 -04:00
orignal
b9dd4aee8d use flat_map for incompete messages 2021-09-24 19:12:12 -04:00
orignal
518e53a61c use flat_map for smaller tables 2021-09-24 14:23:39 -04:00
orignal
18b6ba80f2 cleanup RelayRequests 2021-09-22 19:09:56 -04:00
orignal
8debdc264c use common cleanup timer for all SSU sessions 2021-09-21 22:13:34 -04:00
orignal
31bdce1f1f cleanup received messages list by timestamp 2021-09-21 19:01:22 -04:00
orignal
317d8cdc48 don't allocate separate buffers for SessionRequest and SessionCreated 2021-09-18 15:44:43 -04:00
orignal
5b2b9e00a2 reuse receive buffer 2021-09-17 21:52:39 -04:00
R4SAS
d2faec70be
[gzip] do not initialize deflator if gzip is not enabled for tunnel
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-09-14 14:48:21 +03:00
orignal
247b6a0ed2 memory pool for SSU packets 2021-09-13 13:13:27 -04:00
orignal
f7f36568ef set gzip compression to false by default 2021-09-12 14:29:43 -04:00
orignal
e054c6e82c memory pool for SSU messages and fragments 2021-09-11 18:58:27 -04:00
orignal
5e2e1a1e3d don't include old tunnel to LeaseSet if recreated 2021-09-10 19:57:38 -04:00
orignal
ad036de69d eliminate allocation of m_ExtendedBuffer 2021-09-09 21:19:52 -04:00
orignal
20652f7995 resseed if too few floodfills 2021-09-09 15:12:53 -04:00
R4SAS
2f88a75325
Merge pull request #1688 from yangfl/openssl
disable pthread_setname_np on GNU/Hurd
2021-09-05 21:00:19 +00:00
orignal
292fe94352 RouterContext is always ECIES 2021-09-05 11:16:41 -04:00
orignal
76dca1b46b don't handle ElGamal build record 2021-09-05 09:10:13 -04:00
orignal
a54b5c18c6 fixed crash 2021-09-05 09:08:29 -04:00
orignal
c763472914 select ECIES routers only for peer tests and introducers 2021-09-05 08:41:32 -04:00
orignal
41d6c117ee make sure server tunnel is published 2021-09-04 18:45:32 -04:00
orignal
e8f4c42bfb moved current language from RouterContext to ClientContext 2021-09-04 14:01:57 -04:00
yangfl
3f46ca41ca disable pthread_setname_np on GNU/Hurd
which does not exist on GNU/Hurd
2021-09-04 15:07:09 +08:00
orignal
349022ae42 don't select ElGamal routers for tunnels 2021-09-03 13:30:01 -04:00
orignal
bb518d3d51 don't pass BN_CTX to encrypt/decrypt functions 2021-08-31 18:51:40 -04:00
orignal
c45e202fab removed ElGamal encryption support for own router 2021-08-29 14:22:01 -04:00
orignal
541464b705 don't delete floodfill if number of remaining floodfills is less than minimal 2021-08-26 15:13:58 -04:00
R4SAS
f0c49b58fb
suppress inconsistent-missing-override warning message
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-08-23 19:29:55 +03:00
R4SAS
455c71ff25 fix warning about ifr_name size
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-08-23 17:00:57 +03:00
orignal
96850da31e 2.39.0 2021-08-23 06:58:36 -04:00
R4SAS
b3e7b1b5ac
Squashed commit of the following:
commit 40ec4e8b59
Author: Simon Vetter <simon.vetter@runbox.com>
Date:   Fri Jul 30 21:23:27 2021 +0200

    libi2pd: mark additional ipv6 addresses/nets as reserved

    This adds :: (undefined address), ::1 (loopback address) as well as
    ff00::/8 (multicast prefix) to reservedIPv6Ranges.

    A bunch of nodes seem to be publishing bogus addresses (mostly ::1)
    in the netDB, resulting in unnecessary tunnel build failures.

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-08-13 09:11:56 +03:00
orignal
49b3ac7f77 don't reschedule resend timer for terminated streams 2021-08-11 12:23:43 -04:00
orignal
64ec7dd559 narrow down random range 2021-08-03 19:26:09 -04:00
orignal
367df4d0db RAND_bytes from random router selection 2021-08-03 15:43:58 -04:00
orignal
da7e41c188 use Tag<64> for ratechet tags 2021-08-01 18:42:13 -04:00
R4SAS
d88fe203e1
[tunnels] count outbound traffic for zero-hop tunnels
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-08-01 09:25:02 +03:00
orignal
1e01c30e63 set pool for zero-hops tunnels 2021-07-30 14:12:50 -04:00
orignal
7a55d1fc38 don't insert garlic tag for short tunnel build reply if the same router 2021-07-28 21:14:03 -04:00
orignal
f8623b6121 consistent path for explicit peers 2021-07-28 19:08:55 -04:00
orignal
9a3c22f47d don't encrypt ShortTunnelBuild and ShortTunnelBuildReply if on the same router 2021-07-28 15:06:24 -04:00
orignal
e68cff8bba try routers before random router 2021-07-27 18:35:30 -04:00
orignal
513493fa78 fixed typo 2021-07-26 18:46:29 -04:00
orignal
a6937c792f more precise router selection 2021-07-26 17:51:32 -04:00
orignal
99c7d5c23a don't create enryptor for ECIES record encryption 2021-07-25 22:30:54 -04:00
orignal
cd8e8970de NTP request through compatible address 2021-07-24 16:01:11 -04:00
orignal
26d5ced2ef optimal padding for one-time messages 2021-07-23 20:28:55 -04:00
orignal
c7234f705a let NTCP sync through ipv6 2021-07-23 18:34:51 -04:00
orignal
c153471c49 use short tunnel build if possible 2021-07-22 20:58:35 -04:00
orignal
f28024cfe8 decline transit tunnels from short tunnel build message 2021-07-21 18:12:37 -04:00
orignal
911ab9813e handle encrypteed I2NPShortTunnelBuildReply in destination 2021-07-21 14:55:38 -04:00
orignal
cfbf5862f9 set pool for tunnel before build 2021-07-21 13:08:12 -04:00
orignal
5cb1f5986d use msgID from ECIESx25519 block 2021-07-20 22:00:06 -04:00
orignal
0b14c810fb handle ShortTunnelBuildReply 2021-07-20 19:38:36 -04:00
orignal
c2334db8f8 correct reply key for short tunnel build record 2021-07-20 18:02:48 -04:00
orignal
4807092df6 fixed typo 2021-07-20 15:17:58 -04:00
orignal
bdc1107c96 correct message type for ShortTunnelBuild 2021-07-20 14:35:02 -04:00
orignal
db9223b0d5 set minimal version for floodfill to 0.9.38 2021-07-19 17:50:55 -04:00
orignal
6ecfe0789f don't allocate payload buffer for every single ECIESx25519 message 2021-07-18 18:45:08 -04:00
orignal
a37cf058cd router with expired introducer is still valid 2021-07-16 20:12:41 -04:00
orignal
f4902e6642 eligble floodfill must be reachable by ipv4 2021-07-16 13:53:12 -04:00
orignal
5d022c25ba don't send datetime for one time key message 2021-07-16 09:44:22 -04:00
orignal
0cd9f1b002 precalculate padding sizes 2021-07-15 19:01:43 -04:00
orignal
cd0751d3f1 padding block for message for router 2021-07-15 18:30:32 -04:00
orignal
a1d1a5df74 datetime block for message for router 2021-07-15 18:18:55 -04:00
orignal
197f13f9c0 rollback 2021-07-15 14:02:20 -04:00
orignal
41bfc7899d keep own RouterInfo in netdb 2021-07-14 14:46:56 -04:00
orignal
2c129b6d39 create and handle short tunnel build reply 2021-07-12 19:40:40 -04:00
orignal
dbe427d5eb set reply code for short tunnel build messages 2021-07-11 19:29:16 -04:00
orignal
15c3d46492 encrypt inbound tunnel build message for short tunnel build only 2021-07-10 17:28:18 -04:00
orignal
6a467a09bd fixed build error 2021-07-10 16:47:28 -04:00
orignal
ba1b8c7c2b WrapECIESX25519MessageForRouter wihout session 2021-07-10 16:15:15 -04:00
orignal
1e9eb30aa3 garlic encryption of inbound tunnel build message 2021-07-10 14:33:23 -04:00
orignal
d47bf1bada different tunnel build record size 2021-07-09 19:26:14 -04:00
orignal
59dd60f5cb genarate keys in CreateBuildRequestRecord 2021-07-09 19:24:28 -04:00
orignal
c02a0c4da9 process DELAY_REQUESTED option 2021-07-08 22:22:00 -04:00
orignal
84f6024cc9 locate record to build inside CreateBuildRequestRecord 2021-07-08 19:00:25 -04:00
orignal
d73b42b726 extract ret code per hop 2021-07-08 16:39:38 -04:00
orignal
ed0c2e68a5 DecryptRecord per tunnel hop 2021-07-07 21:16:30 -04:00
orignal
847225c6bf more yggdrasil reseeds added 2021-07-07 08:24:01 -04:00
orignal
a6294df9e8 decrypt one-time message encrypted with tag on router 2021-07-06 20:15:55 -04:00
orignal
9000b3df4e KDF for short tunnel build messages 2021-07-05 14:31:07 -04:00
orignal
a717542733 update yggdrasil reseed to 0.4 2021-07-04 07:33:28 -04:00
orignal
aace644815 added ShortECIESTunnelHopConfig 2021-07-02 22:06:24 -04:00
orignal
0ae170531e different ElGamal and ECIES hops configs 2021-07-02 15:41:33 -04:00
orignal
8b35ce3320 separate decryption between own record and other records 2021-07-02 13:20:24 -04:00
orignal
5781335814 save and check last stream 2021-06-29 19:08:11 -04:00
orignal
25f63ac22a create different I2NP tunnel messages for endpoint and non-endpoint 2021-06-27 15:49:57 -04:00
orignal
66422d6d83 double size tunnel message 2021-06-26 21:44:51 -04:00
orignal
b9476791f4 eliminated extra I2NP messages for fragments 2021-06-26 17:40:25 -04:00
orignal
d0c5732e16 eliminate extra lookups for sequential fragments 2021-06-26 07:18:42 -04:00
orignal
3c07665479 use unordered_map for incomplete messages 2021-06-22 15:35:44 -04:00
orignal
f7f50d049b reduce short tunnel build record length 2021-06-22 13:11:02 -04:00
R4SAS
6971b1e9da fix typo in config option description
Kudos @iBicha
https://github.com/PurpleI2P/i2pd/pull/1662#pullrequestreview-687850246

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-06-20 20:03:33 +03:00
orignal
fed04c1a19 requsted router to send to if not in netdb 2021-06-19 14:44:33 -04:00
orignal
f5e7d87f5b don't disable floodfill if still reachable by ipv6 2021-06-19 14:25:50 -04:00
orignal
6ca28adcbb set address caps and available transports for new address 2021-06-18 18:19:05 -04:00
R4SAS
e8ad7b4f79
rework of storing certificates path (#1642)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-06-18 10:04:48 +03:00
R4SAS
d3a49e513c
remove repeatable type definition, add include (#1642)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-06-18 06:45:12 +03:00
R4SAS
5bfab0a796
add certsdir option (#1642)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-06-18 06:38:10 +03:00
orignal
2185019b59 check if router is reachable by transport before obtaining address 2021-06-17 19:46:05 -04:00
orignal
81c83f0d54 pick ECIES routers only for non-x64 2021-06-17 19:10:57 -04:00
orignal
08a82a0bcd don't try to connect to a router not reachable from us 2021-06-17 12:12:06 -04:00
orignal
a6af4908d5 use m_ReachableTransports bitmask 2021-06-16 18:14:33 -04:00
orignal
dc75868bd3 check Alice's IP address in PeerTest 2021-06-15 19:09:36 -04:00
orignal
631c8c9870 use correct address type for NTCP2 acceptors 2021-06-14 21:19:44 -04:00
orignal
bce6685d0c correct check of ipv4/ipv6 address 2021-06-14 12:36:54 -04:00
orignal
e412b17f70 don't publish slow tunnel in LeaseSet if possible 2021-06-11 08:34:56 -04:00
orignal
a92b93192d reg.i2p for subscriptions 2021-06-10 13:24:04 -04:00
R4SAS
8708a0076f fix build with boost < 1.55.0 (closes #1661)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-06-09 22:23:33 +03:00
orignal
83fd289e46 don't re-create noise state for every message 2021-06-09 12:49:50 -04:00
orignal
3b051dbba3 send OutboundTunnelBuildReply 2021-06-08 15:36:27 -04:00
orignal
8571830485 create transit tunnel and reply for short tunnel build 2021-06-07 18:28:36 -04:00
orignal
5fb426b336 decrypt and encrypt reply for short tunnel build message 2021-06-06 13:55:38 -04:00
orignal
d752a83eb5 handle i2cp.dontPublishLeaseSet for all destinations 2021-06-04 18:28:30 -04:00
orignal
e740d5fc4f try to pick non-slow tunnel 2021-06-04 12:16:50 -04:00
orignal
8e3e35a36d decrypt short request record 2021-06-02 19:50:29 -04:00
orignal
5ce9c0f1e2 build new tunnels instead slow 2021-06-02 14:45:21 -04:00
orignal
ef8c4389e1 reachable transports added 2021-06-02 12:55:08 -04:00
R4SAS
0547d590e1
fix typo
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-31 00:24:54 +03:00
R4SAS
be31640010
fix ipv6 preference on linux
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-31 00:23:50 +03:00
R4SAS
ed42948051 prefer public ipv6 instead rfc4941 (closes #1251)
Wokrs only on linux-based systems. Not tested on other *nix systems, and
not works on windows.

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-30 03:25:13 +03:00
orignal
a0e545a6f1 always create new tunnel from exploratory pool 2021-05-28 12:11:24 -04:00
R4SAS
779f2fa451
[i18n] rework localization system
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-25 22:03:29 +03:00
orignal
08fafe267a rekey all routers to ECIES 2021-05-23 17:27:14 -04:00
orignal
d06924b339 LeaseSet type 3 by default 2021-05-23 14:28:10 -04:00
orignal
7ed440ba75
Merge pull request #1657 from PurpleI2P/i18n
I18n
2021-05-23 08:26:11 -04:00
R4SAS
df66c2d2dc
[i18n] translate HTTP proxy
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-23 06:06:04 +03:00
orignal
f321eb66c0 rename DatabaseLookupTageSet to SymmetricKeyTagset 2021-05-22 18:41:25 -04:00
R4SAS
80b44fc9a9
Support multilang, update code
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-22 18:29:05 +03:00
R4SAS
0e68fe4a57 [i18n] start multilang support for webconsole
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-22 08:39:29 +03:00
orignal
59b471b9a2 i2cp.leaseSetPrivKey for HTTP and SOCKS proxy 2021-05-20 14:10:31 -04:00
orignal
f22eaa6db5 2.38.0 2021-05-16 14:26:00 -04:00
R4SAS
c359c6e634
update config file example, add v6 status to windows daemon window, code cleanup
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-15 16:31:53 +03:00
orignal
baec22610e always set expiration time for NSR tagset 2021-05-12 07:57:37 -04:00
orignal
43b587636b delete tags of termiated session right away 2021-05-11 18:49:17 -04:00
orignal
c6cdb26f47 reduce range for extra tags 2021-05-10 20:20:25 -04:00
orignal
1285e30b3e more pre-calculated x25519 2021-05-10 18:55:39 -04:00
orignal
d6f5640685 attach updated LeaseSet to ECIESx25519 incoming sessions 2021-05-09 07:33:26 -04:00
orignal
79dbf2a43e request encrypted LeaseSet if expired 2021-05-07 22:15:12 -04:00
orignal
5ad4c2a65e run ipv6 peer test again if still testing 2021-05-04 14:59:25 -04:00
orignal
fffa550bb0 SAM subsessions 2021-05-04 14:27:06 -04:00
orignal
0b9cb4e75b check identity and signature length for SessionConfirmed 2021-05-03 19:05:25 -04:00
orignal
7f143a7f23 support EdDSA for blinding 2021-05-02 15:02:52 -04:00
orignal
d8d8a68814 rekey all routers but floodfills 2021-04-30 15:19:31 -04:00
orignal
e091eba831 don't cleanup ipv6 introducers list twice 2021-04-25 17:55:13 -04:00
orignal
4a0dbec4fb recognize non-published NTCP2 address 2021-04-25 16:42:09 -04:00
orignal
90dee900f0 fixed crash 2021-04-25 10:57:31 -04:00
orignal
94555b9c43 don't select next introducers from existing sessions 2021-04-24 14:56:34 -04:00
orignal
db93a7315f find new introducers to connect 2021-04-24 11:11:12 -04:00
orignal
7a19533380 reuse current introducers if no more available 2021-04-23 12:17:48 -04:00
orignal
9d79b26506 check if port if specified 2021-04-22 19:32:47 -04:00
orignal
b5618af308 find all introducers at the time 2021-04-21 15:41:04 -04:00
orignal
9c8c3b9174 select few introducers at the time 2021-04-21 10:56:39 -04:00
orignal
01e591b261 find ipv6 intrioducer session 2021-04-21 09:55:36 -04:00
orignal
060e30d283 select ipv6 random introducer 2021-04-21 08:16:13 -04:00
orignal
ad019da553 publish ipv6 introducers 2021-04-20 20:02:30 -04:00
orignal
ca77ca6ef0 reseed from compatible address 2021-04-18 17:27:50 -04:00
orignal
d5b61ed544 select different routers for peer test 2021-04-17 14:33:53 -04:00
orignal
5edb256990 check if our external IP is valid 2021-04-16 19:31:49 -04:00
orignal
74d0c04314 ipv6 address for relay reponse and relay intro 2021-04-15 16:06:02 -04:00
orignal
39d4464be0 make sure that introducer or peer test router is reachable by SSU 2021-04-15 11:43:43 -04:00
orignal
be48dc6e87 pick correct local address for intro key 2021-04-13 15:11:37 -04:00
orignal
2783337284 require ipv4 for IBGW 2021-04-13 09:16:52 -04:00
orignal
df858d9143 publish iexp 2021-04-09 13:29:07 -04:00
orignal
ac47c9c673 don't check U cap 2021-04-09 10:56:46 -04:00
orignal
b9a2d5df02 send HolePunch back based on actual address type 2021-04-08 21:07:14 -04:00
orignal
3e873f88c9 don't drop introducers without iExp 2021-04-07 15:55:38 -04:00
orignal
277cef5ec4 eliminate cost field 2021-04-07 13:05:38 -04:00
orignal
5c9b478e46 published field for SSU addresses 2021-04-05 21:45:48 -04:00
orignal
ff89edf127 pick random introducer 2021-04-05 18:22:48 -04:00
orignal
2cc9791bf2 exclude already expired introducers 2021-04-04 10:36:22 -04:00
orignal
67b32005f6 check if host if unspecified 2021-04-03 22:18:09 -04:00
orignal
0f166973ca check ureachable cap and actual introducers separately 2021-04-03 20:03:19 -04:00
orignal
4f3333c841 don't check range ffor unspecified address 2021-04-03 19:24:07 -04:00
orignal
bea384abea recongnize v4 and v6 SSU addresses without host 2021-04-03 18:56:50 -04:00
orignal
43033695f6 select apropriate address for peer test 2021-04-02 21:31:14 -04:00
orignal
51ef7ef61c don't publish LeaseSet without tunnels 2021-04-01 13:37:21 -04:00
orignal
823b499a02 remove already expired LeaseSets 2021-04-01 11:45:50 -04:00
orignal
bb5ed0b40c assign correct 6 or 4 cap to unpublished address 2021-04-01 11:02:29 -04:00
orignal
94ca2514af set zero expiration timeout if no tunnels 2021-04-01 10:29:03 -04:00
orignal
5412352dec publish ipv6 introducers for ipv6 addresses 2021-03-31 13:42:57 -04:00
orignal
bd7328345f Don't change Yddrasil address if router becomes unreachable through ipv6 2021-03-30 19:27:40 -04:00
orignal
25eae3c116 return relay tag for ipv6 introducer 2021-03-30 11:31:11 -04:00
orignal
5cca5472e6 don't handle unsilicited HolePunch 2021-03-29 15:50:33 -04:00
orignal
8462d382f4 don't create SSU session for HolePunch 2021-03-29 15:16:39 -04:00
orignal
2b0d18a6d7 don't change router status from ipv6 2021-03-29 14:44:50 -04:00
orignal
167d3a0e3c don't create BN_CTX for ECIES tunnel build record decryption 2021-03-28 12:14:02 -04:00
orignal
86415bc61f publish introducer cap for ipv6 address 2021-03-27 18:49:35 -04:00
orignal
a6ea37a21e set ipv6 address caps depending on peer test 2021-03-27 15:16:56 -04:00
orignal
3695aa924b doesn't send peer test to a reserved address 2021-03-24 10:32:15 -04:00
orignal
9e050d1a23 peer test for ipv6 2021-03-23 15:36:57 -04:00
orignal
34eee2fc26 fixed #1644. check leaseset buffer size 2021-03-22 20:12:58 -04:00
orignal
ac10f3055d pick correct local SSU address for sending peer test 2021-03-19 21:51:45 -04:00
orignal
991b74f036 bind ipv6 or yggdrasil acceptor to specified address 2021-03-19 13:10:24 -04:00
orignal
589049ef0f connect to ipv6 address through introducer 2021-03-19 10:20:02 -04:00
orignal
6b0c7c2313 handle ipv6 address in RelayResponse 2021-03-18 21:29:39 -04:00
orignal
a9c7d0d598 common ExtractIPAddressAndPort 2021-03-18 20:11:24 -04:00
orignal
ef1dfb153c handle ipv6 address for RelayIntro 2021-03-18 18:37:02 -04:00
orignal
820a365474 select random peer for first hop for outbound tunnel if number of connections < 100 2021-03-16 18:45:51 -04:00
orignal
1d5d06f731 find actual router for peer 2021-03-16 15:23:00 -04:00
orignal
43d458cf72 publish and upublish NTCP2 and yggdrasil addresses separatly 2021-03-16 13:08:10 -04:00
orignal
7015bad905 2.37.0 2021-03-15 08:30:04 -04:00
orignal
cf8665748b network sattus Mesh added 2021-03-13 10:28:03 -05:00
orignal
1b8da90cbb more precise compatibility check 2021-03-12 20:51:12 -05:00
orignal
6012585067 eliminate false positive symmetric NAT 2021-03-12 17:41:41 -05:00
orignal
f162876600 insert ipv4 address if enabled back 2021-03-12 16:13:01 -05:00
orignal
6555ae5b0a support authorization for reseed proxy 2021-03-11 17:02:56 -05:00
R4SAS
cb8651ec68 [win32] drop service code, fix start with daemon option. Throw notification when unable to parse config
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-03-11 14:40:06 +03:00
orignal
7c0b0a4e3e common HTTP basic authorization string 2021-03-10 22:47:31 -05:00
orignal
880d1a7ccd NTCP2 proxy with authorization 2021-03-10 20:00:21 -05:00
orignal
744b25190a don't set proxy if ntcp2 is disabled 2021-03-10 15:36:10 -05:00
R4SAS
9049902ced [webconsole] add address registration line generator
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-03-10 01:48:54 +03:00
orignal
5f93dc72fd convert ifname* params to address* 2021-03-09 15:28:07 -05:00
orignal
09dadd7e01
Merge pull request #1640 from brain5lug/openssl
logging opimization
2021-03-09 07:46:28 -05:00
orignal
60b92f98db OBEP must be ipv4 compatible 2021-03-08 18:54:17 -05:00
orignal
97f315d488 set correct 4 and 6 caps for unreachable addresses 2021-03-08 15:57:05 -05:00
brain5lug
f3676d7f18 logging opimization 2021-03-08 11:31:00 +03:00
orignal
742dbdb68a rekey low badwidth routers to ECIES 2021-03-07 10:07:51 -05:00
orignal
2d59c968ca don't publish NTCP2 address connected through proxy 2021-03-06 18:43:50 -05:00
orignal
ad22247c9e start other acceptors if connected through a proxy 2021-03-06 15:35:31 -05:00
orignal
f38920c338 Status: Proxy 2021-03-06 08:50:47 -05:00
orignal
8f90b21a5d fixed typo 2021-03-05 22:40:27 -05:00
orignal
ff0e6813c6 fixed typo 2021-03-05 21:53:19 -05:00
orignal
fa5e4d57fd correct caps for SSU address without host 2021-03-05 19:40:37 -05:00
orignal
876973f071 remove coreVersion 2021-03-05 09:29:28 -05:00
orignal
b994af9209 check reachability of floodfill to request from 2021-03-05 08:41:44 -05:00
orignal
1f6cde652e check caps for SSU address 2021-03-04 22:47:56 -05:00
R4SAS
3bf6db1c08 enable yggdrasil address finding for android
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-03-05 03:20:12 +03:00
orignal
e70ffc9d7c re-shedule introducers updates if router becomes firewalled 2021-03-04 15:55:51 -05:00
orignal
065cfe3b9d separate ratchet session for ECIES router 2021-03-03 15:30:13 -05:00
orignal
def9873a70 request multiple introducers at the time 2021-03-02 21:10:19 -05:00
orignal
618aa26454 allow some unreachable floodfills 2021-03-02 14:13:28 -05:00
orignal
924a7bc533 use connected peers if others not available 2021-03-02 12:29:51 -05:00
orignal
ef85277a1b select reachable routers for one hop tunnels 2021-03-02 08:46:13 -05:00
orignal
876375f2c3 precise bandwidth limit 2021-03-01 22:13:17 -05:00
orignal
f70ee480ba check connectivity between peers for tunnel 2021-03-01 19:02:27 -05:00
orignal
6d88c3ab05 Symmetric NAT error 2021-03-01 12:20:53 -05:00
orignal
57c969b0ed constants for cost 2021-03-01 11:09:25 -05:00
orignal
ae58a7007b different cost for direct or with introducers SSU address 2021-02-28 19:19:09 -05:00
orignal
11c924bbe7 publish and handle SSU addreses without host 2021-02-28 18:58:25 -05:00
orignal
bef9a54f4a bind SSU socket to specified address 2021-02-27 16:13:12 -05:00
orignal
288b19c3f7 bind NTCP2 ipv4 acceptor to specified local address 2021-02-27 10:35:50 -05:00
orignal
40f7e9d33e separate decryptor for tunnel builds and floodfill requests 2021-02-26 21:02:51 -05:00
orignal
fab53dda66 fixed typo 2021-02-26 20:38:16 -05:00
orignal
a4e8bf9857 bind NTCP2 connections to specified address 2021-02-26 19:31:38 -05:00
orignal
fbe83f729d don't try to send to unreachable router 2021-02-25 19:55:46 -05:00
R4SAS
4371a084ec
check for pubkey in X25519Keys::Agree
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-02-26 03:20:06 +03:00
orignal
a4dda304d2 cancel connect timer upon SessionConfirmed 2021-02-24 10:03:23 -05:00
orignal
124c3ef2d7 always publish SSU port 2021-02-23 21:15:17 -05:00
orignal
c3a2fca76a 4 or 6 caps for non-published addresses 2021-02-23 19:59:35 -05:00
orignal
b60ebfe1c6 parse '4' and '6' address caps 2021-02-22 22:53:25 -05:00
orignal
1d7639b3f4 caps per address 2021-02-22 21:04:26 -05:00
orignal
94659ba890 create ipv4 and ipv6 NTCP2 addresses separately 2021-02-17 21:51:35 -05:00
orignal
d65bc068de create ipv4 and ipv6 NTCP2 addresses separately 2021-02-17 21:12:17 -05:00
orignal
1ca0354cf2 find NTCP2 address by static key. Don't make router unreachable if can't connect by NTCP2 2021-02-17 18:46:41 -05:00
orignal
b1fcd4d27b show actual IP addresses for proxy connections 2021-02-17 14:26:48 -05:00
orignal
d1a98212ee 2.36.0 2021-02-15 07:57:17 -05:00
orignal
75a31c79ae don't process SSU messages after termination 2021-02-13 18:36:23 -05:00
orignal
aa206d034d fixed #1373. Limit number of tunnels by 16 2021-02-11 18:32:03 -05:00
orignal
765ab60753 try to reseed if no compatible routers in netdb 2021-02-10 15:27:13 -05:00
orignal
44e4ec573d enable NTCP2 transport for newly created routers 2021-02-10 14:59:08 -05:00
R4SAS
63127ab181
add yggdrasil address search for windows
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-02-10 17:58:14 +03:00
orignal
7e4c33d27e resend RouterInfo after some interval 2021-02-07 10:39:26 -05:00
orignal
c164601acf reseed from clearnet only if ipv4 or ipv6 is enabled 2021-02-06 21:25:16 -05:00
orignal
3b32da4f5c don't disable NTCP2 address if Yggdrasil address is presented 2021-02-06 19:07:39 -05:00
orignal
313921da56 publish and request through exploratory tunnel if floodfill is not reachable 2021-02-06 14:49:42 -05:00
orignal
2d0e219197 add Yggdrasil adddress even if NTCP2 is not published. Correct reachable capacity 2021-02-05 17:24:11 -05:00
orignal
dc64d1738a try both ipv4 and ipv6 SSU addresses if presented 2021-02-04 21:48:13 -05:00
orignal
89e8d99294 check availability of particular address 2021-02-03 20:09:43 -05:00
orignal
66a238045f Merge branch 'openssl' of https://github.com/PurpleI2P/i2pd into openssl 2021-02-03 14:25:14 -05:00
orignal
33b82b5669 check transport compatibility with peer before connecting 2021-02-03 14:24:43 -05:00
R4SAS
6966539b86 reindent Datagram, Daemon, update default subscription in config example
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-02-03 14:57:43 +03:00
orignal
0e5dc15005 create Yggdrasil address for new router 2021-02-02 21:39:16 -05:00
orignal
a74f685a5d check local address 2021-02-02 19:29:13 -05:00
orignal
05c7aacfa5 check for NTCP for yggdrasil address 2021-02-01 22:24:51 -05:00
orignal
ace80c29e7 meshnets.yggaddress added 2021-02-01 18:00:03 -05:00
orignal
bfb1380dd2 don't update Yggdrasil address from SSU 2021-02-01 13:18:48 -05:00
orignal
ea19802d3f update right ipv6 only 2021-02-01 12:47:41 -05:00
orignal
fef4f13b8f don't insert Yggdrasil address twice 2021-01-31 19:09:38 -05:00
orignal
c4fc0f4ecf add Yggdrasil address 2021-01-31 18:30:53 -05:00
orignal
aad2d68edb NTCP2 transports through the Yggdrasil 2021-01-31 17:25:07 -05:00
orignal
9e5935aea5 NTCP2Mesh added 2021-01-30 18:32:17 -05:00
orignal
129b4a2135 don't support NTCP1 address in RouterInfo 2021-01-30 16:50:53 -05:00
orignal
82649ab2a7 IsYggdrasilAddress added 2021-01-29 13:27:49 -05:00
orignal
1ba5d25819 correct detection of chunked response 2021-01-29 12:12:40 -05:00
orignal
daa3f8699b don't detect Yggdrasil for android 2021-01-29 09:32:33 -05:00
orignal
484f69f16b try to select reachable router of inbound tunnel gateway 2021-01-28 13:33:12 -05:00
R4SAS
7c8280934a
update addressbook subscriptions
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-01-27 06:48:35 +03:00
orignal
85902b358a remove [] from yggdrasil reseed address 2021-01-26 13:43:20 -05:00
R4SAS
5931cb59ab fix thread setname on NetBSD
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-01-26 18:54:41 +03:00
orignal
d13fbe5549 support reseed throught the Yggdrasil 2021-01-25 19:48:33 -05:00
orignal
ed4c00e4f4 check yggdrasil ipv6 range 2021-01-24 21:21:35 -05:00
orignal
07282ec39f get local yggdrasil ipv6 address 2021-01-24 19:42:44 -05:00
orignal
2d998aba43 fixed typo 2021-01-24 15:44:54 -05:00
orignal
2e0019c8c8 check if NTCP2 address is valid before connection attempt 2021-01-24 11:34:11 -05:00
orignal
96e9608036
Merge pull request #1623 from rex4539/fix-warnings2
Fix clang warning
2021-01-24 11:23:12 -05:00
orignal
9d5bb1b2b6 drop routing path for LeaseSet resend 2021-01-23 21:25:52 -05:00
Dimitris Apostolou
67dab9b6d2
Fix clang warning 2021-01-21 11:07:01 +02:00
orignal
6fc5f88a3b dump addressbook in hosts.txt format 2021-01-20 19:19:34 -05:00
orignal
e0cec79ad6 try both ipv4 and ipv6 NTCP2 addresses if presented 2021-01-18 18:58:16 -05:00
orignal
1a9e11d86d don't send updated LeaseSet through a terminated session 2021-01-18 12:58:27 -05:00
orignal
1235d18d67 pass address to NTCP2 session 2021-01-17 17:15:41 -05:00
orignal
8f25b66760 limit tunnel length to 8 hops 2021-01-14 11:24:03 -05:00
orignal
29176dd9bf count last send time for expiration 2021-01-09 18:59:09 -05:00
orignal
aedcd1bcc0 remove tag after tagset expiration 2021-01-07 14:51:23 -05:00
orignal
b1262d54de don't detach ECIESx25519 session from destination 2021-01-05 15:56:48 -05:00
orignal
bc4a97774f strong pointer to session for receive tagset 2021-01-04 20:15:48 -05:00
orignal
ee3cd44f97 ReceiveRatchetTagSet 2021-01-04 18:20:16 -05:00
orignal
726bd0d63b check if x25519 key is valid 2021-01-01 15:03:11 -05:00
orignal
7ce92118e4 handle follow-on NSR messages 2020-12-27 11:18:53 -05:00
orignal
86ff0d86db check if new tag was created 2020-12-26 17:18:29 -05:00
orignal
d34dc397e8 changed to 320 tags max 2020-12-24 14:06:34 -05:00
orignal
f2e4d5f06c trim behind not affter max generated tags 2020-12-20 19:52:06 -05:00
orignal
da7e2f2580 don't send message through non-established session 2020-12-19 15:07:12 -05:00
orignal
8c61e7d227 replace LeaseSet completely if store type changes 2020-12-17 18:58:30 -05:00
orignal
06a7e181cd ECIES for new routers 2020-12-15 16:06:32 -05:00
orignal
bf91e16b5d gererate specified number of tags if misssing tag 2020-12-15 15:04:20 -05:00
orignal
65945b3462 correct offline signature size for close packet 2020-12-13 21:55:51 -05:00
orignal
fc2dc9a019 cumulative ACK bitfields 2020-12-12 21:40:07 -05:00
orignal
04645aacc4 Merge branch 'openssl' of https://github.com/PurpleI2P/i2pd into openssl 2020-12-12 17:15:34 -05:00
orignal
c91a8711e3 encrypted requests to ECIES floodfills 2020-12-12 17:14:58 -05:00
R4SAS
7373dae026
[avx] check if c++ target supports AVX (closes #1600)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-12-12 09:54:07 +03:00
R4SAS
ca3b819151
[avx] check ig c++ target supports AVX
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-12-10 18:32:41 +03:00
orignal
ba79b94e06 try to generate missing ECIESx25519 tag in last tagset 2020-12-08 15:16:40 -05:00
R4SAS
bfc3acb834
use correct function for thread naming on OpenBSD
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-12-07 19:47:50 +03:00
R4SAS
ac67cd7f9a
add FreeBSD builder for GHA (#1595) 2020-12-07 08:36:06 +03:00
R4SAS
3100d4f902 move thread naming to util
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-12-07 06:22:30 +03:00
orignal
aace200899 don't create paired zero hops tunnel 2020-12-05 08:26:21 -05:00
orignal
a843165cb4 try ratchets tag first 2020-12-04 19:15:06 -05:00
R4SAS
36473e3889 add naming to threads
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-12-04 18:37:17 +03:00
orignal
e2fcab34b7 deccrypt and handle garlic message for ECIES router 2020-12-03 22:01:58 -05:00
orignal
abdf92c084 encrypt message for ECIES router 2020-12-03 19:43:43 -05:00
orignal
32fc6482cc moved Noise initializations to Crypto.cpp 2020-12-03 17:58:37 -05:00
orignal
0ab95b1b87 2.35.0 2020-11-30 12:50:15 -05:00
orignal
746f53ba07 use SendBufferQueue for queued messages from I2P 2020-11-29 14:59:34 -05:00
orignal
c833b16544 check if session expired before generating more tags 2020-11-26 09:15:45 -05:00
orignal
1c5b350c2b TCP_QUICKACK 2020-11-23 18:55:48 -05:00
orignal
9301e39af7 minimal version for floodfill 0.9.28 2020-11-23 12:49:18 -05:00
R4SAS
bc330ff0ea update makefiles, license year
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-11-23 01:46:08 +03:00
orignal
c875ff923a random intro key 2020-11-21 18:44:40 -05:00
orignal
3dfb44de31 exclude DSA floodfills 2020-11-21 14:27:08 -05:00
R4SAS
2266c3877c
update reseeds
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-11-21 19:45:06 +03:00
orignal
f4486bc075 take intro key from right address 2020-11-20 21:48:33 -05:00
orignal
0436a65baa upddate DSA router keys 2020-11-20 20:31:50 -05:00
orignal
d8381e9486 disable encryption to ECIES routers 2020-11-18 18:11:29 -05:00
orignal
3925540517 don't update expired tunnels 2020-11-16 12:56:22 -05:00
orignal
3b630fe546 fixed race condition 2020-11-16 10:04:38 -05:00
orignal
c69c4ae8a0 don't publish too fast 2020-11-15 21:46:49 -05:00
orignal
b4369470cb publish updated RouterInfo 2020-11-15 20:05:27 -05:00
R4SAS
2bd6daeb8d disable aes/avx for winxp by default 2020-11-16 03:43:54 +03:00
orignal
44ca315c75 don't build tunnels for all pools at the time 2020-11-15 19:38:34 -05:00
orignal
af20b13c7a create paired inbound tunnels if no inbound tunnels yet 2020-11-15 17:02:01 -05:00
orignal
1f6be38145 wait for publish confirmation or publish to another floodfill 2020-11-15 13:06:02 -05:00
orignal
8b3a7486c7 rename CRYPTO_KEY_TYPE_ECIES_X25519_AEAD_RATCHET to CRYPTO_KEY_TYPE_ECIES_X25519_AEAD 2020-11-14 18:28:50 -05:00
R4SAS
62cd9fffa3
Automate AES-NI and AVX detection on runtime, make it default on x86-based systems (#1578)
Rework CPU extensions detection code and build with AES-NI and AVX support by default
2020-11-15 01:31:20 +03:00
orignal
7e874eaa7c pre-calculated h 2020-11-12 15:15:02 -05:00
orignal
1c7780a423 garlic clove block for router 2020-11-09 15:35:50 -05:00
orignal
07b77443dd don't handle TunnelBuild message for ECIES router 2020-11-07 18:28:38 -05:00
orignal
4ba1be2dc0 one time garlic encryption for ECIES routers 2020-11-05 21:21:46 -05:00
orignal
6362a7bba5 decrypt garlic on ECIES router 2020-11-05 15:27:37 -05:00
orignal
1740715c00 correct reply key and IV for ECIES record 2020-11-04 21:04:28 -05:00
orignal
21501cbf81 correct MixHash after decryption 2020-11-04 13:31:28 -05:00
orignal
d5f3d6111e correct tunnel build record size to decrept 2020-11-04 11:52:33 -05:00
orignal
bd04f92087 correct public key for ECIES address 2020-11-03 18:41:27 -05:00
orignal
942b2b05e7 correct key for AEAD decryption 2020-11-03 15:53:47 -05:00
orignal
b8064b9b4b copy noise state 2020-11-03 15:42:53 -05:00
orignal
f94d03465a don't create transit tunnel if decyrption failed 2020-11-03 15:38:25 -05:00
orignal
4e7aafeec1 send transit tunnel reply for ECIES router 2020-11-03 15:23:13 -05:00
orignal
d820b8036e correct transient signature length 2020-11-03 09:20:14 -05:00
orignal
3907c17cf5 handle TunnelBuildMessage for ECIES router 2020-11-02 18:49:07 -05:00
orignal
b12fa97a38 32 bytes private key for ECIESx25519 2020-10-29 18:41:21 -04:00
orignal
9f2a2e44a3 common MixHash and MixKey 2020-10-28 21:53:11 -04:00
orignal
c63818f355 2.34.0 2020-10-27 12:27:08 -04:00
orignal
c400372a79 create new ratchets session if previous was not replied 2020-10-27 08:32:38 -04:00
R4SAS
56f3bdd746
[win32] handle WinAPI errors in SSU
Windows can throw WinAPI errors which are not handled by boost asio

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-10-27 11:52:02 +03:00
orignal
21d99e355c MixHash(sepk) added 2020-10-24 15:48:56 -04:00
orignal
ef5495bfb2 padding for x25519 crypto key 2020-10-23 22:14:00 -04:00
orignal
c93ee0d65d tunnels through ECIES routers 2020-10-23 15:53:22 -04:00
orignal
57d6c7a3b3 Added TunnelConfig.cpp. Removed CryptoWroker.h 2020-10-22 21:06:23 -04:00
orignal
d65a282e9d check routers with non ElGamal encryptions for lookup, publish and tunnel build 2020-10-22 18:34:15 -04:00
orignal
801ecaa41c temporary exclude routers with non ElGamal crypto types 2020-10-21 19:03:51 -04:00
orignal
49bf735c22 don't set destination to routers 2020-10-21 18:59:16 -04:00
orignal
387830e07a encyption type 0,4 by default for client tunnels 2020-10-19 18:26:01 -04:00
orignal
417b5ed6cc handle SSU v4 and v6 messages in one thread 2020-10-14 21:06:51 -04:00
orignal
acc5592f59 create DH keys for SSU session directly 2020-10-13 21:12:52 -04:00
R4SAS
3f45a11f12
[SSU] handle ICMP responses
Windows network stack can forward ICMP to socket and simple deleting of
packet can cause socket death. Same thing can happen on other systems
but without socket death.

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-10-13 15:22:39 +03:00
orignal
e3464add50 don't create new tunnels if offline 2020-10-12 17:15:17 -04:00
R4SAS
18bb4a71c2
fix incorrect chars in variable
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-10-12 18:27:25 +03:00
R4SAS
85e9da82b0 [transports] validate IP when trying connect to remote peer for being in reserved IP range
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-10-12 14:56:17 +00:00
R4SAS
99d046ca11
[http] handle WebDAV methods
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-10-12 07:31:57 +03:00
orignal
ffa0f0afd9 check network status 2020-10-11 17:51:40 -04:00
orignal
e21dac21c8 fixed #1557. don't try to send empty message 2020-10-11 14:02:12 -04:00
orignal
e2a1cd12c3 don't delete unreachable routers if too few 2020-10-07 21:13:26 -04:00
orignal
d218c9a983 disable ntcpproxy 2020-10-04 10:12:33 -04:00
orignal
c2f13a1496 some cleanup 2020-10-03 22:29:52 -04:00
orignal
faae2709d9 removed NTCP 2020-10-03 21:58:20 -04:00
orignal
a8d23b5439 disable NTCP for good 2020-10-03 18:46:12 -04:00
orignal
8483464aab don't attach our RouterInfo to router's request 2020-10-03 17:20:04 -04:00
orignal
3a2724ec58 single thread for I2CP 2020-10-02 13:13:27 -04:00
orignal
ee84291997 handle i2p.streaming.answerPings properly 2020-09-30 19:06:13 -04:00
orignal
fd9229c467 ping/pong for streaming 2020-09-30 17:12:28 -04:00
orignal
dec7a9a01c shared transient destination between proxies 2020-09-27 20:50:57 -04:00
orignal
335f9394a5 drop gcc 4.7 support 2020-09-26 19:32:19 -04:00
orignal
f939a7b349 reduce variable tunnel build length to 4 2020-09-21 19:22:53 -04:00
orignal
09fdb068d2 Database lookups from ECIES destinations 2020-09-19 21:15:42 -04:00
orignal
024c29b180 eliminate boost/bind 2020-09-17 21:11:46 -04:00
orignal
2b0d1a2190 implement DatabaseLookupTagSet 2020-09-15 19:39:18 -04:00
orignal
d0d71c93af set LeaseSet type to 3 for ratchets if not specified 2020-09-10 19:27:29 -04:00
orignal
da1e52357f delete symmkey on cleanup 2020-09-08 07:46:55 -04:00
orignal
a05a54b38e trim behind ECIESx25519 tags 2020-09-07 18:45:05 -04:00
orignal
954781262c 2.33.0 2020-08-24 12:27:39 -04:00
orignal
3159b06988 reseeds update 2020-08-15 13:53:49 -04:00
orignal
e50abbb250 avoid replay upon SSU packet resend 2020-08-08 19:01:55 -04:00
orignal
8e25226574 use unordered_map for incomplete and sent messages 2020-08-08 13:34:27 -04:00
orignal
9636d82b37 MixHash for SessionConfirmed processing 2020-08-03 18:31:03 -04:00
orignal
c3aa6b9cda use delivery type local if destination is not secified 2020-07-29 17:47:46 -04:00
orignal
c41554109b change datagram routing path if nothing comes back in 10 seconds 2020-07-15 16:20:35 -04:00
orignal
67b94d3533 unordered_map for RouterInfos and LeaseSets 2020-07-07 15:38:20 -04:00
orignal
6f2e6ed887 key for next send ratchet 2020-06-30 15:05:17 -04:00
orignal
5f1e66d64b use pre-calculated x25519 ephemeral keys for ratchets 2020-06-30 13:00:41 -04:00
orignal
1f31fdc257 pre-calculate ephemeral keys for x25519 2020-06-29 20:02:09 -04:00
orignal
df9965e129 use unordered_map for peers 2020-06-29 18:19:31 -04:00
orignal
61e9c31f0d don't hold RouterInfo after successive connect 2020-06-24 11:29:54 -04:00
orignal
a0b35ebd3e mark NTCP2 unreachable routers 2020-06-22 22:32:18 -04:00
orignal
31494267e5 fixed datagram idle crash 2020-06-17 14:24:25 -04:00
orignal
1e609acb03 keep sending through first successive routing path 2020-06-14 11:16:08 -04:00
orignal
69194118df generate random padding length in bulk 2020-06-13 21:24:16 -04:00
orignal
1a39f7e5c6 GarlicRoutingPath per session 2020-06-13 16:18:12 -04:00
orignal
61897ae16c crypto.ratchet.inboundTags 2020-06-12 20:42:54 -04:00
orignal
5993cc857a start new tunnel message if remining is too small 2020-06-12 16:03:12 -04:00
orignal
44bb8f6f16 allocated datagram I2NP from memory pool 2020-06-10 21:19:37 -04:00
orignal
a33cad4b70 eliminate datagram send timer 2020-06-10 11:57:40 -04:00
orignal
f077836bf5 store DatagramSession for bulk 2020-06-09 19:20:24 -04:00
orignal
6d7847f2df send bulk datagrams 2020-06-09 16:26:45 -04:00
orignal
6735b2686b set LeaseSet2 for ECIESx25519 2020-06-05 15:41:30 -04:00
orignal
4ae41513ac save new session with NSR tagset 2020-06-04 18:19:38 -04:00
orignal
438a225487 pass calculatePublic 2020-06-03 19:58:36 -04:00
orignal
e135696530 support multiple encryption keys through the I2CP 2020-06-03 16:05:19 -04:00
R4SAS
9135772f89
2.32.1
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-06-02 19:26:36 +03:00
orignal
0dc212d97c fixed non-updating LeaseSet1 2020-05-28 13:46:02 -04:00
R4SAS
45e8d5c50e
Return deprecated websocket config options for compatibility
Closes #1523

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-05-27 21:29:00 +03:00
orignal
37ec90c436 don't gererate more tags for detached session 2020-05-26 16:47:45 -04:00
orignal
0e0169d22b 2.32.0 2020-05-25 08:37:47 -04:00
orignal
1975adc48f print remote peer for queues 2020-05-24 14:14:16 -04:00
orignal
71564f0d10 set default i2cp.leaseSetEncType=0,4 for http and socks proxy for android 2020-05-24 10:30:00 -04:00
orignal
5a32082624 recreate session after 90 seconds incativity 2020-05-23 15:58:11 -04:00
orignal
86e8614934 allow session restart after 2 minutes from creation 2020-05-23 10:20:22 -04:00
orignal
ead89c767a compress longer RouterInfo 2020-05-22 18:32:44 -04:00
R4SAS
8bae4975fb add copyright headers
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-05-22 18:14:53 +00:00
R4SAS
7a5146ea74 fix code syle(spaces->tabs, tabulations)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-05-22 18:14:53 +00:00
orignal
46ee427ee3 common header for repliable datagrams 2020-05-21 21:54:00 -04:00
orignal
0c2b0081b5 rollback 2020-05-21 19:38:25 -04:00
orignal
f133a7f9fd resend outstading packets again 2020-05-21 18:58:28 -04:00
orignal
153aaa6d21 no compression for RouterInfo gzip 2020-05-21 15:33:12 -04:00
orignal
e5901dad91 resend not more than half of window 2020-05-21 14:52:44 -04:00
orignal
bdd75e1171 build client tunnels through router with version >= 0.9.36 2020-05-20 14:59:18 -04:00
orignal
648d035a0f GzipNoCompression for datagrams 2020-05-19 21:02:32 -04:00
orignal
7ebf2f010c shorter padding for optimal packet length 2020-05-19 19:03:12 -04:00
orignal
3db4421aa7 don't invoke gzip for decompression if no compression 2020-05-19 10:48:23 -04:00
orignal
9fb59e128b resubmit updated LeaseSet if not confirmed 2020-05-18 22:31:36 -04:00
orignal
c7c6e5917a Streaming MTU size 1812 for ECIESX25519AEADRatchet 2020-05-18 20:45:25 -04:00
orignal
7b418b3adf insert whole message to queue 2020-05-18 17:51:45 -04:00
orignal
1c8d662e30 don't add padding for optimal packet size 2020-05-18 16:42:06 -04:00
orignal
d4bfeab36c pass gzip parameter to UDP tunnels 2020-05-18 12:01:13 -04:00
orignal
e1b1032df9 reseeds update 2020-05-18 08:29:09 -04:00
orignal
329439d0ae don't copy datagram payload 2020-05-17 16:49:31 -04:00
orignal
0b1cfb2102 send response to recived datagram from ECIESX25519AEADRatchet session 2020-05-16 19:10:17 -04:00
orignal
23be4c01df CreateLeaseSetClove 2020-05-13 18:09:26 -04:00
orignal
86782f3479 eliminate extra buffer allocation for incoming packets 2020-05-12 18:30:04 -04:00
orignal
a96c205830 allow encryption type param for encrypted LeaseSet 2020-05-08 14:20:13 -04:00
orignal
9b6facf3b0 fixed crash of encrypted leaseset without authentication 2020-05-06 14:08:54 -04:00
orignal
d503190647 fixed crash of encrypted leaseset without authentication 2020-05-06 10:08:01 -04:00
orignal
c4d9c03930 handle termination block 2020-05-05 13:01:23 -04:00
orignal
d7d70b707f configurable throw function 2020-05-05 11:13:59 -04:00
orignal
bb7f03857c ThrowFatal function 2020-05-05 09:35:41 -04:00
orignal
53b43353eb fixed formatting 2020-05-05 08:27:56 -04:00
orignal
b197556447 remove dependency from Win32App 2020-05-05 08:11:01 -04:00
R4SAS
42d4781a96
[windows] add binding exceptions messagebox notifications, update exceptions handling code
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-05-05 02:45:25 +03:00
R4SAS
4d48d35ad7
[SSU] handle socket binding errors
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-05-04 18:12:23 +03:00
orignal
b7ba8f8e93 precalculate initial h and ck 2020-05-03 13:23:08 -04:00
orignal
dff510c181 set best compression for RouterInfo 2020-05-03 09:27:17 -04:00
orignal
1eead0e885 GzipNoCompression witout zlib calls 2020-05-02 21:18:44 -04:00