Commit Graph

5951 Commits (fbb7c0d6f94707506865286f3c69b17618affab4)
 

Author SHA1 Message Date
Jeff Becker fbb7c0d6f9
add forgotten file 4 years ago
Jeff Becker 328c7a398e
make sure event loop owns logic so that logic call does not use seperate thread 4 years ago
Jeff Becker c826d0a0b1
increase transit hop limits 4 years ago
Jeff Becker 3a776b3ed1
bounds checks and such 4 years ago
Jeff Becker a45f92dca7
use random good path for outbound traffic so that it uses an even spread accross
all paths
4 years ago
Jeff Becker 382e4215a8
path testing interval increase to reduce bandwidth use 4 years ago
Jeff Becker 00143e63f4
put replay filters on transit hops to reduce retransmissions. 4 years ago
Jeff Becker 114bdd5ce5
add move and copy constructors/assigment operators to ip_address 4 years ago
Jeff Becker 3eb006f78c
iwp/libuv cleanup: remove llarp_pkt_list and all users of it as it's broke 4 years ago
Jeff Becker 6af498092b
exit traffic via loki addresses 4 years ago
Jeff 1884d17e9d
Merge pull request #1290 from jagerman/deb-ci-snapshots
Drone static build and deb uploads
4 years ago
Jason Rhinelander 8851766c5d macos static build & upload 4 years ago
Jason Rhinelander a484ccffc2 static curl build fixes
- fix ldap disabling flag
- disable a ton of protocols (include ldap, properly)
- remove INSTALL_COMMAND (the default seems to work fine)
- disable --quiet so we can see the configuration summary
4 years ago
Jason Rhinelander cf447dc3a4 Build (and upload) debs by merging into the deb branches
Similar to the static files, the debs also end up under
builds.lokinet.dev/deb.
4 years ago
Jason Rhinelander f54beadaa9 Add tar+upload to builds.lokinet.dev of static build
Relies on an SSH_KEY secret being set in the repository.

Also move the linked library check to a bash script because escaping a
value in jsonnet (escape once) that gets passed through yaml (escape
twice) and then bash (escape again) is too painful.
4 years ago
Jason Rhinelander 861f83c9cc drone tweaks
- add some comments
- exclude commits to the debian/ubuntu branches from getting built
- disable "Updating man-db" which chews up several seconds during
package install
4 years ago
Jeff 437895ca36
Merge pull request #1289 from jagerman/merge-master
Merge master
4 years ago
Jason Rhinelander 5b7d194ff1 Merge remote-tracking branch 'origin/master' into dev 4 years ago
Jeff 22830fe423
Merge pull request #1287 from loki-project/majestrate-patch-1
change ci badge to use drone
4 years ago
Jeff 636622afdb
Merge pull request #1288 from jagerman/remove-str-crutch
Remove llarp::str(string_view)
4 years ago
Jason Rhinelander 854619f04f Workaround for ghc::filesystem (mac) compatibility 4 years ago
Jason Rhinelander d05e6716cb Remove llarp::str(string_view)
It was a workaround for pre-C++17 std::string which didn't support
passing a string_view to various functions/operators.  There's only one
place left that needs an explicit conversion, and that's where it is
used as a map key; so just be explicit there and remove llarp::str()
everywhere else.
4 years ago
Jeff bad6974ee5
change ci badge to use drone 4 years ago
Jeff d35b246d28
Merge pull request #1286 from jagerman/fix-links-output
Fix the static build linked libs output check
4 years ago
Jason Rhinelander 9e1e11825e Fix the static build linked libs output check
- The `grep` had a typo of `-e` instead of `-E` which made it not work

- Made the command actually fail the pipeline if unwanted linked libs
were found.

- Print in green if everything is okay.

