Jason Rhinelander
5530ec3057
Handle Apple's trash servers when polling for notarization
...
Apple's servers have a gateway timeout a small but noticeable percentage
of the time, which was breaking the script. Detect such Apple flakiness
and keep trying.
2022-08-12 21:13:38 -03:00
Jason Rhinelander
09372994bb
macOS system extension support
...
Adds support for building Lokinet as a system extension, and fixes
various problems in the macos implementation found during development of
the system extension support.
2022-08-12 21:13:38 -03:00
Jeff
61d7ff3787
on apple write packets back to interface when it is for us because that does not have a route spec for the interace ip on loopback as apple finds having sensible defaults bothersome internally
2022-08-12 20:23:00 -03:00
Jason Rhinelander
e97752734d
Fix platform::is_apple
value
2022-08-12 20:23:00 -03:00
Jason Rhinelander
4c39a2d395
Make sure BUILD_SHARED_LIBS is a cache variable
...
Otherwise cmake warns about propagation of normal variables into cache
variables when it hits the option in the oxen-mq submodule.
2022-08-12 20:23:00 -03:00
Jason Rhinelander
93421c6eaf
Change permissions for system extension
2022-08-12 20:23:00 -03:00
Jason Rhinelander
49b2878209
Require explicit disabling of codesigning
...
Make the mac build require passing either an explicit -DCODESIGN=OFF or
the code signing identities.
2022-08-12 20:23:00 -03:00
Jeff
5dd71995c4
add lokinet.swift cli args
...
* add --start flag to start lokinet
* add --stop flag to stop
* by default lokinet on macos needs a flag or it will be a nop
2022-08-12 20:23:00 -03:00
majestrate
c81e950d13
Merge pull request #1973 from majestrate/nodedb-logic-fix-2022-08-07
...
do not clear out entries that are valid from nodedb when we are a service node
2022-08-07 17:28:18 -04:00
Jeff
4341b8c684
do not clear out entries that are valid from nodedb when we are a service node.
...
this logic was inverted.
2022-08-07 13:44:48 -04:00
majestrate
9917daa84d
Merge pull request #1972 from majestrate/happyify-ci-pipelin-2022-08-06
...
fix ci pipeline
2022-08-07 13:41:59 -04:00
Jeff
8d1d1d0b57
make unit tests happy
2022-08-06 16:04:25 -04:00
Jeff
2d1645bfe1
fix up sid ci pipeline
2022-08-06 16:04:25 -04:00
Jeff
58052f5b17
macos ci fixes
2022-08-06 16:04:25 -04:00
majestrate
7a8331e79d
Merge pull request #1961 from majestrate/rc-expiration-reeanble-07-18-2022
...
re enable rc expiration
2022-07-26 12:07:40 -04:00
majestrate
db961ac728
Merge pull request #1943 from majestrate/keygen-script-2022-06-26
...
simple keygen script
2022-07-26 12:07:06 -04:00
Jeff
d0408a1c4e
remove invalid entries on loading nodedb
2022-07-26 11:05:31 -04:00
Jason Rhinelander
f230a3f695
Add debug logging for RC removal
2022-07-26 11:26:35 -03:00
Jason Rhinelander
a190c14889
Fix comment
2022-07-26 11:26:07 -03:00
Jeff
cc2b4df676
kill log statements
2022-07-26 09:45:58 -04:00
Jeff
3337125110
re enable rc expiration
2022-07-26 09:43:45 -04:00
majestrate
4091fdb8bb
Merge pull request #1958 from majestrate/readmes-and-such-2022-07-16
...
add documentation on project structure
2022-07-26 09:30:13 -04:00
Jeff
23fd46c0db
add directory specific readmes
2022-07-26 09:26:28 -04:00
majestrate
769bc1e8df
Merge pull request #1962 from jagerman/dns-parsing-fixes
...
DNS message parsing fixes and cleanup
2022-07-24 11:16:39 -04:00
Jason Rhinelander
874221db70
Merge pull request #1965 from jagerman/fix-double-logging
...
Remove the initial sink before reconfiguring logging
2022-07-22 12:20:18 -03:00
Jason Rhinelander
884c5052a0
Merge pull request #1964 from jagerman/inbound-default-ip
...
Fix inbound IP handling; update [bind] docs
2022-07-22 12:20:00 -03:00
Jason Rhinelander
841abffaf5
Make outbound wildcard default to inbound IP
...
outbound=:1234
outbound=0.0.0.0:1234
outbound=
outbound=0.0.0.0
now all default to use the inbound= IP. (If multiple inbound= IPs are
given, we raise an exception to abort startup).
Only applies to routers (since clients don't have inbound IPs), and
eliminates potential weird edge cases with local system IP and routing
shenanigans.
2022-07-21 17:53:25 -03:00
Jason Rhinelander
f0590a9672
Remove the initial sink before reconfiguring logging
...
Without this, the original sink set up very early in daemon/lokinet.cpp
(which goes to stderr) is still around, and so we get double logging.
2022-07-21 15:02:23 -03:00
Jason Rhinelander
2be422fcc0
Reorganize [bind] comments
...
The general section comments contained all the descriptions for the
inbound/outbound settings, while inbound/outbound had no comment at all.
This moves the comments around to the individual settings, plus updates
some of the wording in the section.
2022-07-21 14:55:57 -03:00
Jason Rhinelander
c9f492d85a
Fix [bind]inbound IP-omitted handling
...
We were failing when using `inbound=:1234`, rather than looking for a
default IP. This fixes it to still use the default IP, and change only
the default port.
Outbound behaviour should remain unchanged: i.e. `outbound=:2345` means
bind-to-wildcard-IP with a specific port.
2022-07-21 14:55:57 -03:00
Jason Rhinelander
6df83b613d
Fix log level being forced to warning
...
This code shouldn't be here; the log level was already set to its proper
default value via the earlier FromConfig call.
2022-07-21 11:34:11 -03:00
Jeff
3a97acfb51
this code needs to detect the first non-existing interface by name, not the first existing one. this remidies this. sorry testnet for breaking you
2022-07-21 07:19:43 -04:00
Jeff
83f648fd87
reword message
2022-07-20 17:04:14 -04:00
Jason Rhinelander
9ea82edc07
DNS message parsing fixes and cleanup
...
Fixes:
- tighten reserved name detection to not match fooloki.loki, but instead
only match "foo.loki.loki" and "loki.loki" (and similar for reserved
name "snode.loki").
- IPv6 PTR parsing was completely broken.
- Added tests for the above two issues.
Cleanups:
- Eliminate llarp::dns::Name_t typedef for std::string
- Use optional return instead of bool + output param
- Use string_views; we were doing a *lot* of string substr's during
parsing, each of which allocates a new string.
- Use fmt instead of stringstream
- Simplify IPv4 PTR parsing
2022-07-20 16:50:38 -03:00
Jeff
f222aecc79
actually use correct variable in iteration
2022-07-20 15:46:45 -04:00
majestrate
6ea97ccaf4
Merge pull request #1930 from majestrate/issue-1929-06-02-2022
...
redo bind section of config
2022-07-20 15:02:19 -04:00
Jeff
a7cfa3ea87
use info as default log level on clients as most users have continously been confused by lack of log output with warn level as default, which i predicted would happen
2022-07-20 14:47:53 -04:00
Jeff
b819ed21d2
clean up build helper scripts:
...
* cleanup of android build shims
* cleanup of windows build shims
2022-07-20 13:36:04 -04:00
Jeff
68148e098f
* add mockable network functions
...
* add unit tests with ability to pretend to be different network setups
2022-07-20 13:36:03 -04:00
majestrate
12653d4ac2
Merge pull request #1955 from jagerman/spdlog
...
Logging overhaul, fmt::format, and related
2022-07-19 18:27:05 -04:00
Jason Rhinelander
f9371233ee
hive fmt/spdlog updates
2022-07-19 15:27:31 -03:00
Jason Rhinelander
f6019210c3
oxen-logging update to handle level/type parsing exceptions
2022-07-19 13:39:00 -03:00
Jason Rhinelander
9bf1d5837a
Update oxen-logging for macos compilation
2022-07-19 12:40:07 -03:00
Jeff
8cde7c7e7a
fix win32 and android builds
2022-07-19 11:31:14 -04:00
Jason Rhinelander
e094125000
gcc 8/9 fix
2022-07-18 17:38:04 -03:00
Jason Rhinelander
86fd77733e
Add missing header to fix libc++ build
2022-07-18 17:23:35 -03:00
Jason Rhinelander
784f2938f1
Use more fmt
2022-07-18 17:13:04 -03:00
Jason Rhinelander
eec8244a6c
Remote util::Printer and related cruft
2022-07-18 14:56:09 -03:00
Jason Rhinelander
2f9e182b20
Avoid ctor inheritance to make diagnostics better
...
Using constructor inheritance DRYs the code, but unfortunately confuses
GCC as to where the proper "required from here" location is, which makes
debugging formatting errors very difficult. Avoid it (and update
oxen-logging to avoid it there as well).
2022-07-18 13:07:33 -03:00
Jason Rhinelander
c82ade2d81
Make test code work with new logging
2022-07-18 12:59:13 -03:00