Commit Graph

211 Commits

Author SHA1 Message Date
Jeff Becker
5228a81bae
more refactor
get rid of C api
2018-08-30 14:48:43 -04:00
Jeff Becker
b122fc59f8
refactor (not done) 2018-08-29 16:40:26 -04:00
Jeff Becker
bb25537fb5
build paths if we have no connected routers to make sessions happen 2018-08-23 11:19:16 -04:00
Jeff Becker
f989996bc7
lol 2018-08-22 12:25:10 -04:00
Jeff Becker
b77525b72d
persist on commit 2018-08-22 12:19:51 -04:00
Jeff Becker
377cc78144
fix crash 2018-08-18 10:01:21 -04:00
Jeff Becker
1a1f93c171
* more tun stuff
* use std::unique_ptr where bare pointers aren't absolutely required
2018-08-17 15:49:58 -04:00
Jeff Becker
1d3e9f6adc
make testnet no longer crash 2018-08-14 17:17:18 -04:00
Jeff Becker
e79708c1dc
hidden services sorta work 2018-08-10 17:34:11 -04:00
Jeff Becker
32d82b5ba5
add more defaults in config with comments 2018-08-09 09:38:44 -04:00
despair86
ae956aff5f This completes the Windows NT Server port of the LokiNetwork components.
Also changed the epoll_wait timeout to 10ms in llarp_epoll_loop::run() to match the other platforms.

-despair86
2018-08-03 04:21:53 -05:00
Jeff Becker
0d2bce2089 fix up win32 specific parts 2018-08-03 09:30:34 +10:00
Jeff Becker
1b20ba6a6c fix dead code, clean up parts. 2018-08-03 09:03:23 +10:00
despair86
bdc54835c2 initial windows server port. Requires Windows 2000 Server or later.
- updated CMake build script
- builds with Microsoft C++ 19.1x. such builds require Windows 8.1 or later
  unless you have the .NET Server 2003-toolset (v141_xp)
- windows port requires a C++17 compiler since cpp17::filesystem is POSIX-only
- HAVE_CXX17_FILESYSTEM manual toggle in CMake. You must manually specify where
  std::[experimental::]filesystem is defined in LDFLAGS or CMAKE_x_LINKER_FLAGS.
- IPv6 support can be added at any time, and the windows sdk still has that
  inline getaddrinfo(3) if it can't find a suitable IPv6 stack.
- inline code for mingw-w64: there's a few bits and pieces still missing simply because
  mingw-w64 derives its windows sdk from wine and reactos, and then writing all the newer
  stuff into it by hand straight from the MSDN manpages.
- misc. C++11 stuff (nullptr and friends)
- Internal file handling code takes UTF-8 or plain 8-bit text, NTFS is UTF-16, so
  std::filesystem::path::c_str() is wchar_t. That's no good unless you first
  call std::filesystem::path::string().
- implemented getifaddrs(3) and if_nametoindex(3) on top of GetAdapters[Info|Addresses](2).
- updated readme with new info

BONUS: may implement Solaris/illumos IOCP someday...

-despair86
2018-08-01 23:41:02 -05:00
Jeff Becker
7622f6cef1 dht tweaks 2018-08-02 14:34:46 +10:00
Jeff Becker
d511057b7d * logging updates
* nicknames in RC (yw kee)

* spec update

