Commit Graph

767 Commits

Author SHA1 Message Date
John Smith
ca1a802b5b remove spurious error from logs 2023-09-25 22:59:41 -04:00
Christien Rioux
bd4b4233bf Merge branch 'itsTypo2023-09-25' into 'main'
Fix non-contraction it's in set_value.rs

See merge request veilid/veilid!204
2023-09-26 02:51:36 +00:00
Christien Rioux
d817d287f0 Merge branch 'possibleTypo2023-09-25' into 'main'
Fix "can possible be" in rpc_processor/mod.rs

See merge request veilid/veilid!203
2023-09-26 02:51:23 +00:00
Christien Rioux
3e8f2d315b Merge branch 'searingTypo2023-09-25' into 'main'
Fix "searing" in fanout_call.rs comment

See merge request veilid/veilid!202
2023-09-26 02:51:10 +00:00
Christien Rioux
c278330c67 Merge branch 'nodeTypo2023-09-21' into 'main'
Fix "node will node" in fanout_call.rs comment

See merge request veilid/veilid!199
2023-09-26 02:50:54 +00:00
Haley Weslin
9d60ac01d0 Fix non-contraction it's in set_value.rs
This uses "its" in place of "it's" when not a contraction.
2023-09-25 19:20:57 +00:00
Haley Weslin
073622b8bf Fix "can possible be" in rpc_processor/mod.rs
This fixes a wordo of possible for possibly.
2023-09-25 19:13:16 +00:00
Haley Weslin
531cb71d00 Fix "searing" in fanout_call.rs comment
This fixes a wordo of searing for searching.
2023-09-25 18:59:30 +00:00
Christien Rioux
38ff6f81c5 Merge branch 'feature/bytes-as-uint8arrays' into 'main'
(wasm) Treat arbitrary byte data as Uint8Array, instead of base64url marshalling.

See merge request veilid/veilid!196
2023-09-23 16:50:27 +00:00
Haley Weslin
629f521c47 Fix "node will node" in fanout_call.rs comment
This fixes "node" wordo in a comment: the logic of the software implies
"node will not" here.
2023-09-21 22:28:49 +00:00
Christien Rioux
0a7f21ce00 update keyvaluedb 2023-09-21 15:53:25 -04:00
Christien Rioux
2627a22597 32 bit fix 2023-09-20 11:31:01 -04:00
Brandon Vandegrift
80afa19678 (wasm) Treat arbitrary byte data as Uint8Array, instead of base64url marshalling. 2023-09-20 00:46:45 -04:00
Christien Rioux
0bf595c53a simplify version checking 2023-09-19 19:12:51 -04:00
Christien Rioux
563b80e31c Merge branch 'clippy-fixes' into 'main'
Clippy fixes

