lokinet (0.6.0-1) sid; urgency=medium * Rediff patches * Add -DDOWNLOAD_SODIUM to re-enabled dl&build of sodium * Add ucf to depends for metapackages * Enable lokid mode in auto-generated router configs [ Jeff Becker ] * stricter timeouts * Revert "stricter timeouts" * dont fail on 0 sized data fed to json parser * allow multiple calls to FeedData * update readme for freebsd * remove abyss-exe * freebsd fix * require version * more * require pkgconf package in freebsd build * use linux codepath for freebsd in filesystem.hpp [ Rick V ] * get ready for v0.6 * include all platform dependencies transitively * add note * don't be aggressive * fix test suite * Explicitly align to 16 bytes on Win32 targets * add definitions for System5 and generic non-Apple BSD * fix versiontag * clang-format everything * microsoft libc a shit * the internal windows toolchain _already_ provides a default manifest * nit [ Jeff Becker ] * netid update -- Jason Rhinelander Mon, 16 Dec 2019 21:12:12 -0400 lokinet (0.6.0~rc2+git20191215-3) sid; urgency=medium * Disable NATIVE_BUILD -- Jason Rhinelander Mon, 16 Dec 2019 15:20:58 -0400 lokinet (0.6.0~rc2+git20191215-2) sid; urgency=medium * Rediff patches -- Jason Rhinelander Mon, 16 Dec 2019 00:18:47 -0400 lokinet (0.6.0~rc2+git20191215-1) sid; urgency=medium * Updated git tag in version -- Jason Rhinelander Sun, 15 Dec 2019 23:36:23 -0400 lokinet (0.6.0~rc2-3) sid; urgency=medium [ Jeff Becker ] * increase ack window [ Jason Rhinelander ] * Don't include net/if.h to help xenial [ Jeff Becker ] * fix typo, reduce delivery timeout * fix slow start bug * change interval such that FEC is less often done * remove internal limit on response size * prune unused files. * remove undeeded test case * fix include [ Jason Rhinelander ] * Add default mainnet/testnet URLs * curl: less verbose and fail on HTTP error response * deb: add separate mainnet/testnet systemd services * Rediff patches -- Jason Rhinelander Sun, 15 Dec 2019 23:34:23 -0400 lokinet (0.6.0~rc2-2) sid; urgency=medium * Refreshed patches * Add required libcurl dep * added libsodium dep * Pass debian version as GIT_VERSION * Disable 1024 aligned buffer test * lokinet-rcutil renamed to lokinetctl * cherry-picked libabyss read fix -- Jason Rhinelander Sun, 15 Dec 2019 13:24:58 -0400 lokinet (0.6.0~rc2-1) sid; urgency=medium [ Jeff Becker ] * tracy lock contention testing and other fun things * dont nack replayed messages, tweak transmission parameters. [ Michael ] * Abort when a null mutex is locked from a different thread (in debug mode only) [ Jeff Becker ] * remove more locking and make it safe * ensure no crash on quit * make it compile * change default url for bootstrap * add multi-ack and change protocol handshake to pin identity key * make it compile * break it again just to be sure * multithreaded iwp cryptography * more async cryptography * testnet * more * unstaged changed [ jeff ] * gut libutp and finish making things compile and pass tests * try calling stuff in logic thread from event loop [ Jeff Becker ] * finish multithread cryptography first pass * move it arround [ jeff ] * try fixing handover and add snapp traffic to multithreaded crypto workers [ Ryan Tharp ] * Change how webhooks are called [ Michael ] * Enable more sanitisers [ Rick V ] * Remove binaries, download them at runtime * new http parser * refactor lokinet-bootstrap * we grab a prebuilt bootstrap at build time * try set up environment for travis installer build * try install .net manually * ok let's see how we're locked up * skip null adapters * clang-format * undo travis changes * bump to 0.5.1 * bump to 0.5.2 * remove old bootstrap code * build mbedtls from source JIT * replace custom bootstrap with curl to match all other platforms * specify host/target explicitly for cross-build * add targets for release engineering * fix static build * fix command line parameters * try running curl if we can't use native WebClient * fix bootstrap command line * fix license * quote paths * Revert "fix license", do the CRLF conversion at installer build time * update URI shortcuts [ Michael ] * Add initial macOS app * Try to fix windows build * Fix static link with gcc * Use a hardened build for macOS release * Distinct ios build * Use a hardened build for macOS release * Improvements to app workflow [ michael-loki ] * Make Travis happy [ jeff ] * don't need that * remove log level change * fix windows port and make it compile * use absl optional * always use absl for string_view * use static_cast * revert to c++14 for non win32 [ Stephen Shelton ] * Add a --version flag to lokinet CLI args [ Michael ] * Support version over jsonrcp [ jeff ] * flesh out vpn c api clean up cruft [ Michael ] * Introduce --background to only start JSON RPC [ jeff ] * update cmake [ Michael ] * Apply Jeff's comments * Split cmake files for executables into src dirs [ michael-loki ] * Fixup [ Michael ] * Fix makefile location * More CI fixes * fixup ios [ jeff ] * initial jni wrapper stuff * finish wiring up jni shizz * try making it compile * fix cmakelists.txt file paths * typofix * pass template arguments in, fix typo * more fixups * cast * typofix * typo fix * more fixes, implemenmt missing functions * close -> closeasync * close async * update comment [ Jeff Becker ] * remove unused file [ Michael ] * Convert RPC endpoint to be a lookup table * Add rpc call to get current addresses for our node * Use libcurl (optional dependency) to hit jsonrpc * Review fixes * Fix travis deps [ Stephen Shelton ] * Add comments to NullMutex implementation to express intent [ jeff ] * call read handler in logic thread [ Stephen Shelton ] * Add numNodesKnown to llarp.admin.dumpstate RPC endpoint * Even more clarity to NullMutex comments [ Jason Rhinelander ] * Fix build on xenial [ jeff ] * revert to ed25519 for signing, this breaks everything (again). * update cmakelists.txt to no longer build removed file * use get_service_nodes rpc endpoint [ Stephen Shelton ] * Add missing #endif (presumably from 281fbff) [ jeff ] * fix #865 by not using logic if it is null in udp_tick * make format * disable DoH using mozilla's ISP backdoor record. * use correct rpc call to lokid * try making it work in the case that is broken on travis * make it compile on windows * add unit test for identity_keygen * make it compile [ Stephen Shelton ] * Prevent in-source-builds with cmake macro [ Ron ] * Update readme.md [ Jeff Becker ] * fix event loop tcp connections so they are thread safe * revert a few things * make format * make format * fix compile error on freebsd * fix crash * make non copyable * update _sz * fix warnings and prevent bug that sends invalid traffic to user * fix bounds check * use data not begin * make it compile [ Ryan Tharp ] * Fix whitespace formatting * MacOS Installer: Generate default config [ Jeff Becker ] * devendor libsodium by default except for android * finishing touches * update travis * use vendored libsodium if we dont have a good version * set version in FindLibsodium.cmake * use PACKAGE_FIND_VERFSION * enable IOS on IOS * fix typo * disable abyss-main [ Jason Rhinelander ] * Fix cmake sodium version check [ Jeff Becker ] * try disabling extra calls for some reason sodium_memcmp destroys the stack and i have no idea why * enable see2 when used * if this works i'll be pissed at gcc [ Rick V ] * a. GCC LTO requires specifiying CXXFLAGS in LDFLAGS * grab everything and the kitchen sink at build time instead * we no longer need IDP (the runtime download plugin) * ok release target now downloads the same known-good assets from public server * lto not supported for cross compile targets * ok implement libuv stubs for tcp connectors * ok add the write handler here too * emit libuv-like stub externally * c-f everything * make that a universal rule * just write the data straight into the socket * ok set write handler in event loop * oops fix up some missing code * manually merge #859 * restore crypto flags for binary builds * fix windows * add patchset for libsodium-upstream-stable so we can get rid of vendored lib * add note * undo change in preparation of removing this shit code * remove vendored libsodium [ Jeff Becker ] * pull in libsodium if local version sucks [ Jason Rhinelander ] * Move sodium download into separate cmake include * Fix download hash verification & version string [ Rick V ] * add patch for libsodium 1.0.17 * add cmake rule to patch libsodium on windows * add patch for latest stable libzmq on windows with a configure note * fix note [ Jeff Becker ] * fix issue #894 * add compile time override for libsodium tarball url using -DSODIUM_TARBALL_URL=https://whatever/tarball.tar.gz * seek for version and set it before deserializing * try fixing leak * use <= not == * meh * move calling of path build sccess hook to correct place * flush link session encrypt queue immediately after handling plaintext packets * Revert "move calling of path build sccess hook to correct place" * changes from review * try interchanging pump order * call Router::PumpLL after every batch of packets from a link session * make it compile [ Jason Rhinelander ] * Silence unused variable warnings in release build [ Jeff Becker ] * get rid of NON_PC_TARGET * add forgotten file * move it * detect properly for mobile * more * exclude debian from setting CRYPTO_FLAGS * move more stuff * move it more * disable gtest when no unit tests * disable windows native in CI * re-add windows to CI pipeline just allow fail * fix patching command * i hate windows * make path builds work again * remove printf * make format * make router give time directly [ Thomas Winget ] * Add per-path queues, prioritize control messages over traffic * ban zero id for pathid; clarity and cleanup * fix seg fault, fix uninitialized static member * do...while; make format; remove erroneous GUARDED_BY * remove our paths from outbound queues * remove our paths from outbound queues * fixes some logical errors in per-path queues [ Jeff Becker ] * prevent double free crap with shared_ptr * iot seems that logic thread didn't work the way i remember it should make logic work the way it should * make format * make unit tests pass for iwp * add warning when trying to queue onto full logic thread [ Stephen Shelton ] * Drop new inbound IWP sessions when the first packet can't be handled * make format (and git commit --amend to re-trigger CI) * Reduce log level of IWP session issues as they may be encountered frequently and normally [ Jason Rhinelander ] * Remove shell globbing of path * clang-format fixes * Don't pointlessly set conffname back to itself * Fix runtime AVX2 detection [ Stephen Shelton ] * Stub out KeyManager class * Replace bencode_write_version_entry with a more general-purpose function for writing bencoded dictionary entries [ Jason Rhinelander ] * Lower the ev tick interval to 10ms [ Stephen Shelton ] * Add "keyfile version" to RouterContact * Rename bencode function for clarity [ Jeff Becker ] * contention killer * make sure all calls of logic thread jobs are not having contention * add trace log level for tracking logic thread jobs * typo fix in release * try fixing file log segfault * make it compile * make contention checker templated * please the gods of valgrind * remove use of void * in godawful old code from a time before happyness * use lambda * std::move * initialize with zeros * remove valgrind access errors * work in progress * flush quues of other paths * make it compile [ Stephen Shelton ] * Implement code to move old key files out of the way [ Jeff Becker ] * fix "zero hop" bug * make logic job queue 8 times bigger * make job queue size configurable * make master build release by default [ Stephen Shelton ] * Reorganize priv key file loading a bit and hook KeyManager into Router [ Jeff Becker ] * use curl to fetch from lokid rpc the identity key * sleep * move sleep * update readme and disable curl on windows * clear response between tries * add check for identity key validity * ping lokid rpc [ Stephen Shelton ] * Undo adding of crypto version to RouterContact, other fixes [ Jeff Becker ] * reduce number of jobs we put onto the logic thread * add metrics tracking for logic jobs in debug mode * prune members in timer context * use timer guard for all jobs in debug mode * prevent segfault [ Thomas Winget ] * Track and log UV event loop ticks in debug builds * Show number of logic thread jobs in debug builds [ Jason Rhinelander ] * Don't flush here; we already have a tick flushing [ Jeff Becker ] * reduce calls in link pump * process transit hops on flush * dont process empty queues * use lockless queues to gather results of transit traffic work * only flush when no other jobs are executing * flush in logic * try async decrypt then verify * batch and flush * fix address mapping bug * remove jenky call to logic thread in link server * ammend previous commit * call jobs in logic * dont flood the logic queue * style nitch [ Jason Rhinelander ] * Die if job queue full * Set tun to non-blocking [ Jeff Becker ] * limit calls * lower limit to 25ms * limit calls to pumpll such that it gets called fast enough but not too much under load [ Rick V ] * crash on wine, we support linux, ucb_unix, svr4 natively ffs. i tested this patch on wine 4.4 on fuckin Solaris 11 snv_151 * fix error msg * set default bootstrap-uri for legacy ui * tick more often [ Jeff Becker ] * fix path resource leak * limit connections * break the world to make it faster * make it compile * dont use auto * fix previous commit * unconditionally bundle first fragment in xmit * make format [ Stephen Shelton ] * Handle link transport key in KeyManager [ Jeff Becker ] * bump version and motto * handle case with no git directory [ Jeff ] * fix readme for libcurl package name on linux [ Stephen Shelton ] * Fix bad merge * Move lokid key API request to KeyManager [ Jeff Becker ] * make it compile [ Jason Rhinelander ] * Bump default netid to gamma for 0.6 [ Stephen Shelton ] * Init key manager before InitOutboundLinks are configured [ Jeff Becker ] * remove unneeded log statement [ Stephen Shelton ] * Reinstate link test / update to use KeyManager [ Jeff Becker ] * close sessions to non essential nodes * fix typo * only close outbound links * close links lazy * more close changes * reduce window [ Stephen Shelton ] * Make format * Avoid trivial getters/setters in KeyManager [ Jeff Becker ] * add bootstrap list functionality and utility [ Stephen Shelton ] * Backup SNApp keys when migrating to new ed25519 crypto [ Jeff Becker ] * use ipv6 only with ipv6 packets [ Jason Rhinelander ] * Replace cppbackport with ghc-filesystem [ Jeff Becker ] * try fixing router lockup * squash possible race condition * add absl annotations * add systemd watchdog if enabled on compile time * disable absl decorator in release * add deadlock checker and revert bencode change from long ago * fix last commit * use correct format string * reduce log levels at runtime * disable metrics by default [ Jason Rhinelander ] * Remove unused argument [ Jeff Becker ] * make format and make tests compile * remove callsto Router::PumpLL and stuff gets faster (or stuff) * use faster hashing * fix unit tests * fixes for travis * more travis fixes * another attempt at travis fix * clang fixes * allow windows to fail * more travis config tweaks * prevent crash on exit * make logic and net thread one in the same * call timers with queuer if set * limit timer calls * more cleanup * use thread queue * trypushback * fixes for travis * more travis fixes * another attempt at travis fix * clang fixes * allow windows to fail * more travis config tweaks * prevent crash on exit * make logic and net thread one in the same * call timers with queuer if set * limit timer calls * more cleanup * use thread queue * trypushback [ Stephen Shelton ] * Optimize AlignedBuffer:::IsZero() [ Jeff Becker ] * make libuv on win32 work * finish remaining changes * more * final change * fug * remove mutexes * consolidate versions [ Stephen Shelton ] * Remove typo in version changes [ Jason Rhinelander ] * Add missing ev_libuv (now needed everywhere) * Put version info into a compiled file * Simplify AlignedBuffer alignment implementation * Change alignment to std::max_align_t [ Stephen Shelton ] * Fix for travis-ci xenial build * Another attempt to make travis-ci's xenial happy * Comment-out ios build for now * make format (or format-verify, at least) * Include error code in log output in Identity::EnsureKeys() * Make format (on recent version-related code) * Use vendored fs::filesystem on all platforms * Remove FS_LIB conditionals [ Jason Rhinelander ] * Offer ritual sacrifice to clang-format -- Jason Rhinelander Fri, 13 Dec 2019 16:07:08 -0400 lokinet (0.5.2-4) sid; urgency=medium * Rename split packages to lokinet{,-bin,-router} -- Jason Rhinelander Tue, 29 Oct 2019 16:18:08 -0300 lokinet (0.5.2-3) sid; urgency=medium * Fix broken RequireFileExists systemd directive -- Jason Rhinelander Tue, 29 Oct 2019 15:13:13 -0300 lokinet (0.5.2-2) sid; urgency=medium * Split client and router config/services into separate packages -- Jason Rhinelander Tue, 29 Oct 2019 14:06:58 -0300 lokinet (0.5.2-1) sid; urgency=medium [ Ryan Tharp ] * Add libuv [ Michael ] * Statically link releases [ jeff ] * remove libutp and all such code related to utp [ Jeff Becker ] * try fixing handover [ jeff ] * handover should be fixed now * final touches * bump version and motto -- Jason Rhinelander Fri, 20 Sep 2019 18:32:38 -0300 lokinet (0.5.1-1) sid; urgency=medium [ Jeff Becker ] * disable link layer locking because there was no contention [ Michael ] * Abort when a null mutex is locked from a different thread (in debug mode only) [ Rick V ] * auto config has been removed for months now * some people set the netid explicitly, and set it to default anyway * 0.6 relate and other general updates to MacOS packaging * fix * Update distribution.xml [ Jeff Becker ] * disable rc expiration * reduce logging and make format * try more ranges [ Jason Rhinelander ] * Move default user/group define into a debian patch * Fix x86-isms in debs [ Jeff Becker ] * prune dht peers every router tick [ Jason Rhinelander ] * Add lokinet DNS for systemd-resolved and resolvconf * Add no-resolvconf hack for deb install to deb config file * Bump version to 0.5.1 for minor fixes for 0.5.0 -- Jason Rhinelander Tue, 10 Sep 2019 19:44:51 -0300 lokinet (0.5.0-2) sid; urgency=medium * Patch lokinet-bootstrap to use system bootstrap path when run as root -- Jason Rhinelander Wed, 04 Sep 2019 15:54:48 -0300 lokinet (0.5.0-1) sid; urgency=medium [ Rick V ] * add build option for constrained node ops and make sure everything is now target-optimised in all configurations (allows debugging on the target using the debug build config) * new cmake module * bump version for release * if cppbackport is built, make that consistent too * add description to lokinet svc manifest * undo utf8 conversion * set point-to-point mode on TAP * iconv 🅱roke * move non-string version info to common header * derp * make format crypto/ * clang-format remaining code, use __asm__ for avx2 port since we insist on straight C99 without extensions (asm isn't special in C99, __asm__ is) * this kills the TAP * add config edit button, and see if this fixes the pipe read bug * add config file options [ Michael ] * Move logging to subdirectory * Move meta programming to subdirectory * Move metrics to subdirectory * Move thread stuff to subdirectory * Fix windows [ Rick V ] * oops [ Jeff ] * Update motto.txt * Update lokinet-bootstrap [ Jeff Becker ] * change default url for bootstrap * update default netid -- Jason Rhinelander Wed, 04 Sep 2019 13:37:57 -0300 lokinet (0.5.0~pre20190902-1) sid; urgency=medium [ Jeff ] * try fixing handover drop bug * make osx unit tests compile on old gcc -- Jason Rhinelander Mon, 02 Sep 2019 21:00:41 -0300 lokinet (0.5.0~pre20190830-1) sid; urgency=medium [ Jeff Becker ] * optimize [ Jason Rhinelander ] * Make sure /etc/loki exists during postinst -- Jason Rhinelander Fri, 30 Aug 2019 13:13:47 -0300 lokinet (0.5.0~pre20190829-1) sid; urgency=medium [ Jeff Becker ] * prepare for 0.5.0 * make it compile * make format -- Jason Rhinelander Thu, 29 Aug 2019 13:19:27 -0300 lokinet (0.5.0~pre20190828-1) sid; urgency=medium [ Jeff Becker ] * bump path build handover window, check cooldown on build. * use estimated build time instead of expiration time for delta when determining when to space out builds * add short data fragments and rx replay filter * please the CI gods, wololo * correct constructors on llarp_buffer_t and check rc on regen * quick little fixes * fix explore * get rid of dead code * fix sign -- Jason Rhinelander Wed, 28 Aug 2019 12:39:29 -0300 lokinet (0.5.0~pre20190827-2) sid; urgency=medium [ Jeff Becker ] * fix log level -- Jason Rhinelander Tue, 27 Aug 2019 16:41:25 -0300 lokinet (0.5.0~pre20190827-1) sid; urgency=medium [ Jeff Becker ] * initial mempipe implementation [ Michael ] * docker-compose fixes * Give explicit names to builds so we know wtf failed * Fix static linking on macOS * Find libatomic fix cmake magics * Fix on compilers which aren't C++11 by default * Replace StatusObject with underlying JSON type * Use ToString instead * Use ToString over ToHex * Dump more info from router contact * replace endl with '\n in config.cpp [ Jeff Becker ] * more * initial iwp * default to iwp * update iwp , add NACK * mark alive on nack * don't crash * send keep alive on pump when needed * disable log spew * lower log level for renegotiate * use std::make_tuple * silence clang errors * silence clang errors again * default to no implementation on pipe for pleasing win32 * ignore test on win32 [ Rick V ] * reeeee * header got stripped * fix log colours on old win32 platforms * add new and improved 32-bit lokinet-rcutil to install pkg * override print * ok use clang-format v8 [ Jeff Becker ] * code review fixes: * more fixups [ Michael ] * Partial fixes for shadow * Fix docker-compose isolated network [ Rick V ] * sun fix [ despair ] * fix cmake (restore crypto opts) [ Rick V ] * add native build option [ Jeff Becker ] * add likn layer delivery timeout notification for iwp * add forgotten bits * use correct constructor for llarp_buffer_t -- Jason Rhinelander Tue, 27 Aug 2019 11:48:39 -0300 lokinet (0.5.0~pre20190814-1) sid; urgency=medium [ Jeff Becker ] * try adding proper limits * add limits files * include header * limit connections in outbound session maker * more * pump to make stuff speed up if stuck * ensure timestamp is not in future * use llarp::path::default_len to inform how many routers we need [ Jason Rhinelander ] * Refresh patches [ Jeff Becker ] * correct header? [ Michael ] * Use the right version of clang-tidy * Fix make install -- Jason Rhinelander Wed, 14 Aug 2019 16:12:26 -0300 lokinet (0.5.0~pre20190813-1) sid; urgency=medium [ Michael ] * Set fast_finish so we don't need to wait for the sloooow 'make windows' target * WIP on docker-compose workflow [ Jeff Becker ] * drop missmatched convotags [ Michael ] * Fix a deadlock when link fails to establish [ Jeff ] * don't expire based on reply intro [ Michael ] * Fix suspicious thread-unsafety * Make format [ Jeff Becker ] * also check if we are a public router when checking for timeout in read direction * make it compile * move convotag missmatch check to the right place * make format * more consise utp timeout logic * make it compile * lokinet monitor * when pushing large amounts per tick try not to bottleneck on utp_writev * pumpwrite -> pump * make sure stats are called every 1s * redo commit [ Michael ] * CI to catch missing `make format` * Test make windows on macOS, and avoid timeouts * clang-tidy modernize pass * Fix format verify * Bump version of cxxopts * Update rcutil and add to build * Include json output * make format * Add missing header * Dump config * make windows fixes * try with clang-format 7 -- Jason Rhinelander Tue, 13 Aug 2019 10:58:15 -0300 lokinet (0.5.0~pre20190805-1) sid; urgency=medium [ Rick V ] * add debug helper lib for core dump generation on all supported windows targets * ok use exception filter * back out for now * enable SetThreadName (#689) * fix single-arch install config * fix header case * add make windows config command line * fix sun * really fix #689 this time * fix netbsd * this is new, intro'd with the libuv refactor * clang-format * namespace * why isn't cmake picking this up * this is getting hairy * fix thread naming on windows * get our TAP ifindex to pass to ipv6(1) on old platforms * fix a crash on some win32 systems [ Michael ] * Add fail-able docker build for gcc trunk * Fix gcc trunk warnings * fixup! Fix gcc trunk warnings [ Jeff Becker ] * dont close socket on bad state [ Michael ] * Jeff's fixes [ Jeff Becker ] * don't time out clients based on downstream traffic * always regen expired rc -- Jason Rhinelander Mon, 05 Aug 2019 21:19:05 -0300 lokinet (0.5.0~pre20190801.1-1) sid; urgency=medium [ Jeff Becker ] * have IPPacket::srcv6 and IPPacket::dstv6 check for ipv4 packets and expand them to ipv6 * call path build fail stuff in logic thread * properly close dropped inbound sessions on utp * remove limit * mark addresses as active when we use them * remove session->Close() * close dropped session later in event loop * always rewrite address -- Jason Rhinelander Thu, 01 Aug 2019 21:02:48 -0300 lokinet (0.5.0~pre20190801-3) sid; urgency=medium * Fix "boostrap.signed" misnaming in deb postinst -- Jason Rhinelander Thu, 01 Aug 2019 16:59:52 -0300 lokinet (0.5.0~pre20190801-2) sid; urgency=medium * Replace tmpdir in generated config file -- Jason Rhinelander Thu, 01 Aug 2019 16:38:19 -0300 lokinet (0.5.0~pre20190801-1) sid; urgency=medium [ Michael ] * Use travis_wait because builds/linkers are slow [ michael-loki ] * Try bumping to 30 minutes wait * Go back to 20 minutes, don't let this job block CI * ugh travis [ Jason Rhinelander ] * Fix lokinet.ini permissions; clean up during purge -- Jason Rhinelander Thu, 01 Aug 2019 13:19:30 -0300 lokinet (0.5.0~pre20190731-1) sid; urgency=medium [ Thomas Winget ] * Adds Link-Relay Status Messages * make TransitHop self-destruct if path is invalidated [ Jeff Becker ] * run main in it's own thread and set its process name. * try deferred resolve for exit handler * add link layer delivery feedback * make travis happy * propagate all utp link errors * make it compile * * increase utp buffers * disallow inbound traffic on outbound utp link * const correctness * use size_t * fix compile for tests * on logic queue overflow put job on timer instead * correct cmake paramter for shellhooks * * const correctness * use std::map's upper_bound to find many closer entries * randomize key for exploration to allow many explore jobs in paralell * fix crashes in testnet * const correctness * const correctness [ Michael ] * Initial experiment with a docker-based CI * try to make some windows * Abandon debian * Fixup * Use __cpp_lib_filesystem * or not [ Jeff Becker ] * revert dht stuff * fix dht exploration ;~; * remove -1 * use std::min * use ipv4 address on snodes for now [ Michael ] * Add ASAN CI -- Jason Rhinelander Wed, 31 Jul 2019 23:45:23 -0300 lokinet (0.5.0~pre20190726-1) sid; urgency=medium [ Thomas Winget ] * make travis happy again *and* don't break message sending [ Jeff Becker ] * fix crash of clients and propagate lookup failures [ Jason Rhinelander ] * lokinet-bootstrap improvements * Remove unneeded git dependency * Deb updates & fixes -- Jason Rhinelander Fri, 26 Jul 2019 18:21:31 -0300 lokinet (0.5.0~pre20190725-1) sid; urgency=medium [ Jeff Becker (probably not evil) ] * bug fix release [ Jeff Becker ] * i am a potatoe * aaaaaaaaaaAAAah * potatoe * mor potatoe * don't kill bootstrap * aaaaaaA * disable * connect out to committed routers if we don't have a session each tick * don't kill nodes as service node * null check * prevent crash * more * attempt every time * use 1 for dht exploration * fix * const * don't resize frames * meh * fix * more * fuck * whatever [ Michael ] * Fixup MSVC build [ Jeff Becker ] * revert breaking change * re-enable unit test * hax to make it work. * hard code range for now as a /16 don't revert me * add comment * pick newer intros only [ Rick V ] * really remove line break * move tun autoconfig from config parser to tun setup * fix ui * fix UI again [ Jeff Becker ] * more hax * shift introduction * fix [ Michael ] * Fix ASAN build * More explicit error when keyfile is not a valid file * Convert router diskworker to use a modern ThreadPool * Drain diskworker pool on close * Change ExecShellHookBackend to use a modern thread pool [ Jeff Becker ] * commit recent stuff [ Michael ] * Apply rule of zero to code base [ Jeff Becker ] * make format and revert stupid alloc changes * try allowing ip addresses in bind section [ Michael ] * Minor warnings fixes in python/javascript code [ Jeff Becker ] * more docs * don't move, instead copy [ Ryan Tharp ] * osx pkg updates [ Michael ] * Replace dict_reader/list_reader with version which doesn't involve indirection [ Rick V ] * bump version * fix * jeff forgot to bump [ Jeff Becker ] * add docs on debs * revert * move llarp::Logic to std::shared_ptr * make format * use limited size queue for logic and singled threaded threadpool * fixit * fix [ Michael ] * Fix thread safety issue in service::Endpoint::ProcessDataMessage [ Jeff Becker ] * DRY * more * double path build timeout [ Michael ] * Remove all use of IBEncodeMessage [ Jeff Becker ] * update docs and discard pending traffic on connect timeout to prevent memleak * prefer inbound links over outbound links * * don't lookup routers in sendtoorqueue * don't lookup routers that are not public when committing [ Jeff ] * Update high-level.txt [ Jeff Becker ] * use for each loop * delete inbound messages right after being handled * close timed out sessions * more strict connection timeouts * only check for ready paths when counting in future * update munin script * fix * more * more * add missing lines * gfdi * aaAaAAaaaa * add member to rpc response indicating weither or not a peer is a service node * don't log ips * differentiate between clients and service nodes * explicitly lookup router if not connected to it on LRCM forward. * uncomment * make format and introduce new function EnsureRouter on router to check nodedb or do dht lookup * set lifetime of paths * fix previous commit [ Michael ] * Add CryptoManager class to provide a guard-style class to manage the current Crypto instance * Port code to use CryptoManager over passing Crypto pointers * Move tests to use top-level LlarpTest * Fix crypto build derp [ Ryan Tharp ] * try to configure travis * Travis attempt #2 * Need GCC-6 for C++17 * change default compiler to gcc-6 * Oh actually install the apt packages in docker, impressed it gets this far * win/mac, xenial and make test at the end * xenial doesn't have a gcc-6 without ubuntu-toolchain-r * install gcc6 after some basics * give up an xenial too many overrides, bionic it is * add IRC support * well if IRC isn't going to work, add discord webhooks * Add travis badge [ Michael ] * Initial No-Op Crypto implementation * Update LinkLayer tests to use no-op crypto [ Jeff Becker ] * make format * make debian stable happy [ Michael ] * Move gtest to vendor dir * Update cmake to point to vendor dir [ Jeff Becker ] * revert modification to libutp * ingore paths that drop exit traffic * fix previous commit * use libuv [ Michael ] * Create util::MemFn and memFn to make binding callbacks easier * Convert to use memFn [ Jeff Becker ] * use timers not idle * try fixing tcp * more libuv jizz * make tcp work with libuv probably * fix travis and gitlab [ Ryan Tharp ] * Add static link to CI * add more makefile options * actually test the variables * disable extras for production day [ Jeff Becker ] * add rc expiration (again) * fix * use reply intro for inbound sessions * revert * use latest tag not oldest tag in inbound convos * dont use timers use check for tick * please don't work * please don't work [ Ryan Tharp ] * build a router config not a client [ Jeff Becker ] * try switching logic * fix * eh * fix * update RC expiration logic, lookup more often and remove stale entries * use timetamps * put deltas in timestamps * try addressing issue #642 * try fixing freebsd build * again * another freebsd fix * (more freebsd fixes) * try linking for freebsd * ammend previous commit * another fix for freebsd * ipv6 * more * make exits support v6 probably * handle ipv6 exit traffic * fix exit traffic for v6 [ cathugger ] * net/ip: cleanup * net/ip: IPv6 TCP/UDP delta chksum funcs [ Michael ] * Log when we publish to metrictank * Tidy up metric code * Unfuck metrics * Unfuck integer metrics [ cathugger ] * net/ip: IPv6 packet deltachecksum * net/ip: update names * fix stuff * make format [ Jeff Becker ] * typofixes [ cathugger ] * net/ip: skip IPv6 option headers * net/ip: correct IPv6 fragment processing, also check for length before modifying [ Jeff Becker ] * fix tpyos and pass event loop by l value * make format * update for win32 parts * reverse dns for ipv6 * swap intros on message rejection * swap intros on message rejection * add guard * add release key files * update readme with libuv dependancy * json logging option [ Ryan Tharp ] * attempt freebsd build * fix fbsd tag * fix typo * fix freebsd tag * Update .gitlab-ci.yml [ Michael ] * Introduce tag types * Introduce tags for metrics * Publish metric tags [ Ryan Tharp ] * fix freebsd artifact [ Rick V ] * remove all disused platform-specific event loops * we libuv now [ Jeff Becker ] * differentiate between inbound and outbound convos * pass in path [ Michael ] * Move local publishers to their own files * Fix event loop tests post-libuv [ Jeff Becker ] * try not spamming network with builds * store looked up routers * make format * remove libuv variable from makefile * add handover window to router contact updating * save all nodedb entries in memory on exit [ Rick V ] * fix legacy windows console logger * try fixing libabyss Why does abyss not inherit the include folders used by the rest of the lokinet build? * restore llarp_make_ev_loop() as we only use libuv now; separate function is now ded code * make format * fix windows native console * I _think_ this is a decent compromise for LTO vs non-LTO builds [ Jeff Becker ] * check for expiration * make freebsd compile [ Michael ] * Refactor path build code [ Rick V ] * now i remember why i had to open /dev/tun twice on solaris * fix callback hell * finally fix solaris [ Jeff ] * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md [ Jeff Becker ] * fix borken unit tests [ Michael ] * Move exit messages to match header * Move remaining messages around [ Jeff ] * Update readme.md [ Michael ] * Move subset of messages to right directory * Move exit messages * Move other messages * Tweak link message parser * Merge changes from upstream * Rename InboundMessageParser to LinkMessageParser [ Ryan Tharp ] * Update README.md [ Michael ] * Rename message files * Send netid to metrictank [ Jeff Becker ] * fix comparision [ Michael ] * Tidy up pathbuilder code [ Jeff Becker ] * fix up libuv close logic * fix up libuv close logic * =default * only kill rcs as client * try fixing issue number 17 (not done) * finish up issue 17 * continue using llarp::openfilestream * try fixing issue number 17 (not done) * finish up issue 17 * continue using llarp::openfilestream * make it compile and make it secure files * reset errno and make unit tests pass * explore faster via all peers * fix fs stuff * fix freebsd build [ Ryan Tharp ] * copy travis to temp fix linux build * run update first * gitlabci: actually install the package [ Jeff Becker ] * tweak [ Michael ] * Remove cppbackport from vendor dir * Find libuv for Ryan [ Jeff Becker ] * update docs * handle reply intro * choose first timestamp * outbound context build more * fix previous commit * oooof * check for zero * swap intros only on path build success * correct comparison * fix convotag inbound state setting * set outbound context to be outbound session * fix order * add more metrics * track drop in metrics [ Michael ] * Revert "Merge pull request #668 from michael-loki/remove_cppbackport" [ Jeff Becker ] * do direct lookup when in endgame scenario as client when looking for router * better logging * start seperating tun and endpoint * start work on seperating ips out of endpoint * close after 30 seconds of dead * close after 30 seconds of dead * pump write when handshaking * ping on send idle not recv idle * relax timeouts for handshake and make format * pick ready paths for reply * swap path on inbound convo if expires soon [ Michael ] * Add in-source version of std::filesystem::permissions * Move config class to its own dir * Move ini parser as well * Convert to load config in config loader * Fix tests [ Jeff Becker ] * disable rpc by default * actually set config for network [ Thomas Winget ] * Reverts #678 #677 and #669 with hashes: [ Jeff ] * Update readme.md * Update api_v0.txt [ Jeff Becker ] * remove threadpool.hpp * remove threadpool.hpp * don't lock when visiting links * use sane defaults and deprecated "auto" as it's horribly bad style * * fix testnet codepath [ Jeff ] * make it work [ Jeff Becker ] * * fix testnet codepath [ Jeff ] * make it work [ Jeff Becker ] * try fix for localhost.loki * fix last commit [ Michael ] * Revert "Merge pull request #679 from tewinget/revert-config-refactor" * Fix llvm 8 build * Fixup and add tests * Fix macos build after rebase * Set netid before doing anything else [ Jeff Becker ] * fix * make format * whitespace fix * initialize tun with 0 and set defaults in correct places [ Michael ] * Move router config to be encapsulated * Have fromSection return void * Allow override of some config via env variables * Allow override of the rest of the config * Add function to set threadname, and use from threadpool impl [ Jeff Becker ] * make threadpool consice * lel * make it compile * make it compile * correct name * use logical or instead of bitwise or * use const reference and don't log invalid packets * use logical or not bitwise or and change function name to be plural * remove comment that is wrong * * pump after stopping hidden service context [ Michael ] * Remove redundant else blocks * Address Jeff's comment [ Jeff Becker ] * make it compile * fix freebsd build [ Michael ] * Add missing cppbackport fs::path constructor [ Jeff Becker ] * use correct function from free bsd pthread * use elseif * fix freebsd build for real [ Michael ] * Fixup two minor warnings [ Jeff Becker ] * typo fix lel * disable shell hooks by default * use correct uint128 functions when doing endian flipping * make format * change order of configuration * try bailing when configration failed * more logging [ Jeff ] * correct worker threads amounts * fix previous commit [ Michael ] * Add FindLibUV and migrate [ Jeff Becker ] * use std::string instead of fs::path [ Michael ] * Refactor endpoint state management to a new class [ Jeff Becker ] * try fixing bootstrap * durable write for nodedb * only update if newer * use static lookup timeout * unconditional insert so that we dont run out of peers * always ask peers for next closest [ Michael ] * Matrix build for travis * Fix config builds * Fix Ubuntu builds * Update ubuntu dockerfile to use static linking * always build release * Attempt macOS build * Set PIC everywhere * Remove matrix build of NETNS * Drop xcode11 for now * Install make too * fix formatting * Use ccache to speed up builds * Install gold on ubuntu * Disable matrix builds on build type * Matrix build debug and release, since we care about both [ Ricardo Jesus Malagon Jerez ] * Update readme.md to include readme_es.md link * Create readme_es.md spanish translation [ Jeff Becker ] * make cross compile happen in makefile [ Ricardo Jesus Malagon Jerez ] * Update readme_es.md [ Jeff Becker ] * * fix arm cross compile on ubuntu disco * add forgotten file * add ppc64le toolchain * add cross compile docs * update cross compiler docs * fix network interface iteration infinite loop * reduce logging * make it compile * when lastSend is zero don;t time out * set timestamps to zero * revert * only issue deferred utp acks before timeout checks in pump * make hop count and length configurable * set limits correctly * do lookup for RC to neighboor even if we have them in our DHT buckets so we get an updated RC in reply * fix testnet scripts [ Ricardo Jesus Malagon Jerez ] * Create release_es.md * Create CONTRIBUTING_es.md * Update CONTRIBUTING.md [ rjmalagon ] * Basic docs translations to spanish, more to go later [ Michael ] * Test windows support in travis * Try installing make and ninja * Fixup fs * Try with clang?! * Bump cmake version maybe * use whatever vcvarsall is * exceptions BE GONE * Explictly enable catching exceptions * try to fix pid_t issue * Try forcing avx2 * include cctype * Fix some string_view problems * fix fs.cpp * fix str.cpp * Fix more headers for fs.cpp * more fs.cpp * fixup printer.cpp * Don't use LoadFromString * Change ConfigParser too * Try building tests on windows * Silence spammy threadpool warning * build gtest/gmock in shared mode * Try to silence some warnings to reduce noise * Try to link shared again * try actually reading the gtest docs * Change manifest ids * fix test.rc * Delete ev loop tests * Fixup some tests * try to ensure on windows, but don't fail * Skip 3 tests on windows * fix test.rc * Normalise build * Tidy up cmake files * Introduce a couple more builds, fixup notifications maybe [ Jeff Becker ] * make android compile * fix android compile, have makefile pull in libuv for cmake on android [ Thomas Winget ] * Refactor Router code into more classes * change log level of message send success * add debug-level log message on path build success * revert change that made travis happy because it broke things -- Jason Rhinelander Thu, 25 Jul 2019 17:29:26 -0300 lokinet (0.4.1) disco; urgency=medium [ Jeff Becker (probably not evil) ] * MANDITORY UPGRADE FOR TOYNET (again) * crypto protocol fixes in utp preventing fragment replaying * rewrite dns subsystem * snode tld resolution to service nodes * random.snode CNAME records giving a random service node * localhost.loki A and CNAME records for giving IP and Hostnames (respectively) for all locally owned endpoints * stability tweaks * crash fixes * much refactoring * such documentation updates * many C++ 17 isms * very vendor updates * wow ! -- Jeff Becker (probably not evil) Sat, 11 May 2019 10:45:46 -0400 lokinet (0.2.3) bionic; urgency=medium [ Jeff Becker (probably not evil) ] * MANDITORY UPGRADE FOR TOYNET * remove iwp and replace with utp * use sntrup for introset public key (backwards incompatable) * hidden service tags (backwards incompatable) * add nicknames to RC (backwards incompatable) * change kdf for path keys (backwards incompatable) * various dht fixes * various dns fixes (still unused in lokinet executable) * hidden services should sorta work (no client interfacing code yet) * initial win32 port (may sorta work) * initial android point (should compile) * fix shadow testnet * moved netloop and logic into same thread * update motto * debian packaging * windows port * cross compile targets * continous integration * android port * android glue code ( will be moved later ) * snap network namespace isolation, untested [ jeff ] * bump versions * add lokinet-bootstrap script * dns automapping * hidden serivce junk * systemd unit * 0.4.0 -- jeff Thu, 28 Feb 2019 08:44:59 -0500