Commit Graph

210 Commits

Author SHA1 Message Date
Jeff Becker
f1edca9fa1
additional cleanup of cruft 2020-05-04 14:39:14 -04:00
Jeff Becker
e33a1a2e0f
proper autodetect of ifname and ifaddr 2020-05-04 12:51:57 -04:00
Stephen Shelton
42a7bcd434
Less invasive fix for Addr 2020-05-04 11:08:25 -04:00
Jason Rhinelander
1697bf90fe C++17
Compiles with C++17, replaces ghc::filesystem with std::filesystem,
nonstd::optional with std::optional, and llarp::string_view with
std::string_view.
2020-05-01 17:43:27 -03:00
Rick V
df634b7775
remove a ton of ded win32 code 2020-04-20 19:05:53 -05:00
Stephen Shelton
273270916e
The Great Wall of Blame
This commit reflects changes to clang-format rules. Unfortunately,
these rule changes create a massive change to the codebase, which
causes an apparent rewrite of git history.

Git blame's --ignore-rev flag can be used to ignore this commit when
attempting to `git blame` some code.
2020-04-07 12:38:56 -06:00
Jeff Becker
7ba30eec25
squash commits 2020-03-11 16:55:12 -04:00
Linux User
fd23fd6894
32-bit linux patches 2020-02-25 15:48:07 -06:00
Jason Rhinelander
27025030ce Renamed uint128.h -> uint128.hpp 2020-02-24 14:27:44 -04:00
Jason Rhinelander
3fedd5ba6b Avoid wrong-order initialization on big endian 2020-02-24 14:27:44 -04:00
Jason Rhinelander
2093f94244 Make uint128_t use big/little endian layout internally
Thus if someone wants to memcpy out of it it will have the expected
endianness of the internal data.
2020-02-24 14:27:44 -04:00
Jason Rhinelander
454abb4f9f Avoid copies in mutators
Reimplement operators in terms of mutators, rather than vice versa, so
that mutators don't have to make a copy.
2020-02-24 14:27:44 -04:00
Jason Rhinelander
4207a7cfa3 Rewrite In6ToHUInt to be endian agnostic 2020-02-24 14:27:44 -04:00
Jason Rhinelander
0839c16f19 Final abseil purge
Bye-bye Google Boost.
2020-02-24 14:27:44 -04:00
Jason Rhinelander
54186c4a89 Replace absl string_view with string_view from lokimq
When we add loki-mq has a dependency we can just alias it, but for now
it's easier to copy the header than add the whole submodule library.
2020-02-24 14:27:44 -04:00
Jason Rhinelander
3be7eb789b Endian defines fix for macOS
It seems `__BYTE_ORDER`/`__LITTLE_ENDIAN`/`__BIG_ENDIAN` aren't defined
on macOS, so `if __BYTE_ORDER == __BIG_ENDIAN` was true which made macOS
take the big endian path *twice* (which cancelled out the big endian
conversion).

This makes util/endian.hpp define __LITTLE_ENDIAN__ or __BIG_ENDIAN__
everywhere, and errors if it can't be set.
2020-02-07 03:29:50 -04:00
Jason Rhinelander
9283aac4b6 Big endian fixes 2020-02-07 00:56:09 -04:00
Jeff Becker
a96fd645c5
remove side effect from address detection assert 2020-01-08 09:57:23 -05:00
Jeff Becker
8817e7fe21
fix include 2019-12-15 07:09:19 -05:00
Jeff Becker
c9d38d421b clang fixes 2019-12-10 11:49:32 -07:00
Jeff Becker
4f87a95f66 fixes for travis 2019-12-10 11:49:32 -07:00
Stephen Shelton
93b8832026
Merge branch 'dev' into private-keys-backup-support 2019-12-03 11:20:45 -07:00
Jeff Becker
0828307906 fix address mapping bug 2019-11-29 19:11:14 -04:00
Jeff Becker
ac686a9329
remove valgrind access errors 2019-11-22 16:23:20 -05:00
Jeff Becker
0ec4e583d4
initialize with zeros 2019-11-22 16:23:20 -05:00
Stephen Shelton
1666498405 Replace bencode_write_version_entry with a more general-purpose function for writing bencoded dictionary entries 2019-11-22 10:39:35 -07:00
Rick V
df29052a75
fix windows 2019-10-30 18:02:34 -05:00
Jeff
3a6c16aa36
Merge pull request #871 from majestrate/ed25519-signing
Ed25519 signing
2019-10-28 10:42:40 -04:00
jeff
ff8c167362 make it compile on windows 2019-10-22 11:58:34 -04:00
jeff
c69165dad3 try making it work in the case that is broken on travis 2019-10-22 11:20:26 -04:00
jeff
1621ca676b Merge remote-tracking branch 'upstream/dev' into ed25519-signing 2019-10-22 11:08:52 -04:00
jeff
869ab0b652 Merge remote-tracking branch 'upstream/dev' into vpn-api-2019-10-03 2019-10-21 08:01:29 -04:00
jeff
1e3cd03880 make format 2019-10-16 10:11:07 -04:00
Stephen Shelton
7dc1351eba Add missing #endif (presumably from 281fbff) 2019-10-14 09:56:32 -06:00
jeff
265da6f37b use get_service_nodes rpc endpoint 2019-10-14 11:38:34 -04:00
jeff
0e2fb6abd5 revert to ed25519 for signing, this breaks everything (again). 2019-10-14 09:47:06 -04:00
Jason Rhinelander
281fbff42f Fix build on xenial
- xenial's cmake version (3.5.1) builds everything fine and test suite
  passes, so lower the minimum to that.