See merge request veilid/veilid!195
2023-09-19 00:43:41 +00:00
Christien Rioux
20451af880 more clippy 2023-09-18 19:49:57 -04:00
Christien Rioux
f596b3ce05 more clippy 2023-09-18 15:22:40 -04:00
Christien Rioux
c7d4462e0e more clippy 2023-09-17 22:12:25 -04:00
Christien Rioux
e4ee093951 clippy work 2023-09-17 20:45:30 -04:00
Christien Rioux
6438a64fc7 clippy work 2023-09-17 19:37:02 -04:00
TC Johnson
fa13f95a10
Version update: v0.2.2 → v0.2.3
- Security fix for WS denial of service
- Support for latest Rust 1.72
2023-09-17 13:21:57 -05:00
Christien Rioux
8a1260ed48 clippy --fix 2023-09-17 14:14:39 -04:00
Christien Rioux
1f5867890d fix WS security issue 2023-09-17 13:32:02 -04:00
John Smith
d60c296303 cargo upgrades 2023-09-16 21:56:19 -04:00
John Smith
e768e79961 cargo workspace resolver update for latest rust 2023-09-16 20:28:43 -04:00
TC Johnson
06c0abead8
Version update: v0.2.1 → v0.2.2 2023-09-16 17:32:16 -05:00
Christien Rioux
eda99bbd47 node search fix 2023-09-16 16:51:59 -04:00
Christien Rioux
960a4cb964 Revert "version bump fix"
This reverts commit 2d291b86b64542845bc10c092e8ad6a78e8b85df.
2023-09-16 16:51:59 -04:00
Christien Rioux
ba72aa9dd3 version bump fix 2023-09-16 16:51:59 -04:00
Christien Rioux
7f3f7c9166 clean up cargo.toml 2023-09-16 16:51:59 -04:00
John Smith
177bccbe12 windows build fix 2023-09-16 16:51:58 -04:00
Christien Rioux
ad47e400ed build fixes 2023-09-16 16:51:58 -04:00
Christien Rioux
3a4c211e85 resolve work 2023-09-16 16:51:58 -04:00
John Smith
dad8e50939 oops 2023-09-16 16:51:58 -04:00
Christien Rioux
c01be8f62d capnp and protoc versioning 2023-09-16 16:51:57 -04:00
Christien Rioux
17ea68fb84 connection fix 2023-09-14 15:51:09 -04:00
Christien Rioux
bce74026d3 Merge branch 'more-debug-commands' into 'main'
Debugging

See merge request veilid/veilid!188
2023-09-14 18:06:34 +00:00
Christien Rioux
86aae741e0 reverse connect for wasm nodes 2023-09-13 17:00:39 -04:00
Christien Rioux
671f349578 conn table 2023-09-12 21:40:13 -04:00
Brandon Vandegrift
c2c607efac (wasm) Better TS types for serialized structs, RoutingContext++, more crypto fns 2023-09-11 18:42:05 -04:00
Christien Rioux
5b3d589bf2 print max 2023-09-10 20:36:39 -04:00
Christien Rioux
b3294d905d rename 2023-09-10 20:30:29 -04:00
Christien Rioux
6e26fb4c8f more nodeinfo 2023-09-10 20:16:57 -04:00
Christien Rioux
a5e17a0d65 appreply 2023-09-10 17:07:22 -04:00
Christien Rioux
3fdf12e536
Merge branch 'target_env_musl' into 'main'
Adding musl target env

See merge request veilid/veilid!177
2023-09-10 21:04:00 +00:00
Christien Rioux
28b08034f5 appmessage/call commands 2023-09-10 15:53:19 -04:00
Christien Rioux
b51e14783b resolve node 2023-09-10 11:56:50 -04:00
Christien Rioux
607b595807 fixes 2023-09-10 11:24:52 -04:00
Christien Rioux
2ff2ab7aa8 debugging for public address 2023-09-09 22:34:42 -04:00
Christien Rioux
60a7e90712 dht fixes 2023-09-09 21:44:16 -04:00
Christien Rioux
07f92b6e3f more setvalue fixes and concurrency cleanup 2023-09-09 18:35:25 -04:00
Christien Rioux
853976789f fix crash and clean up record data size housekeeping 2023-09-09 13:30:48 -04:00
Christien Rioux
36957d84f1 fix bug 2023-09-08 20:50:05 -04:00
Christien Rioux
0aa7cf5ef2 fanout work 2023-09-08 20:38:31 -04:00
Linus Gasser
0ac6fc7dc7 Adding musl target env 2023-09-08 19:23:46 +02:00
Christien Rioux
dc17e25bac Fixes #297
WASM build for new public address detection code
2023-09-06 17:06:33 -04:00
Christien Rioux
bfc42cdd8e clean up ui
pause routing table tasks when making routing domain changes
2023-09-06 13:20:36 -04:00
Christien Rioux
b325c82b9a more parallel 2023-09-06 10:02:55 -04:00
Christien Rioux
dfcdcf2364 xfer 2023-09-06 10:02:55 -04:00
Christien Rioux
d5a4be8a36 missing file 2023-09-06 10:02:55 -04:00
Christien Rioux
dac8e75229 xfer 2023-09-06 10:02:55 -04:00
Christien Rioux
3dfb612e6f fix ws 2023-09-06 10:02:55 -04:00
Christien Rioux
80b2e7b9da pad work 2023-09-06 10:02:55 -04:00
Christien Rioux
1b5934dad4 public address detection refactoring 2023-09-06 10:02:55 -04:00
John Smith
8d694f20cd fix async std test and make windows test script work 2023-09-06 09:53:28 -04:00
Christien Rioux
4b298f43d4
Merge branch 'settingTypo2023-09-05' into 'main'
setting not settings: struct.RoutingContext.html

