Jason Rhinelander
afa245d215
Bump version to 2.3.0
...
Release candidate, for testing. This may or may not end up as the final
2.3.0 release.
2022-05-10 17:11:59 -03:00
Jason Rhinelander
6e840fb37b
Update static dep versions
2022-05-10 17:11:58 -03:00
Jason Rhinelander
5dc63b71ad
Merge pull request #449 from darcys22/rpc-ping-pubkey
...
Adds ed25519 pubkey to oxend pings
2022-05-10 17:11:05 -03:00
Sean Darcy
541ee9331d
Adds ed25519 pubkey to oxend pings
...
This will allow the oxend to verify the pubkey when pings are received
and reject the ping if they are wrong.
The reason this causes issues is that storage server only receives the
snode keys on startup and if oxend is restarted without restarting
storage server then it could end up running with the wrong keys.
If oxend instead rejects the pings and stops sending uptime proofs then
the operator will know that something needs attention and can restart
the storage server.
2022-05-10 17:09:26 -03:00
Jason Rhinelander
33a287a5b0
Merge pull request #448 from jagerman/namespace-part2
...
Batching; subkey auth; more namespace work
2022-05-10 16:35:00 -03:00
Jason Rhinelander
f43c2b3b00
Allow extending expiry (up to TTL from now)
...
This removes the restriction on updating message expiries that only
allowed shortening, but not extending, expiries.
With this change, a client can renew its own messages indefinitely as
long as it continually re-renews within 14 days of the last renewal.
2022-05-10 16:08:21 -03:00
Jason Rhinelander
389ac24d27
Add ifelse
branching metarequest
...
This lets you make conditional requests based on the HF, SS version, or
block height. For future use (since this won't be usable before HF19).
2022-05-10 16:08:21 -03:00
Jason Rhinelander
a4d93b9509
Fix drone format script
2022-05-05 21:45:14 -03:00
Jason Rhinelander
49047465cc
Fix bug in namespace retrieval
...
The retrieval queries were only half-using the namespace id and
returning things from all namespaces. Fixed.
2022-05-05 21:45:14 -03:00
Jason Rhinelander
3e5f1a7a11
Comment hairiness in batch/sequence handling
2022-05-05 20:53:29 -03:00
Jason Rhinelander
91e71da253
Disallow empty batch/sequence; fix docs
...
Change "up to 6" -> "1 to 5" in the docs; the latter was a typo, the
former for this commit.
2022-05-05 20:52:20 -03:00
Jason Rhinelander
00afc10b13
Clarify timestamp/sig_timestamp use in store
...
The documentation used timestamp in some places that should have been
sig_timestamp (sig_timestamp default to timestamp, but they can be
different).
2022-05-05 18:21:29 -03:00
Jason Rhinelander
9d3d02cf9a
Add namespace to expire_all auth signature
2022-05-05 18:21:29 -03:00
Jason Rhinelander
0264de1daa
Use "" instead of "0" for all default namespace signatures
...
This makes all endpoints consistent w.r.t. how the namespace is handled:
invoking with "namespace": 0 and omitting namespace are now equivalent
(and use the same signature value, with "" for the namespace value) for
all endpoints.
2022-05-05 18:21:29 -03:00
Jason Rhinelander
bc7424d3a8
Fix ts/hf being added nested rather than top-level
...
The initial SN contacted was adding the "t" and "hf" fields into its
swarm-specific result entry rather than into the top-level result.
2022-05-05 18:21:29 -03:00
Jason Rhinelander
176e66b0dd
Document RPC retrieve return value
2022-05-05 18:21:28 -03:00
Jason Rhinelander
807c437183
Add batch/sequence requests
2022-05-05 18:21:28 -03:00
Jason Rhinelander
be7bbdc1c2
Refactor: move omq rpc code into rpc/request_handler
2022-05-05 15:52:52 -03:00
Jason Rhinelander
2776ebe50a
Add draft subkey authentication for store/retrieve
...
This should be sufficient for the current draft design of v2 closed
groups; if so, including the support now saves us a soft fork later.
2022-05-05 15:52:52 -03:00
Jason Rhinelander
81cf19dc0d
Schedule delayed HF revision for requiring retrieve auth
2022-05-02 17:35:47 -03:00
Jason Rhinelander
b0029005d4
Don't allow storing to namespaces before HF19
2022-05-02 17:34:54 -03:00
Jason Rhinelander
0b1f063b8b
Fix onion-request test script for refactored code
...
Also build it with cmake (but not by default), because figuring out the
necessary linking libs is a nuisance.
2022-05-02 16:53:52 -03:00
Jason Rhinelander
5276d4ed70
RPC: Add "hf" everywhere we current return "t"
2022-05-02 16:01:26 -03:00
Jason Rhinelander
9c62bd2d3a
Merge pull request #447 from jagerman/refactor
...
Refactor
2022-04-29 16:09:55 -03:00
Jason Rhinelander
fd615323ef
Rename vendors -> external
...
This makes it consistent with other oxen-io core projects like oxen-core
and lokinet.
2022-04-29 14:17:01 -03:00
Jason Rhinelander
db393218e9
Replace boost/endian with oxenc/endian
2022-04-29 14:17:01 -03:00
Jason Rhinelander
8364ef029f
Refactor code
...
- Moves all source code under oxenss/
- Removes .../include, .../src setup
- Use include subdirectories and subnamespaces
- Various small code cleanups in common/utils code, eliminating or
splitting up unrelated functionality.
2022-04-29 14:17:00 -03:00
Jason Rhinelander
87db715b83
Merge pull request #446 from jagerman/storage-tags
...
Storage namespaces & authentication
2022-04-29 13:46:34 -03:00
Jason Rhinelander
768fd3b536
Formatting
2022-04-27 20:29:40 -03:00
Jason Rhinelander
ac94bfb965
Improve formatting
2022-04-27 14:12:15 -03:00
Jason Rhinelander
fc3836241f
s/0/Default/
2022-04-27 13:52:53 -03:00
Jason Rhinelander
7623c3a7c7
Add message namespace network tests
2022-04-27 12:25:19 -03:00
Jason Rhinelander
f613c06ee0
Network test authentication & misc improvements
...
- Add now-required authentication to all retrieve requests
- Make some requests in parallel to make tests faster
- Add more assertions around retrieved data
2022-04-27 12:25:19 -03:00
Jason Rhinelander
09405cff32
Disable buggy peer storage testing
...
This testing fails a lot, spewing erroneous crap into logs. We also
don't do anything with the test results, so just disable initiating them
for now.
2022-04-27 12:25:19 -03:00
Jason Rhinelander
91337019f1
Enforce retrieval authentication at HF19 (except for namespace -10)
...
-10 is for legacy closed group messages, which will be the only
unauthenticated-retrieval namespace starting at HF19.
2022-04-27 12:25:19 -03:00
Jason Rhinelander
84277ef035
network-tests: don't try inactive SNs
...
Don't try using inactive SNs because they will often fail and give
timeouts.
2022-04-27 12:25:19 -03:00
Jason Rhinelander
238e799d63
Implement message namespaces
2022-04-27 12:25:19 -03:00
Jason Rhinelander
e084d93ea0
Fix old pre-release pyoxenmq usage
2022-04-27 12:25:19 -03:00
Jason Rhinelander
854f8b5ebe
Bump to latest sqlite
2022-04-19 18:10:35 -03:00
Jason Rhinelander
d65e07b31e
Add oxenc linking cmake workaround
2022-04-14 00:44:34 -03:00
Jason Rhinelander
be549ed51f
Merge pull request #443 from jagerman/cli11
...
CLI11 + clang-format
2022-03-30 19:54:40 -03:00
Jason Rhinelander
b07092d32e
Merge pull request #442 from jagerman/maintenance-updates
...
Maintenance updates
2022-03-30 19:54:26 -03:00
Jason Rhinelander
306010094e
Add ci lint job
2022-03-29 19:34:12 -03:00
Jason Rhinelander
511ae36ac1
Properly add CLI11 submodule
2022-03-29 19:29:58 -03:00
Jason Rhinelander
dd35ecd5cf
Remove obsolete Makefile
2022-03-29 19:00:48 -03:00
Jason Rhinelander
828df8abe5
clang-format
...
Set up more robust clang-format rules and apply them to the codebase.
2022-03-29 18:45:13 -03:00
Jason Rhinelander
4138cb7303
Rewite the README
...
It was full of outdated information.
2022-03-29 18:45:13 -03:00
Jason Rhinelander
5e446e5ef8
Kill -DINTEGRATION_TEST mode
...
It is unused and unmaintained and was mainly for early development.
2022-03-29 18:45:13 -03:00
Jason Rhinelander
0382cf3262
Remove deprecit option
...
DISABLE_SNODE_SIGNATURE hasn't done anything for quite a while.
2022-03-29 18:45:13 -03:00
Jason Rhinelander
afcda8b446
Convert boost::program_options to CLI11
...
boost::po has terrible syntax, various weird bugs, and is the last
remaining boost dependency in the package.
This also serves as a bit of a proof-of-concept for switching to CLI11
in lokinet and oxen-core.
2022-03-29 18:45:12 -03:00