- add a hack for xenial's kernel header & glibc version breaking if both
  net/if.h and linux/if.h get included.  The only thing we actually need
  from net/if.h that linux/if.h doesn't have is `if_nametoindex`, so
  just hack that definition in for xenial's specific glibc/kernel header
  versions.
2019-10-11 17:26:12 -03:00
jeff
52757fef0e Merge remote-tracking branch 'micheal/background_mode' into vpn-api-2019-10-03 2019-10-04 14:10:58 -04:00
jeff
32ed821763 Merge remote-tracking branch 'upstream/dev' into multithreaded-cryptography 2019-10-01 10:51:28 -04:00
Rick V
ed6ef2d527
clang-format 2019-09-23 21:22:27 -05:00
Rick V
cbdbe94bab
skip null adapters 2019-09-23 21:22:27 -05:00
Rick V
ade2ae1e9a
ok let's see how we're locked up
more debug
2019-09-23 21:22:27 -05:00
Rick V
4389e3fee2
try install .net manually
use full path

test
2019-09-23 21:22:26 -05:00
Jeff Becker
d04762ab49
unstaged changed 2019-09-12 10:34:27 -04:00
Jeff Becker
da6a3bf9bb
Merge remote-tracking branch 'origin/master' into iwp-multi-ack 2019-09-11 09:56:51 -04:00
Jeff Becker
fd787cc56d
try more ranges 2019-09-09 08:10:26 -04:00
Jeff Becker
1adae338ce
Merge remote-tracking branch 'origin/master' 2019-09-04 07:58:02 -04:00
Michael
1aec0dfa2b
Move logging to subdirectory 2019-09-03 20:52:27 +01:00
Jeff Becker
c01112e4b7
tracy lock contention testing and other fun things 2019-09-03 11:56:56 -04:00
Rick V
b3a975ff8e
sun fix
fix testing on sun
2019-08-27 06:53:08 -05:00
Michael
7cb1b525c9
Dump more info from router contact 2019-08-19 23:25:46 +01:00
Michael
16cdfbd5f0
clang-tidy modernize pass 2019-08-12 16:52:58 +01:00
Michael
f9e9227e19
Fix gcc trunk warnings 2019-08-02 10:29:08 +01:00
Michael
4763888d2c
Add fail-able docker build for gcc trunk 2019-08-02 10:28:09 +01:00
Jeff Becker
b4af87aa42
have IPPacket::srcv6 and IPPacket::dstv6 check for ipv4 packets and expand them to ipv6 2019-07-31 08:26:11 -04:00
Michael
ac8624698d
Fix some string_view problems 2019-07-21 16:57:11 +01:00
Jeff Becker
b2fd0e86cc
fix network interface iteration infinite loop 2019-07-16 15:16:49 -04:00
Michael
e52492911d
Refactor endpoint state management to a new class 2019-07-15 10:15:51 +01:00
Jeff Becker
1fd6b5ae74
Merge remote-tracking branch 'origin/master' into ipv6-tun 2019-07-12 09:53:52 -04:00
Michael
488695047f
Remove redundant else blocks 2019-07-09 22:54:46 +01:00
Jeff Becker
f5291951f6
use logical or not bitwise or and change function name to be plural 2019-07-09 15:20:01 -04:00
Jeff Becker
84407b3557
make it compile 2019-07-09 09:54:13 -04:00
Jeff Becker
fb803cfe11
lel 2019-07-09 09:50:50 -04:00
Jeff Becker
58005c5f81
Merge remote-tracking branch 'origin/master' into ipv6-tun 2019-07-08 10:17:21 -04:00
Michael
a2326efa37
Revert "Merge pull request #679 from tewinget/revert-config-refactor"
This reverts commit 2996a7f29c, reversing
changes made to 10df3bd4b3.
2019-07-06 14:46:25 +01:00
Jeff Becker
c4aaa80e75
use sane defaults and deprecated "auto" as it's horribly bad style 2019-07-03 10:32:51 -04:00
Thomas Winget
d044d60101 Reverts #678 #677 and #669 with hashes:
10df3bd
766ece8
979f095

