Commit Graph

58 Commits

Author SHA1 Message Date
b2e54236d7 fix up go module 2024-11-13 14:39:08 -05:00
7b1b6d431a Fix up import paths 2024-11-09 11:54:18 -05:00
idk
0891cbffe0 bump for release 2022-11-18 00:04:49 -05:00
idk
cfdb60d932 work on datagram support. add the ability to get the private keys from the client. 2022-06-02 23:56:49 -04:00
idk
40ad754b47 Add support for AUTH commands 2022-04-28 11:23:54 -04:00
idk
ca305ba46c switch to externalized i2pkeys library 2022-03-10 00:54:43 -05:00
idk
25eb54b2bc remove reliance on real sam3 library for compatibility, same pattern is available in goSam now, but the better solution long-term is to move i2pkeys out of sam3 since it no longer requires a real SAM connection for anything 2022-03-09 17:46:44 -05:00
idk
a2fcfb8bc1 Fix issue where the control socket should not be used as a streamsession 2022-02-02 00:40:01 -05:00
idk
0623ed8a79 Fix issue where the control socket should not be used as a streamsession 2022-02-01 23:27:28 -05:00
idk
964219c25f Disable datagram support in the dialer function until it's ready, so I can cut a release tonight. 2022-02-01 21:50:35 -05:00
idk
c6d9c0e340 protect the dialer with a mutex 2021-04-15 19:16:11 -04:00
idk
e278de3a66 Fix a bunch of errors that could potentially happen because of changes I made to the Dialer 2021-04-15 17:21:41 -04:00
idk
5af3086205 Add session creation commands for datagrams and raw sessions, stub out a repliable datagram dialer, add a DatagramConn interface that implements both net.Conn and net.PacketConn so that Dial can return a whole DatagramConn 2021-02-24 23:04:55 -05:00
idk
646767e7bf Allow clients to force a handshake at a specific SAM version or between SAM versions 2020-12-07 00:51:51 -05:00
idk
76e1e9af83 Dial/Hangup Hack. If the connection is closed because of an error, re-dial it from within the dial function itself by incrementing the ID and creating a new session on top of the old one. 2020-12-05 16:36:19 -05:00
idk
63833f24ab Improve the parser, automatically set empty destinations to TRANSIENT when using a dialer, better error handling, when a socket gets closed, increment the ID and re-create it 2020-11-29 16:12:35 -05:00
idk
0d10b5b516 Improve the parser, automatically set empty destinations to TRANSIENT when using a dialer, better error handling, when a socket gets closed, increment the ID and re-create it 2020-11-29 16:09:55 -05:00
idk
3c5397e87f Fix session ID issue, we only need a new session when we really need a new session, i.e. give people a way to ask for it instead of trying to guess 2020-11-22 12:31:20 -05:00
idk
a516752491 add resolve function compatible with SOCKS proxies 2020-09-13 01:32:22 -04:00
idk
4c81f5f7a0 fix mistaken identity issue with listeners 2020-09-03 21:51:25 -04:00
idk
a13b920f05 fix mistaken identity issue with listeners 2020-09-03 21:49:16 -04:00
idk
ac54a46ded Use dual keys by default 2020-09-03 16:19:12 -04:00
idk
eabd2d94f6 Protext non-context-aware dialer with a mutex 2020-08-25 10:27:40 -04:00
idk
00969e92f7 update release 2020-01-16 15:16:08 -05:00
idk
0b74205adf start updating it 2019-12-08 16:57:51 -05:00
idk
27e7865789 fix debug import path and update module 2019-08-14 15:56:58 -04:00
idk
d8c0f81c78 chance accept/listen stuff 2019-07-05 03:10:01 -04:00
idk
291b43dd4b it can't have a destination until one is filled 2019-07-03 22:09:29 -04:00
idk
00cba613a1 fix base32 calculation 2019-05-16 18:56:59 -04:00
idk
6e0cf375b3 fix base32 calculation 2019-05-16 18:56:33 -04:00
idk
c9b61b818e add ability to query tnnel id 2019-04-25 23:45:24 -04:00
idk
f794cd513f make it easy to get the addresses of the gosam tunnels 2019-04-20 23:30:15 -04:00
idk
6f94d156ec make it easy to get the addresses of the gosam tunnels 2019-04-20 23:29:29 -04:00
idk
6ebe813d0e make it easy to get the addresses of the gosam tunnels 2019-04-20 23:27:47 -04:00
idk
4694834222 FROM_PORT and TO_PORT support 2019-03-28 00:21:04 -04:00
idk
4b77bc4d02 fix excessive destination creation 2019-03-14 22:46:17 -04:00
idk
49533844d6 incorporate cryptix-debug without the counter 2019-02-28 14:22:28 -05:00
idk
cc91ed6bf0 remove 'commented-out' id 2019-02-27 22:04:04 -05:00
idk
5ffafcd28d explicitly et invalid initial lastaddr 2019-02-27 22:00:35 -05:00
idk
4778044200 correct CONTRIBUTING.md 2019-02-27 20:46:18 -05:00
idk
d7af8dafa9 make dialer context aware and avoid redundant session create's 2019-02-27 20:25:36 -05:00
idk
56cc5bd017 Don't check version if handshake succeeds, just accept that OK is OK 2019-02-26 23:10:10 -05:00
idk
a537690baa add signature type support 2019-02-24 23:08:01 -05:00
idk
c69106a879 add gzip 2019-02-21 17:38:11 -05:00
a05f2d68df send options before newline
according to SAM Connection Handshake[1] these options are not part of
the `HELLO VERSION ..` exchange. only later during session creates etc

[1] - https://geti2p.net/en/docs/api/samv3

in any case these wouldn't be send after the newline
2018-08-21 16:23:15 +02:00
idk
89742a3ec4 added reduce-on-idle and close-on-idle options (closes #9) 2018-08-21 16:21:48 +02:00
idk
702cc4d699 Configurable host:port (#7)
* replyParser had a bug where, when a base64 address ended with '==', the key-value pairs would break. I worked around the issue by switching '==' it with a non-base64 character before the split, and back after.

* switch to strings.SplitN and apply gofmt, add test

* I don't know exactly why, but checking that the kvPair in replyParser.go is not nil fixes the crash on image-heavy sites.

* added new configuration options for host, port, address, and debugging

* Fix commit history

* added tunnel length control features

* added tunnel length control defaults

* added length variance feature

* added tunnel quantity option

* added backup tunnel quantity option

* added leaseset configuration options

* gofmt

* add new options to session establishment commands & gofmt

* Reference the change to the debug global in the httpTest.go example

* Switch to less than or equal to 16 tunnels at a time.

* add in the comments I forgot to do.

* add in the comments I forgot to do.

* Improved formatting with linter.

* Improved formatting with linter.

* Ditch interfaces in the functional arguments, instead use different functions for the string and int-based variations.

* Fixed broken option

* added in missing formatting directive.

* change addr to host in client so names are consistent.

* change TestClientLookupInvalid back.
2018-07-16 08:49:03 +02:00
622c39b6a5 spring cleaning 2015-03-25 22:03:05 +01:00
6b9621e160 cleaned up debug logging 2015-03-25 21:37:41 +01:00
8badb1ef70 small cleanup after playing with i2pd in c++ 2014-10-31 10:52:33 +01:00