Jeff Becker
7027ba2cf1
more agressive network exploration
...
add install target for makefile
6 years ago
Jeff Becker
dd6a8360ba
don't tick in kqueue if closed
6 years ago
Jeff Becker
2bd7f2101d
remove logging
6 years ago
Jeff Becker
7f3465022d
check for null session
6 years ago
Jeff Becker
39401dac42
don't use vendored director iterator
6 years ago
Jeff Becker
f5b8d552e1
path peer profiling
...
propagate introsets better
6 years ago
Jeff Becker
354df88367
more ip endpoint fixes
...
spam dht with lookups less
6 years ago
Jeff Becker
ffdff3e09c
mark successful connections in profiling
...
don't dht lookup bad routers
6 years ago
Jeff Becker
6986f04418
basic router profiling and fix ip rewrite
6 years ago
Jeff Becker
76e87aa608
more debug logging
...
timed out paths are not expired
6 years ago
Jeff Becker
f55c5e674d
relax timeouts
6 years ago
Jeff Becker
3af51cbe55
add path latency minimum checker
...
add min-latency option to hidden service config
6 years ago
Jeff Becker
c0afc97d41
better explore logic
6 years ago
Jeff Becker
832b24ba93
delete don't abort when building paths failed to key exchange
...
try making dht less talky
check timestamps on intros
6 years ago
Jeff Becker
0c1dfa4a27
check nodedb for routers not just dht peer list
6 years ago
Jeff Becker
b947e55616
fix leak on sign/encrypt fail
6 years ago
Jeff Becker
b56d25730e
improve send rate
6 years ago
Jeff Becker
6f4e998910
fix previous commit
6 years ago
Jeff Becker
3d424b57a7
client side endpoint improvements
6 years ago
Jeff Becker
ac2c14437f
god damnit
6 years ago
Jeff Becker
956549c818
connect to 10 random routers on startup
6 years ago
Jeff Becker
1c849973ca
send data discarded messages
6 years ago
Jeff Becker
a9b259985e
add data discarded message in routing layer to indicate
...
a path no longer exists.
6 years ago
Jeff Becker
baf2e1fb3c
client improvements
...
for real do correct timestamp comparison for introsets
6 years ago
Jeff Becker
2993e834a0
fix ip stuff
6 years ago
Jeff Becker
320fbdf3bc
always traffic
6 years ago
Jeff Becker
2eca0005c1
fix up more stuff
6 years ago
Jeff Becker
c3a7f64344
expire introsets correctly and allow multiple tun if
6 years ago
Jeff Becker
b96887ddb2
various fixes and tweaks
6 years ago
Jeff Becker
1952ece99d
more logging
6 years ago
Jeff Becker
cb2802e003
fix segfault on quit
6 years ago
Jeff Becker
1df9a4b078
persist RC from lookups in nodedb
6 years ago
Jeff Becker
96526058b2
update readme and make dht bootstrap work with low peer count
6 years ago
Jeff Becker
b23dab09fb
don't overwrite our RC, hide parameter.
6 years ago
Jeff Becker
0f97494998
fug
6 years ago
Jeff Becker
751b86d8c3
forgot a change
6 years ago
Jeff Becker
adbf53bc40
protocol docs, more efficient padding, make code reflect protocol changes.
6 years ago
Jeff Becker
ec143e11a4
explore via 1 router
6 years ago
Jeff Becker
48e30f5492
actually fix compile error for windows
6 years ago
Jeff Becker
c43a075b74
force number of workers in threadpool
6 years ago
Jeff Becker
bfb00bb7bd
utp fixes
6 years ago
Jeff Becker
4b3a113397
mostly works
6 years ago
Jeff Becker
5dfcd60df1
more
6 years ago
Jeff Becker
6ef89ea8b2
un break (kinda)
6 years ago
Jeff Becker
60d5277351
broken
6 years ago
Ryan Tharp
742a0b8da7
Merge branch 'master' of https://github.com/loki-project/loki-network
6 years ago
Jeff Becker
ba648868c4
more
6 years ago
Jeff Becker
2a8fc53ca6
make it compile
6 years ago
Jeff Becker
085563ac2f
implement utp link protocol
...
gut curvecp for now
6 years ago
Jeff Becker
1839da9c3c
add bencode file helpers and move link server functions into source file
6 years ago
Jeff Becker
a8b672a19f
make it compile
6 years ago
Jeff Becker
ce1290d327
add more members to llarp::Addr
6 years ago
Jeff Becker
c3c388b6aa
remove iwp and start on curvecp
...
does not compile
6 years ago
Jeff Becker
74b713870b
use const
...
always use outbound links
6 years ago
Jeff Becker
b362784581
redo codel to do as few allocations as possible
6 years ago
Jeff Becker
8bae1a4735
move codel off of pointer types
6 years ago
Jeff Becker
4e693a2414
make signatures work again ;~;
6 years ago
Jeff Becker
973f86c900
it compiles
6 years ago
Jeff Becker
5228a81bae
more refactor
...
get rid of C api
6 years ago
Jeff Becker
b122fc59f8
refactor (not done)
6 years ago
Jeff Becker
199dad09dd
* kill dht feedback loop
...
* add dht exploration for discovering new routers
* tweak loopback testnet paramters to not be initially fully connected
6 years ago
Jeff Becker
cf0aa2da24
forgot files
6 years ago
Jeff Becker
d3eef5c8b7
more netns code
6 years ago
Jeff Becker
bee5eee0b1
fix skiplist placement
6 years ago
Jeff Becker
3588580c1a
Merge branch 'master' of ssh://github.com/loki-project/loki-network
6 years ago
Jeff Becker
435fba25fd
add parts to rcutil to print out info about RCs: ./rcutil -V self.signed
6 years ago
Ryan Tharp
c8a613eec6
deconflict saddr
6 years ago
Ryan Tharp
8724ddd792
Merge branch 'master' of https://github.com/loki-project/loki-network
6 years ago
despair86
e71c00f736
header fix
6 years ago
despair86
258c2a12dc
i blame clang-format
6 years ago
despair86
79c992a9be
Microsoft libc6.x and libc7.x do not have C99 printf semantics, mingw-w64 handles this inline
6 years ago
despair86
23ecd03c71
win32 native threading vs pthreads on mingw-w64
...
also, msc++ implements all of C++17
6 years ago
despair86
3ccb425021
hmm this may work on BSD unix...
6 years ago
Ricardo Villegas
3cca107041
more header fixes
...
-despair86
6 years ago
despair86
9b73b013ce
run-time assertion in ms c: make sure that CPP macro and local variable `LOOPS == loops`
6 years ago
Jeff
7af9ed0f70
Merge branch 'master' of ssh://github.com/loki-project/loki-network
6 years ago
Jeff
367258551b
fix osx build
6 years ago
Jeff Becker
ba12f3e5e2
prevent crash?
6 years ago
Jeff Becker
3625313304
clear pending dht tx
6 years ago
Jeff Becker
bb25537fb5
build paths if we have no connected routers to make sessions happen
6 years ago
Jeff Becker
4e3acd0277
persist sessions between routers
6 years ago
Jeff Becker
51029f0f2f
make loopback testnet work again
6 years ago
Jeff Becker
885fb3cd97
revert back to priority queue for codel
6 years ago
Jeff Becker
f989996bc7
lol
6 years ago
Jeff Becker
b77525b72d
persist on commit
6 years ago
Jeff Becker
b7039f6e5c
more tun stuff
6 years ago
Jeff Becker
a2f4c3e3bb
add more autogenerate config lines
6 years ago
Jeff Becker
dbac1334e0
disable promises in win32
6 years ago
Jeff Becker
4e2f0ccbf8
* add ProcessIf in CoDel queue to requeue unprocessed items
...
* more tun code
* make event loop tick and write with tun
6 years ago
Jeff Becker
4aebbda640
more tun stuff
6 years ago
despair86
c24a73f756
ran the linter on new code
6 years ago
despair86
db1989c848
new named thread API on win32
6 years ago
despair86
961a4b1d3c
eww, merge conflicts
6 years ago
Ricardo Villegas
43760dee2e
more sun patches, plus a note to port solaris tuntap after
...
doing the windows port of same
6 years ago
despair86
8c1b2c3b79
win32 fluff
...
more win32 on msc++ fluff
and a solaris patch that i may revert later if the cpp directives aren't processed correctly
-despair86
6 years ago
despair86
9ad93a0893
sunos patches, avoid shadowing data members in derived classes, header fixes
...
SunOS build works, with a few issues:
- no tuntap debugging on Solaris? (TUNSDEBUG ioctl missing)
- regular socket ioctls are not pulled in with #include <sys/ioctl.h>
even though they're included at the bottom of same (filio.h,
sockio.h)
- no named threads in any libre fork of solaris
-despair86 (rick)
sun patch
6 years ago
despair86
72c2231caf
this works apparently
6 years ago
despair86
556bc2b740
these headers need to be in a specific order
...
because the winsock sdk does weird shit
6 years ago
despair86
5f47b335a4
now matches the other platform behaviour, namely, that as long as the event-based queue file descriptor is valid, so is the event loop itself
6 years ago
Jeff Becker
4ab9f72415
backport for gcc 5
6 years ago
Jeff Becker
377cc78144
fix crash
6 years ago
Jeff Becker
1a1f93c171
* more tun stuff
...
* use std::unique_ptr where bare pointers aren't absolutely required
6 years ago
Ryan Tharp
e4214cb25e
format
6 years ago
Ryan Tharp
32fa716ac3
Merge branch 'master' of https://github.com/neuroscr/loki-network
6 years ago
Ryan Tharp
7171abe825
gcc 7 fix
6 years ago
Ryan Tharp
cabd523188
make sure it's lowercase before decoding
6 years ago
Ryan Tharp
9f1f3a35d4
skip answer if type 5 (cname) and advance to first answer, also properly adjsut for SOA hack
6 years ago
Ryan Tharp
e3df552986
Merge branch 'master' of https://github.com/loki-project/loki-network
6 years ago
Jeff Becker
913fb1d88a
don't use 100% cpu
6 years ago
Jeff Becker
08d6121a5a
more tun code
6 years ago
Ryan Tharp
80f70f5a84
fix linux compile
6 years ago
Ryan Tharp
a5f2f7080d
Merge branch 'master' of https://github.com/neuroscr/loki-network
6 years ago
Ryan Tharp
94b6b828c1
Merge branch 'master' of https://github.com/loki-project/loki-network
6 years ago
Jeff Becker
5b322510a7
try making it compile
6 years ago
Jeff Becker
e6de816dce
touch win32 code to make it compile, sorry.
6 years ago
Jeff Becker
b47a67bbd5
make it compile
6 years ago
Jeff Becker
b4f672b950
continue to fix kqueue build
6 years ago
Jeff Becker
944d22abde
fix kqueue build
6 years ago
Jeff Becker
04bf8d6116
some tun interface code
6 years ago
Jeff Becker
6a828ea985
fix shadow build
6 years ago
Jeff Becker
98b3bd6354
add runtime toggle of AVX2 code in sntrup
6 years ago
Jeff Becker
1d3e9f6adc
make testnet no longer crash
6 years ago
Jeff Becker
c12da3dfc7
fix bad offset
6 years ago
Jeff Becker
186bd7d573
use NTRU for introset end to end encryption
6 years ago
Ryan Tharp
484a4b6164
match up prototypes to remove LLVM 3.8 warning
6 years ago
Ryan Tharp
ec237768d7
merge
6 years ago
Ryan Tharp
ab3493ba3d
Merge branch 'master' of https://github.com/loki-project/loki-network
6 years ago
Jeff Becker
d7c1c3322f
it works.
6 years ago
Jeff Becker
e79708c1dc
hidden services sorta work
6 years ago
Jeff Becker
a9b28e5407
more fuxing around
6 years ago
Jeff Becker
c36c83d9dc
more hidden service code
6 years ago
Jeff Becker
143da869b5
fix windows build
6 years ago
Jeff Becker
b6ec1e94db
only write nickname if present in rc
6 years ago
Jeff Becker
6bae623481
more defaults
6 years ago
Jeff Becker
32d82b5ba5
add more defaults in config with comments
6 years ago
Ryan Tharp
bf52d363de
Merge branch 'master' of https://github.com/loki-project/loki-network
6 years ago
Ryan Tharp
15dbaf3808
big clang-format cleanup
6 years ago
Ryan Tharp
3ada1e15be
llarp_main_queryDHT_RC(), llarp_main_init_dnsd(), actually query DHT on dns lookup
6 years ago
Jeff Becker
d5532e4de4
more boilerplate and enable tun/tap build
6 years ago
Jeff Becker
c71d0b2bb3
always use SIGCHLD in clone
6 years ago
Jeff Becker
e4bcf44a25
make net isolated threadpool more generic
6 years ago
Jeff Becker
33c5cf5a89
override join for isolated threadpool
6 years ago
Jeff Becker
62f41d3747
initial threadpool isolation code and run make format
6 years ago
Jeff Becker
30edb26ed9
use endian helpers
6 years ago
Jeff Becker
ebfe820b7a
remove the rest of gcc compiler warnings
6 years ago
Jeff Becker
53b4a94c75
clang format and fix (some) compile warnings
6 years ago
Ryan Tharp
b5e136d916
fix if 10 is in use, comments and other last minute notes
6 years ago
Ryan Tharp
9cb814587d
use CopyInto cleanup
6 years ago
Ryan Tharp
4e7fee7ef5
linux build fixes
6 years ago
Ryan Tharp
57c41f0d65
new ip tracker
6 years ago
Ryan Tharp
c5dd067abe
format
6 years ago
Ryan Tharp
f6398f0126
llarp_getPrivateIfs(), format
6 years ago
Ryan Tharp
73a8be3e60
fix warning
6 years ago
Ryan Tharp
99761ad2c7
add copyright, fix gcc warning
6 years ago
Ryan Tharp
16c56ff04b
Merge branch 'master' of https://github.com/majestrate/llarp + gcc 7.2 fixes
6 years ago
despair86
1e9f49d6ef
Merge remote-tracking branch 'upstream/master'
6 years ago
Jeff Becker
224748bcaf
Merge remote-tracking branch 'loki/master'
6 years ago
Jeff Becker
86ec4dacc3
dht and testnet fixes
6 years ago
despair86
9c0b395c67
vs clang format isn't supposed to inject tabs ffs
6 years ago
despair86
c1765d562b
minor patch, make sure the iocp fields are valid before attempting to cast the ev_id back to its ptr
6 years ago
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
6 years ago
Jeff Becker
f68e3029b0
fix timeouts
6 years ago
Jeff Becker
68a69da0bf
fix kqueue run function, have it wait for 10ms so tick works
6 years ago
Jeff Becker
694644ac8b
timeout for kevent tick
6 years ago
Jeff Becker
cc59d7944a
event loop must call tick every tick including on timeout
6 years ago
Jeff Becker
44663d18a5
fix typo
6 years ago
Jeff Becker
9dc88fb64b
another win32 cross compile fix
6 years ago
Jeff Becker
a99fa8f6cf
try fixing windows cross compile
6 years ago
Jeff Becker
0d2bce2089
fix up win32 specific parts
6 years ago
Jeff Becker
1b20ba6a6c
fix dead code, clean up parts.
6 years ago
Jeff Becker
066c208622
add mutex/lock to singlethread mode threadpool
...
remove uneeded i2p.rock.signed.txt
update makefile clean target
6 years ago
Jeff Becker
5c03b3c8f9
add comments
6 years ago
Ryan Tharp
52bbf890ef
move hook out of dnsd into daemon, made hook use timer, decode_answer has beginning SOA parsing support, getDNSstring() refactor
6 years ago
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
6 years ago
Jeff Becker
7622f6cef1
dht tweaks
6 years ago
Jeff Becker
6bd2e965fc
don't store client RC EVER
6 years ago
Jeff Becker
6ffa2eed1c
fix up dht
6 years ago
Jeff Becker
12ea412763
fix dumb dht mistake
6 years ago
Jeff Becker
f8e3ef16b9
correct typo
6 years ago
Jeff Becker
d511057b7d
* logging updates
...
* nicknames in RC (yw kee)
* spec update
* more hidden service code
6 years ago
Jeff Becker
bc1c49b092
dht fixes
6 years ago
Jeff Becker
d1bbce8192
add uint16/32 put/read on buffers
6 years ago
Ryan Tharp
82f300523d
handle crash on multiple response to an alreayd handled packet, rename hook to sendto_hook, writecname_dnss_response() and write404_dnss_response()
6 years ago
Ryan Tharp
de56a32069
another DNS clean up pass
6 years ago
Ryan Tharp
14df6724f7
bring kqueue up to date with epoll
6 years ago
Ryan Tharp
c5851cd63a
Merge branch 'master' of https://github.com/neuroscr/loki-network
6 years ago
Ryan Tharp
0b32bad7b9
Merge branch 'master' of https://github.com/majestrate/llarp
6 years ago
Ryan Tharp
564d96f0c8
print(), write(filename), commitStream(outstream), private commit()
6 years ago
Jeff Becker
928ec3790d
deterministic logging
6 years ago
Jeff Becker
058ce4fae3
don't put private addresses into rc EVER
6 years ago
Jeff Becker
3b82dfd818
fix previous commit
6 years ago
Jeff Becker
3f54989b68
fix previous commit
6 years ago
Jeff Becker
28f6a76312
remove unused encoding functions
6 years ago
Jeff Becker
d4ea843d33
fix feedback loop
6 years ago
Jeff Becker
1107b39d94
fix decode error
6 years ago
Jeff Becker
b9f07e8593
* tweak event loop parameters
...
* various code cleanup
6 years ago
Jeff Becker
908716aca4
cleanup
6 years ago
Jeff Becker
2f51f6202a
make it not crash
6 years ago
Jeff Becker
d011fb550e
have logic and netio run in same thread for now
6 years ago
Jeff Becker
08b60a9ae7
update code to match protocol spec
...
backwards incompat change
6 years ago