- Add librt.so to the whitelist
4 years ago
Jason Rhinelander 7d5a99d820
Merge pull request #1284 from majestrate/toggle-lto-2020-05-20
add WITH_LTO option to disble lto on compile time
4 years ago
Jeff b885f924e8
Merge pull request #1285 from jagerman/bye-bye-travis-ci
Remove travis-ci
4 years ago
Jason Rhinelander 11342b1d9f Remove travis-ci
We don't have much left there that works -- the one useful build (s390x)
errors out with a no available disk space error, so just give up on it.
4 years ago
Jeff 639432c678
Merge pull request #1282 from jagerman/drone-macos
Bunch of crap for macOS
4 years ago
Jason Rhinelander e4e6fc205e Disable lto for most linux builds
Keeps it on for the first three (sid/release, sid/debug, and clang) and
turns them off for the rest.
4 years ago
Jeff Becker a6d17dcd16
add WITH_LTO option to disble lto on compile time 4 years ago
Jason Rhinelander ab02519a40 Add missing quote to static build linked libs test 4 years ago
Jason Rhinelander 3bb24580a4 make format 4 years ago
Jason Rhinelander a2d46eda1e Colour diff; print error *after* diff, and make it red 4 years ago
Jason Rhinelander 1d11456d26 Move specify CLICOLOR_FORCE=1 to the drone backend 4 years ago
Jason Rhinelander ebd2142114 Don't use std::optional::value() because f u macos
This replaces all use of std::optional's `opt.value()` with `*opt`
because macOS is great and the ghost of Steve Jobs says that actually
supporting std::optional's value() method is not for chumps before macOS
10.14.  So don't use it because Apple is great.

Pretty much all of our use of it actually is done better with operator*
anyway (since operator* doesn't do a check that the optional has a
value).

Also replaced *most* of the `has_value()` calls with direct bool
context, except for one in the config section which looked really
confusing at a glance without a has_value().
4 years ago
Jason Rhinelander 7f9160bb6e Untangle some interdependencies
macOS doing a shared library build is not working without untangling
some of the interdependencies.  This commit does that, at least enough
to get macOS to compile.

This isn't the cleanest as currently implemented (we have some net/
things in `liblokinet-platform` and some in `liblokinet`, and likewise
ev/vpnio.cpp is in `liblokinet` while the rest of `ev/*` is in
`liblokinet-platform`).
4 years ago
Jason Rhinelander 97088719e0 Avoid reserved __identifiers
Identifier names with `__` in them are reserved for the implementation.
One leading underscore followed by a lower-case letter is fine though
(leading underscore followed by *upper*-case is, however, also
reserved).
4 years ago
Jason Rhinelander 60d704b25d Remove dead code 4 years ago
Jason Rhinelander f9bbc30c3d IsIPv4Bogon: constexpr array instead of a function-local static vector
The fixed-size array + not needing to do an atomic operation in the
function should allow better compiler optimization.

(And with C++17 the type and size are inferred).
4 years ago
Jason Rhinelander bdc9c7bfa8 Move IPRange out of net.hpp; free up TruncateV6 etc.
- Move IPRange into its own net/ip_range.hpp

- Move the static net::IPPacket::TruncateV6, etc. functions to free
net::TruncateV6, etc. functions (now from net/ip.hpp instead of
net/ip_packet.hpp).

- Make net::TruncateV6 and net::ExpandV4 constexpr.

- Add IPRange::FromIPv4 factory function (to replace the iprange_ipv4
free function)
4 years ago
Jason Rhinelander 72bf215da4 Move IPPacket header (part 1)
Rename net/ip.{cpp,hpp} to net/ip_packet.{cpp,hpp}.

(Doing this in two commits because I want to repurpose ip.hpp/ip.cpp,
and want git to figure out the history properly).
4 years ago
Jason Rhinelander be9ddf2ae1 Bring back ghc::filesystem for broke AF macos
macOS doesn't provide `<filesystem>` support when targetting anything
earlier than 10.15.
4 years ago
Jason Rhinelander 4d34ee82c9 Move Catalina build to drone (on lokinet-mini) 4 years ago
Jason Rhinelander 7cb542ea23
Merge pull request #1274 from notlesh/fix-keymanager-test-2020-05-18
Fix various unit tests
4 years ago
Stephen Shelton ffdeca5378
Initialize all primitive values in Config 4 years ago
Stephen Shelton 807bfc5302
Initialize Config with LoadConfig in all key manager tests 4 years ago
Stephen Shelton fa6845b206
Use global RC file paths instead of redefining them 4 years ago
Stephen Shelton ac225eb65e
Testing: explicitly initialize variable 4 years ago
Stephen Shelton 7167b4ad02
Properly initialize config in unit test 4 years ago