See those commits for further details
2019-07-02 11:02:20 -04:00
Michael
b51f7d8015
Convert to load config in config loader 2019-07-02 01:58:39 +01:00
Jeff Becker
bcde59569e
make freebsd compile 2019-06-18 09:10:44 -04:00
cathugger
ddaf0834e2
net/ip: correct IPv6 fragment processing, also check for length before modifying 2019-06-12 03:04:05 +03:00
cathugger
53f3be2013
net/ip: skip IPv6 option headers 2019-06-12 02:42:05 +03:00
cathugger
72b1ea613c
make format 2019-06-12 00:28:55 +03:00
cathugger
a9dac85c28
fix stuff 2019-06-12 00:27:06 +03:00
cathugger
88acadf415
net/ip: update names 2019-06-11 23:56:48 +03:00
cathugger
e085f3e6c5
net/ip: IPv6 packet deltachecksum 2019-06-11 23:52:13 +03:00
cathugger
6730af207f
net/ip: IPv6 TCP/UDP delta chksum funcs 2019-06-11 23:30:59 +03:00
cathugger
891f5d156c
net/ip: cleanup 2019-06-11 23:17:59 +03:00
Jeff Becker
de51ef23bf
more 2019-06-11 14:23:53 -04:00
Jeff Becker
2403ab8f86
ipv6 2019-06-11 12:44:05 -04:00
Michael
3f53965b71
Remove all use of IBEncodeMessage 2019-05-24 03:01:36 +01:00
Jeff Becker
b86e834e1b
Merge remote-tracking branch 'origin/master' 2019-05-20 08:25:57 -04:00
Michael
dd8a93a400
Apply rule of zero to code base 2019-05-19 23:11:07 +01:00
Jeff Becker
4862dec4be
commit recent stuff 2019-05-19 10:39:50 -04:00
Michael
f734ffeae4 Fixup MSVC build 2019-05-15 23:03:24 +01:00
Jeff Becker
34533db620
add urgent build that builds over an existing path for an endpoint 2019-05-07 08:31:34 -04:00
Jeff Becker
92ad98be8b
refactor hooks to be have more c++isms
make path build timeouts use log level warning
2019-05-05 09:51:48 -04:00
Jeff Becker
9bc7508b5b
remove nuint128_t 2019-05-03 09:25:57 -04:00
Jeff Becker
5b49008bca
more 2019-05-02 12:23:31 -04:00
Jeff Becker
4404d272b2
remove uint128_t for now 2019-05-02 11:19:21 -04:00
Jeff Becker
e060082441
hook every dns for .loki and .snode when applicable
make {n,h}uint{32,16}_t templated type.
2019-05-01 09:40:10 -04:00
Michael
9ee525a006
Fix shadowing warnings 2019-04-26 00:21:19 +01:00
Michael
4143472a17
Add cmake module to target a library as 'system', and fix a few warnings 2019-04-25 00:27:31 +01:00
michael-loki
0195152e05 Allow builds on MSVC (#518)
* Import cxxopts to replace getopts usage

* Add visual studio build things

* Fixup abseil build parts

* Replace __attribute__((unused)) with ABSL_ATTRIBUTE_UNUSED

* Fixup minor windows build issues

* Replace getopts usage

* Temporarily fixup .rc files

* More minor windows fixes

* Get a working build

* Revert .rc files

* Revert changes to nodedb
2019-04-19 13:24:33 -05:00
Jeff Becker
dfa00e3415
fix exit address 2019-04-08 14:21:01 -04:00
Jeff Becker
20e398b684
fix exit info 2019-04-08 13:40:51 -04:00
Jeff Becker
e178a70929
use shared_ptr for event loop 2019-04-08 08:01:52 -04:00
Jeff Becker
3e1c067974
add include 2019-03-27 17:20:04 -04:00
Jeff Becker
c931ac069f
add AAAA records that return SIIT addresses 2019-03-27 09:36:11 -04:00
Michael
e4cf1f245c
Convert most of llarp to use Printer 2019-02-24 23:46:44 +00:00
Michael
a00d6afc5e
Convert llarp_buffer_t to be a class with methods 2019-02-17 13:09:48 +00:00
Jeff Becker
e1522faeaa
add introspection rpc endpoint 2019-02-08 14:43:25 -05:00
Michael
6d8d910aff
Refactor and add tests for bits.hpp 2019-02-07 00:23:22 +00:00
Ryan Tharp
4bf4faa956 make format 2019-02-04 16:41:33 -08:00
Michael
f3b0af9d2f
Create CopyableBuffer type 2019-02-02 23:21:35 +00:00
Michael
2de621b0ad
Disable copy constructing llarp_buffer_t 2019-02-01 01:58:13 +00:00
Jeff Becker
4406ef9c9c
enable xi serialization 2019-01-28 08:52:18 -05:00
Jeff Becker
6064ff5a68
try fixing unit tests 2019-01-17 10:11:17 -05:00
Michael
da6cdfc0b2
More refactoring to continue to make dependency graph acylic 2019-01-15 23:15:44 +00:00
Michael
6e38e85a79
Produce hierarchy of 'libraries' inside libllarp 2019-01-15 23:15:43 +00:00
Michael
a3463120cc
Move net components into a distinct folder 2019-01-11 01:42:02 +00:00