Commit graph

157 commits

Author SHA1 Message Date
orignal df073bb306 send local address in RelayResponse block 2022-08-04 15:15:19 -04:00
orignal 771c4a0d02 allocate smaller I2NP buffer for fragmented message. Limit number of fragments by 64 2022-08-03 16:06:07 -04:00
orignal cb959ab14c allocate tunnel message buffer for I2NP block with tunnel data message type 2022-08-03 10:26:55 -04:00
orignal ed5c533982 recgnize symmetric NAT from SSU2 2022-08-02 20:02:55 -04:00
orignal 98d2ce5845 Respond to path challenge. Correct termination reason for duplicated session 2022-08-02 13:35:18 -04:00
orignal eba4626589 kappa for RTO culculation 2022-07-31 09:45:18 -04:00
orignal ff5fa1d137 3 bytes off for token in RelayResponse 2022-07-30 18:50:43 -04:00
orignal 71766ecd16 select introducers randomly. More logging for RelayIntro 2022-07-30 16:31:44 -04:00
orignal 3bd40fc8b3 calculate RTT and RTO 2022-07-29 15:24:24 -04:00
orignal e70d57dcb4 resend intervals in milliseconds 2022-07-28 19:30:08 -04:00
orignal fd41fba069 variable retranmission window 2022-07-27 20:00:03 -04:00
orignal 8a6fe0f321 check if address type matches peer's address type for peer test msg 1 2022-07-27 10:55:08 -04:00
orignal 4b1f5c9c9b terminate session in separate task 2022-07-26 19:56:30 -04:00
orignal 46a549c875 random size of fragments 2022-07-26 13:00:41 -04:00
orignal f8a609f692 respond to termination 2022-07-25 18:46:25 -04:00
orignal e537878b8a check Ack block bufer size and shrink ranges if necessary 2022-07-25 13:42:59 -04:00
orignal 617f45bc59 try to send I2NP message in one packet, reduce or drop Ack block if necessary 2022-07-24 19:44:49 -04:00
orignal 09aa96e486 always bring to closing state if termination requested 2022-07-23 19:48:37 -04:00
orignal ea0ed9e844 update SSU2 introducers if Firewalled 2022-07-20 21:55:48 -04:00
orignal 000e0358a7 resend SessionConfirmed immediately if another SessionCreated received 2022-07-19 16:09:16 -04:00
orignal a3e19931f0 insert RouterInfo from SessionConfirmed into netdb immediately 2022-07-19 14:06:00 -04:00
orignal 9fec1a86cf send ack for peer test 2022-07-18 19:58:19 -04:00
orignal ffab29890b created additional ranges if acnt > 255 2022-07-17 15:22:41 -04:00
orignal 206c068d8e don't send termination without address 2022-07-17 07:44:11 -04:00
orignal dc30cd1112 handle SessionConfirmed fragments in reversed order 2022-07-16 16:08:55 -04:00
orignal 16290bf66f fixed race condition on session termination 2022-07-15 18:22:18 -04:00
orignal 4f8b0e6484 send more SessionConfirmed termination messages. Limit send queue 2022-07-15 15:01:46 -04:00
orignal 5026dbc1b3 receive bigger packets 2022-07-14 20:12:27 -04:00
orignal 665a914dc3 set max MTU for ipv4 2022-07-13 20:08:57 -04:00
orignal 3394bb4b8d calculate SSU2 session MTU and max payload size 2022-07-13 19:35:18 -04:00
orignal 5c62726992 check clock skew and terminate 2022-07-13 12:45:20 -04:00
orignal 90981f628e Send fragmented SessionConfirmed 2022-07-12 19:04:03 -04:00
orignal 0c34189d94 correct buffer size for fragments of SessionConfirmed 2022-07-12 12:17:58 -04:00
orignal f1d3d6a7b5 set max compression for SessionConfirmed 2022-07-12 10:50:21 -04:00
orignal b0d962b49a send ack for retransmitted SessionConfirmed 2022-07-11 19:00:23 -04:00
orignal c50e453af6 check out of sequence messages range 2022-07-11 18:16:05 -04:00
orignal 8b649aaaf8 NACKs and Acks only Ack ranges 2022-07-10 18:50:02 -04:00
orignal fdebbc4498 select sessions for introducers 2022-07-10 17:13:25 -04:00
orignal 3ff3417ff2 send termiation with reason 2022-07-09 17:05:23 -04:00
orignal bb6227281a teminate session after 5 unacked resends 2022-07-08 21:31:44 -04:00
orignal 2f44d99a74 session closing state 2022-07-08 19:06:09 -04:00
orignal ca4414d15a request relay tag if firewalled 2022-07-08 13:52:09 -04:00
orignal fbb961b43c extract correct endpoint from peer test msg 2 2022-07-07 13:23:51 -04:00
orignal fa9c174264 handle first packet from Bob 2022-07-06 21:28:53 -04:00
orignal 83f43ab166 pick 3 routers for SSU2 peer test 2022-07-06 19:33:02 -04:00
orignal f7e9e6a1c4 set status OK after both peer test msg 4 and 5 2022-07-06 13:35:04 -04:00
orignal aa21748e9a set status OK after peer test msg 5 2022-07-06 12:41:51 -04:00
orignal 66bc29d075 insert received RouterInfo into netdb immediately 2022-07-05 19:15:50 -04:00
orignal 0e6ad548b2 invoke SSU2 peer test updates 2022-07-04 18:54:20 -04:00
orignal 6143515ac6 update our IP adress from SSU2 2022-07-03 09:31:20 -04:00
orignal 50419f200d fixed 1 packet off for out of sequence clean up 2022-07-01 17:35:38 -04:00
orignal 455390f121 clean up first out of sequence packet if too many 2022-07-01 10:52:10 -04:00
orignal d375299fa9 send token in relay response block 2022-06-30 20:00:18 -04:00
orignal 6ca9a599ff remove session after HolePunch received 2022-06-30 08:37:50 -04:00
orignal 83bd3b6f0b use token from RelayResponse block 2022-06-29 13:42:57 -04:00
orignal a68765e021 fixed off 5 bytes for follow on fragment 2022-06-29 08:30:11 -04:00
orignal 5e3115a614 check nonce in HolePunch relay response block 2022-06-28 18:51:31 -04:00
orignal 624c46f925 correct msg offset for follow-on fragment 2022-06-28 16:09:13 -04:00
orignal 52d1ee161f store RouterInfo in netdb from SessionConfirmed 2022-06-28 10:35:35 -04:00
orignal d3bc9eb110 update token and conn id after HolePunch 2022-06-27 23:03:27 -04:00
orignal 72b61a29c2 check TokenRequest message size 2022-06-27 15:56:47 -04:00
orignal 463ed12ce8 don't pick same session for PeerTest msg 2 2022-06-26 10:07:39 -04:00
orignal baf74cb582 1 byte off for RelayRequest signature 2022-06-26 09:53:29 -04:00
orignal d7d74666b2 correct max MTU size 2022-06-25 18:51:24 -04:00
orignal dd1dd3b7cf wait for Ack for SessionConfirmed or resend 2022-06-24 22:06:30 -04:00
orignal ae77d4ad22 correct signed content for peer test msg 3 2022-06-24 18:18:11 -04:00
orignal 821987fed7 don't send peer test for unknown address/port 2022-06-24 15:31:08 -04:00
orignal 18ddba4332 send RouterInfo message to right session in relay request 2022-06-24 14:08:39 -04:00
orignal aaad6dece6 set session request sent status in right place 2022-06-24 13:27:13 -04:00
orignal ed04747b9d resend SessionRequest and SessionCreated 2022-06-24 13:07:02 -04:00
orignal 38e43bc9c8 check Charlie's address for PeerTest msg 4 2022-06-23 08:18:35 -04:00
orignal c3c5c7ae63 forward correct RelayResponse from Charlie to Alice 2022-06-22 16:56:54 -04:00
orignal 578a15bbe5 don't send PeerTest msg 5 if address is not supported 2022-06-22 15:26:23 -04:00
orignal 6b3d7372ae token received session state 2022-06-22 13:58:22 -04:00
orignal 55f7529167 delete pending outgoind session when Retry received 2022-06-22 13:36:01 -04:00
orignal bceae244c1 delete pending outgoind session when SessionCreated received 2022-06-22 13:15:25 -04:00
orignal 5de224d6bf don't connect if pending connection already 2022-06-22 11:59:29 -04:00
orignal 694b936f30 verify signature for PeerTest msg 4 2022-06-21 18:54:13 -04:00
orignal dda25d431c check if we can send HolePunch to partcular address 2022-06-21 16:20:39 -04:00
orignal 22f9abc2f1 send errors for RelayIntro 2022-06-21 15:45:35 -04:00
orignal c6c3de9164 fixed PeerTest signature verification 2022-06-21 14:46:59 -04:00
orignal 58186f0283 handle PeerTest msg 4 if msg 5 was received before 2022-06-21 12:09:58 -04:00
orignal 0253e2d3f6 different nonce location for PeerTest msg 2 and 4 2022-06-21 09:51:49 -04:00
orignal ee20d5b804 sign data for PeerTest msg 3 and 5 2022-06-21 08:12:41 -04:00
orignal b8bc114502 correct source connection id for HolePunch 2022-06-20 15:52:16 -04:00
orignal 74d29770e1 handle unexpected PeerTest message 2022-06-20 13:14:02 -04:00
orignal e4d5788cdc correct endianess for PeerTest mesaage connection id 2022-06-20 08:16:50 -04:00
orignal 2a5cf3e4a8 SSU2 connect timer 2022-06-19 16:40:03 -04:00
orignal 5bb20cb039 token expiration threshold 2022-06-19 08:52:47 -04:00
orignal dd602a27b5 send RelayResponse rejection message 2022-06-17 19:55:58 -04:00
orignal b15bfd99b3 correct layout for peer test masg 2 and 4 2022-06-17 08:34:40 -04:00
orignal 67252b90b3 generate new token with longer expiration time 2022-06-16 22:37:33 -04:00
orignal 079f7e515c correct hangling of Ack ranges 2022-06-16 14:13:28 -04:00
orignal e8c58270c4 Populate router's buffer before sending RouterInfo block 2022-06-15 13:10:49 -04:00
orignal 0c64f278d7 1 byte off for ranges in Ack block 2022-06-14 13:02:39 -04:00
orignal 03518ec94f fixed typo 2022-06-14 08:42:01 -04:00
orignal 93b5dc2dff send new token block in SessionCreated 2022-06-13 17:55:41 -04:00
orignal 3bef6383d9 send update local RouterInfo 2022-06-13 14:02:36 -04:00
orignal b678c989e2 fixed typo 2022-06-12 17:26:19 -04:00
orignal b72d1237d2 correct values for last ack range 2022-06-12 16:54:02 -04:00