See merge request veilid/veilid!173
2023-09-06 12:59:45 +00:00
Haley Weslin
58524657fe setting not settings: struct.RoutingContext.html
"by settings ‘force_refresh’" needs to use the "setting" word.

After changing it, build_docs.sh fixes rustdoc for
veilid_core/struct.RoutingContext.html
2023-09-05 16:05:18 +00:00
Brandon Vandegrift
93963e9d08 (wasm) Cleanup and refactoring, add TableDB transactions, copy over docs for JSDoc. 2023-09-04 14:04:57 -04:00
Brandon Vandegrift
ca11f6075d (wasm) Add VeilidCrypto class, refine interfaces for VeilidRoutingContext 2023-09-03 23:27:20 -04:00
Brandon Vandegrift
c5d7922fc5 Add VeilidRoutingContext class for WASM 2023-09-03 23:27:20 -04:00
Christien Rioux
9aeec3cfa8 build fixes and cleanup 2023-09-03 23:27:20 -04:00
Brandon Vandegrift
779532b624 Add new VeilidTable and VeilidClient to WASM API
These new interfaces have been reworked (compared to the original API) to emit (mostly) proper TypeScript types.
2023-09-03 23:27:08 -04:00
Brandon Vandegrift
1b20037053 Setup for TypeScript type gen for WASM using Tsify
- Includes breaking changes to the WASM API surface, since it now accepts objects instead of stringified JSON.
2023-09-03 23:27:08 -04:00
TC Johnson
65826b219b
Version update: v0.2.0 → v0.2.1 2023-09-03 19:45:12 -05:00
John Smith
71f91998b2 more fork 2023-09-03 10:23:41 -04:00
John Smith
896df0bb97 more forking 2023-09-03 10:08:04 -04:00
John Smith
fd6e9e22c2 crate fixes 2023-09-03 09:53:00 -04:00
Christien Rioux
7d71b50170
Merge branch 'rustdocTypo2023-09-02' into 'main'
Remove stray by: veilid_core/struct.VeilidAPI.html

See merge request veilid/veilid!166
2023-09-03 00:18:16 +00:00
Christien Rioux
b3354194e0 repo fix 2023-09-02 18:50:12 -04:00
Christien Rioux
a77f80a8a9 repo fixes 2023-09-02 15:47:19 -04:00
Christien Rioux
20f55745b0 add descriptions 2023-09-02 12:28:31 -04:00
TC Johnson
2c46a159a3
Version update: v0.1.10 → v0.2.0 2023-09-02 09:45:56 -05:00
Christien Rioux
90772728c2 bumpversion fixes 2023-09-02 10:41:59 -04:00
Haley Weslin
3cfaff9cbb Remove stray by: veilid_core/struct.VeilidAPI.html
"specified by at startup time" has an extra "by" (wrong grammar)

After changing it, build_docs.sh fixes rustdoc here:
target/doc/veilid_core/struct.VeilidAPI.html
2023-09-02 05:22:51 +00:00
Christien Rioux
709ec4543b change visibility of dhcache 2023-09-01 21:18:45 -04:00
Christien Rioux
246056913e doc work 2023-09-01 21:13:05 -04:00
Christien Rioux
c377a59278 fix tests 2023-09-01 18:59:43 -04:00
Christien Rioux
ffcf16711b android fixes 2023-09-01 17:44:42 -04:00
Christien Rioux
d68a543800 fix ios 2023-08-29 17:50:25 -05:00
Christien Rioux
e302b764d0 docs and tests work 2023-08-29 15:15:47 -05:00
Christien Rioux
3125c19f02 doc work 2023-08-27 16:39:50 -05:00
Christien Rioux
8c366387eb Merge branch 'fix-set-record-data-size-call' into 'main'
call set_record_data_size with accumulated size