* more hidden service code
2018-08-02 10:48:43 +10:00
Jeff Becker
928ec3790d deterministic logging 2018-07-31 08:35:54 +10:00
Jeff Becker
058ce4fae3 don't put private addresses into rc EVER 2018-07-30 15:58:20 +10:00
Jeff Becker
48cfdab63c get rid of wizard and autogenerate configs if not present with sane defaults 2018-07-27 10:21:57 +10:00
Jeff Becker
976ca3015c move iwp server to own source file 2018-07-27 08:06:11 +10:00
Ryan Tharp
554834425d important note, as I have relays that are outbound only 2018-07-26 03:21:51 -07:00
Jeff Becker
7cec96901d update build logic for clients 2018-07-25 11:39:12 +10:00
Jeff Becker
ee54149465 when building paths only use nodes we are directly connected to for first hops. 2018-07-25 11:36:22 +10:00
Jeff Becker
17ad12cd2c * don't heap allocate llarp_rc
* store rc into network database cache on connect
2018-07-25 11:24:37 +10:00
Jeff Becker
98e992e28f backport 2018-07-24 16:31:25 +10:00
Jeff Becker
40dc125b17 another backport 2018-07-24 16:22:03 +10:00
Jeff Becker
02ca1796b2 all the files 2018-07-20 14:50:28 +10:00
Jeff Becker
6945fe53a5 more also run make format 2018-07-17 14:37:50 +10:00
Jeff Becker
0242e293c9 more 2018-07-16 13:32:13 +10:00
Jeff Becker
a68cfefaa6
make it compile and run make format 2018-07-13 09:36:51 -04:00
Ryan Tharp
0750befddc skip private interfaces if no public-address et 2018-07-13 06:13:04 -07:00
Ryan Tharp
a3d791e516 update logging to new format 2018-07-13 09:28:50 +00:00
Ryan Tharp
cfb69224b5 Merge branch 'master' of https://github.com/neuroscr/loki-network 2018-07-13 07:54:27 +00:00
Jeff Becker
5bbaae4e2e
more 2018-07-12 14:21:44 -04:00
Jeff Becker
bae4f746be
publish hidden service descriptors and acknoledge publish 2018-07-11 12:11:19 -04:00
Jeff Becker
6ad79b97dc
broken 2018-07-09 13:32:11 -04:00
Jeff Becker
dfa567e816
Merge remote-tracking branch 'sachaaaa/refactor' into hidden-service-dht 2018-07-09 10:24:44 -04:00
sachaaaaa
61bb7905f0 fix method calls in server.cpp + use ctor instead of factory/allocator
to squash
2018-07-09 15:01:30 +10:00
sachaaaaa
661f050636 Fix includes/forward declarations 2018-07-09 15:01:30 +10:00
sachaaaaa
c7940076bf Remove most of the extern "C"
remove extern "C"
2018-07-09 14:34:09 +10:00
Ryan Tharp
840a50abbc don't skip private interfaces quite yet/we need them for NAT to work correctly, try_connect refactor clean up 2018-07-08 06:28:10 -07:00
Jeff Becker
21a2ffdeaf
* refactor log functions
* add more stuff for hidden service dht
2018-07-05 11:44:06 -04:00
Ryan Tharp
938cfec657 Revert "resolve_job_type() and on_verify_client_rc() clean u"
This reverts commit 9805cc153f.
2018-07-04 14:01:32 -07:00
Ryan Tharp
9805cc153f resolve_job_type() and on_verify_client_rc() clean u 2018-07-04 05:09:18 -07:00
Jeff Becker
cc23d8ddbd
format 2018-07-03 09:34:53 -04:00
Jeff Becker
2b8cd93d6a
make it compile :^) 2018-07-03 09:34:46 -04:00
Jeff Becker
ab509e0a13
try not to crash 2018-07-03 09:33:37 -04:00
Jeff Becker
4ca34995bf
add inbound server connections to DHT 2018-07-03 09:13:56 -04:00
Jeff Becker
8cfcc101b4
* path latency ticks every 5s
* retransmit xmit if we haven't gotten an ack yet (IWP)
2018-06-29 12:02:39 -04:00
Jeff Becker
9c57be0301
look up remote not self 2018-06-29 10:43:06 -04:00
Jeff Becker
7d9bffdf9c
make format 2018-06-29 08:15:15 -04:00
Ryan Tharp
0af33b4205
Merge pull request #3 from neuroscr/master
vendor libtuntap, set log level c api, codel fixes, private network detection, nat address override, --locate and --localInfo utils
2018-06-28 21:10:11 -07:00
Jeff Becker
eeb9c9e5b4
do correct dht lookup 2018-06-28 11:10:25 -04:00
Ryan Tharp
0cc0c8f476 better public override detection 2018-06-28 04:59:50 -07:00
Ryan Tharp
d5a89b91b3 clean up debug, detect override better 2018-06-28 04:50:01 -07:00
Ryan Tharp
b93943ab32 support for public-address/public-port overrides for NAT, decrease min paths to 3, add debugging 2018-06-28 04:29:10 -07:00
Ryan Tharp
07f0653e83 Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-28 08:20:19 +00:00
Jeff Becker
92d1f50203
make path latency tests work 2018-06-26 12:23:43 -04:00
Jeff Becker
6633fb151d
make it work 2018-06-26 09:39:29 -04:00
Ryan Tharp
ede0cb4772 Merge branch 'master' of https://github.com/neuroscr/loki-network 2018-06-26 10:08:51 +00:00
Jeff Becker
da22f306e0
* add path building management
* fix bug in iwp that caused crash
2018-06-25 11:12:08 -04:00
Ryan Tharp
16f7de99e4 disable llarp_nodedb_async_load_rc 2018-06-23 07:55:25 -07:00
Ryan Tharp
deb97fda3f Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-23 11:28:37 +00:00
Jeff
65233617ac fix macos build 2018-06-22 16:13:56 -04:00
Ryan Tharp
9dff277a7e Merge branch 'master' of https://github.com/majestrate/llarp
(upstream repo was broken)
2018-06-22 05:42:50 +00:00
Jeff Becker
39c63432be
ALMOST got path building working 2018-06-21 20:25:30 -04:00
Jeff Becker
50402820e1
more 2018-06-21 11:46:35 -04:00
Jeff Becker
9b73be11cc
fix up dht a bit 2018-06-21 10:20:14 -04:00
Ryan Tharp
4b0c1b35eb proper merge of resolved conflicts 2018-06-21 13:33:42 +00:00
Ryan Tharp
c4dd8f4a29 Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-21 13:26:46 +00:00
Ryan Tharp
8b9652dae3 fix git 2018-06-21 06:06:13 -07:00
Jeff Becker
a2d9dc1d93
it does stuff :+DDDDD 2018-06-21 08:55:02 -04:00
Ryan Tharp
f3f68e4bcb llarp_findOrCreateEncryption refactor, llarp_rc_set_pubkey(), llarp_rc_set_pubenckey(), llarp_rc_set_pubsigkey(), include more debug on sig verify failure 2018-06-21 05:52:45 -07:00
Ryan Tharp
5bb70c6ddb llvm 3.8 compile fixes 2018-06-21 02:31:53 -07:00
Ryan Tharp
fe3bc37c8c Merge branch 'master' of https://github.com/neuroscr/loki-network 2018-06-21 09:26:14 +00:00
Jeff Becker
44e34f81e8
tweaks to testnet 2018-06-20 13:45:44 -04:00
Jeff Becker
78f3ca0155
more 2018-06-20 08:34:48 -04:00
Jeff Becker
f68ffbc33d
more path building stuff 2018-06-19 13:11:24 -04:00
Ryan Tharp
fa82d6258c llarp_rc_read() 2018-06-19 02:43:18 -07:00
Jeff Becker
aa251cdd01
make format 2018-06-18 18:05:02 -04:00
Jeff Becker
08c0318e82
initial path building stuff (broken) 2018-06-18 18:03:50 -04:00
Jeff Becker
53eb3d0a59
default to c++11 2018-06-14 15:22:26 -04:00
Jeff Becker
0d85577fac
exponential backoff 2018-06-14 13:35:12 -04:00
Jeff Becker
d645c07290
fix up dht 2018-06-14 11:39:54 -04:00
Jeff Becker
6e5ebd62bf
do dht lookup for unknown routers 2018-06-14 11:10:31 -04:00
Jeff Becker
ccf8574c03
make unit tests work 2018-06-14 10:04:42 -04:00
Jeff Becker
d5fe7623fc
more dht stuff 2018-06-13 12:32:34 -04:00
Jeff Becker
09d6a46cad
correct encoding of aligned buffer 2018-06-13 09:18:18 -04:00
Jeff Becker
10ddc3da8a
async load rc 2018-06-13 08:58:51 -04:00
Ryan Tharp
d8329b9955 Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-13 11:53:18 +00:00
Ryan Tharp
087f4c2f02 clean up llarp_nodedb_async_verify api, make setRC save to correct path 2018-06-13 04:40:49 -07:00
Jeff Becker
0d9025bc7d
Merge remote-tracking branch 'ryan/master' into dev 2018-06-13 07:31:34 -04:00
Ryan Tharp
1cf247e36e Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-12 21:53:55 +00:00
Jeff Becker
a8ab66f4f8
refactor to use AlignedBuffer for public key, shared secret, nonce, secret key etc 2018-06-12 07:57:14 -04:00
Jeff Becker
ec53cab169
more onion routing stuff 2018-06-10 10:05:48 -04:00
Jeff Becker
315798a0c4
* loopback test network
* fix various crashes and race conditions

* rename iwp-connect to connect in config

* rename iwp-links to bind in config

* always make a link just for outbound sessions even if no bind section is provided
2018-06-07 12:22:49 -04:00
Ryan Tharp
70579e6846 finish implementing llarp_nodedb_async_verify, move context inside llarp_async_verify_rc 2018-06-07 02:36:30 -07:00
Ryan Tharp
7b8ef635e4 Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-07 06:49:57 +00:00
Jeff Becker
a0f1d548f8
more shadow stuff 2018-06-06 17:23:57 -04:00
Jeff Becker
90611731a5
initial shadow test net 2018-06-06 13:02:57 -04:00