See merge request veilid/veilid!155
2023-08-27 16:07:38 +00:00
Christien Rioux
59dda0febe Merge branch 'api_startup_json_skip_all' into 'main'
api_startup_json: use 'skip_all'

See merge request veilid/veilid!154
2023-08-27 15:58:00 +00:00
Rivka Segan
5dd0a3793b call set_record_data_size with accumulated size
set_subkey corrupts record_data_size in a Record struct by calling
set_record_data_size with a value that depends only on the length of
the new subkey value. This leads to various undesirable outcomes, such
as: applications can write more than MAX_RECORD_DATA_SIZE without
encountering the intended "veilid.error.VeilidAPIErrorGeneric:
label='Generic' message='dht record too large'" error message, and
"panicked at 'attempt to subtract with overflow'" (i.e., an attempt to
set a negative value of a size) if a subkey's new length is less than
a subkey's old length. Typically, record_data_size in a Record struct
will be incorrect if a value was set for more than one subkey. Some
users might want to start over with a table_store that doesn't have
any incorrect record_data_size values.

The issue begins here:
6f71c6a00a/veilid-core/src/storage_manager/record_store.rs (L583-L586)

and is triggered here:
6f71c6a00a/veilid-core/src/storage_manager/record_store.rs (L613-L615)

It should be clear that new_record_data_size is only related to the
subkey that is currently being set. The amount of data in the record,
before set_subkey is called, is ignored. It appears that
new_total_size, not new_record_data_size, was intended to be used for
set_record_data_size, and this change succeeds for me in limited
testing but I don't have a comprehensive test suite.

One way to reproduce is by running the code from
https://gitlab.com/vatueil/veilid-file on a greater than 1 MB file
while watching variable values within
veilid-core/src/storage_manager/record_store.rs. For example: "poetry
run file put /usr/bin/tcpdump" (1.3 MB on Ubuntu 23.04). With the
original Veilid code, each of the dozens of subkey writes is checking
whether a roughly 32K value is greater than 1048576, it never is, and
thus there is never a "dht record too large" error. With the patch in
this MR, each of the dozens of subkey writes is checking whether an
ever-increasing value is greater than 1048576, it eventually is, and
the "dht record too large" error is printed. With the patch, one can
work with smaller files, e.g., do "poetry run file put /usr/bin/ssh"
(0.8 MB) followed by "poetry run file get VLD0:<_insert_key_here_>
ssh-copy" and the retrieved file ssh-copy is identical to
/usr/bin/ssh.

The more detailed behavior is that the modified code has
record.total_size of 350 on the first iteration, then 33596, 66842,
100088, etc. The original code also has record.total_size of 350 on
the first iteration, but then stays at 33246 forever (33246 is the
user-supplied subkey size of 32768, plus 128, plus the minimum record
size of 350),
2023-08-26 07:08:47 +00:00
Bruno Bigras
ff6f04be8c api_startup_json: use 'skip_all' 2023-08-26 02:01:57 +00:00
Christien Rioux
248b21a951 proper relay switch, fix wasm 2023-08-24 18:59:33 -04:00
John Smith
6bb35dd6a6 skip publishing relay for fullconenat 2023-08-24 18:35:37 -04:00
John Smith
945215aba1 speed up public address detection 2023-08-24 18:35:37 -04:00
John Smith
4eca53fd9b direct port forward detection 2023-08-24 18:35:37 -04:00
Christien Rioux
654b5dfebc simplify code 2023-08-24 18:35:37 -04:00