Commit Graph

343 Commits

Author SHA1 Message Date
onyinyang 8c414ed2ba Add License to Lox Distributor 2023-07-25 15:36:58 +00:00
onyinyang 7f92ea6833
Formatting fixes for entire project 2023-07-19 10:37:09 -04:00
onyinyang d98ae40879
Fix formatting 2023-07-19 10:30:35 -04:00
Cecylia Bocovich 7a24fdfa06
Update lox distributor to use most recent rdsys_backend
The structure of the ResourceDiff has been changed, so the lox
distributor has to modify how it parses the diff.
2023-06-29 13:11:44 -04:00
Cecylia Bocovich aa785419d8
Update backend_api to account for possibly null resource vector 2023-06-29 13:11:44 -04:00
onyinyang 607466b949
Clean up clippy fixes 2023-06-23 13:04:15 -04:00
onyinyang 369d830bca
All tests passing for HashMap implementation 2023-06-23 08:30:14 -04:00
onyinyang 69e4579450
Change encbuckets to HashMap with EncryptedBucket 2023-06-23 08:30:14 -04:00
onyinyang 610a579731
Fix up bridge_unreachable 2023-06-23 08:24:28 -04:00
onyinyang 0ede04164b
Fix up replace function, remove recyclable 2023-06-23 08:24:28 -04:00
onyinyang 607ecd89c7
Converting bridgetable vectors to HashMaps 2023-06-23 08:24:28 -04:00
onyinyang 73c3ef8728
Change lox package to lox-library for consistency 2023-06-23 08:22:15 -04:00
onyinyang 221f490d26
Update lox-distributor to handle gone resources more correctly 2023-06-16 17:18:19 -04:00
onyinyang 2e4090e21c
Add time check to gone resource handling 2023-06-16 17:18:19 -04:00
onyinyang d1710d2f80
Add lastpassed to rdsys-backend-api 2023-06-16 17:18:18 -04:00
Cecylia Bocovich a57778a232
Remove needless arbitrary self type 2023-06-16 15:59:11 -04:00
Cecylia Bocovich 67639e2f11
Remove needless range loops 2023-06-16 15:59:11 -04:00
Cecylia Bocovich 3136a8ba85
Remove unsafe blocks that aren't needed 2023-06-16 15:59:11 -04:00
onyinyang 84d7691ab8
Separate out tests to improve readability 2023-06-16 12:45:27 -04:00
onyinyang 9c959486be
Add better error handling for bad requests 2023-06-16 12:02:05 -04:00
onyinyang e1f7cda652
Add checkblockage test with changes to lox_context 2023-06-16 12:02:04 -04:00
onyinyang e7db9e7151
Add more tests for lox-distributor handle 2023-06-16 12:01:56 -04:00
onyinyang 54c5a837ad
Add more common functions to lox_utils, clean up lox_wasm 2023-06-09 18:31:35 -04:00
onyinyang 003d9c886b Add pipeline 2023-06-08 16:58:22 +00:00
onyinyang c7c5f57864
Move validate function to lox_utils 2023-06-08 12:26:37 -04:00
onyinyang b016bc9742
Move credential helpers out of lox-wasm 2023-06-07 16:10:37 -04:00
onyinyang 5ac0fc7bef
Fixup cargo imports to address stdweb issue 2023-06-07 16:02:02 -04:00
onyinyang 16ced3c5e0
Add other cargo fmt changes 2023-06-06 19:58:35 -04:00
onyinyang dc8774f5b8
Add Test for lox-distributor 2023-06-06 19:58:34 -04:00
onyinyang af9fc6dfd1
Add Lox-utils 2023-06-05 15:24:06 -04:00
onyinyang e65c16ab0b
Merge branch 'lox-wasm' 2023-06-05 15:16:06 -04:00
onyinyang 21ff749e4f
Update lox-wasm Cargo.toml for workspace 2023-06-05 15:14:43 -04:00
onyinyang aac0e52e43
Merge branch 'rdsys-backend' 2023-06-05 15:08:36 -04:00
onyinyang 4595cc9f8d
Merge branch 'lox-library' 2023-06-05 15:07:22 -04:00
onyinyang ed0cfbebf5
Update rdsys-backend Cargo.toml for workspace 2023-06-05 15:00:30 -04:00
onyinyang de5e7a0428
Merge 'rdsys-backend/main' into lox-workspace 2023-06-05 14:56:41 -04:00
onyinyang 231a1ed9f4
Update lox-distributor Cargo.toml for workspace 2023-06-05 14:51:01 -04:00
onyinyang 5b994de577
Merge 'lox-distributor/main' into lox-workspace 2023-06-05 14:46:28 -04:00
onyinyang 5ac8e703cf
Update lox-library Cargo.toml for workspace 2023-06-05 14:39:10 -04:00
onyinyang 6372e894ae
Adjust replace_with_new to fit with updates to Lox library 2023-05-17 12:46:09 -04:00
onyinyang 3e3f50c215
Refactors lox-distributor to make division of tasks clearer 2023-05-17 12:19:28 -04:00
onyinyang 607e1a425d
Remove performance statistics tests for pipeline 2023-05-15 20:18:20 -04:00
onyinyang a9d5f31870
Add test pipeline 2023-05-15 20:17:53 -04:00
onyinyang 8d0f570627
Adds test and fixes for allocate bridges 2023-05-15 18:57:23 -04:00
onyinyang 45bb5756df
Minor fixes 2023-05-15 12:53:32 -04:00
onyinyang 6bff64f283
Adds replace_bridge test and fixes bugs in the function 2023-05-15 12:32:22 -04:00
onyinyang 0d317cea8c
Fix replace bridge to align with changes to lox-distributor 2023-05-11 17:02:33 -04:00
onyinyang da4d7c962f
Add fix for failure to replace bridges
- Change text for disabled functionality for blocked bridges
2023-05-11 16:00:09 -04:00
onyinyang 508eaf3bdd
Add functions to recycle and allocate extra bridges 2023-05-09 13:00:40 -04:00
onyinyang 13d1bc8b1d
Add leftover bridges to bridgedb 2023-05-08 20:30:30 -04:00
onyinyang 292827fa63
Add handling of gone, not blocked, resources 2023-05-08 12:52:34 -04:00
onyinyang 83c7916805
Added bridge replacement 2023-05-08 12:31:36 -04:00
onyinyang 1adf145671
Make bucket size match constant in Lox library for all functions 2023-04-10 12:16:19 -04:00
onyinyang ba7116aa16
Removing test function 2023-04-10 11:24:53 -04:00
onyinyang 4695a11702
Ensure that left over bridges (not grouped into a bucket) are properly handled 2023-04-05 16:26:23 -04:00
onyinyang d2bd91e0fe
Update bridgeline sizes to match lox library 2023-04-04 19:34:35 -04:00
onyinyang 11d4678be8
Update fingerprint to match UID from rdsys 2023-04-04 18:39:28 -04:00
onyinyang dafe1b0a1d
Add get_uid function for API resource 2023-04-04 16:10:16 -04:00
onyinyang a3a693d45a
Revise bridge bytes size to 300 2023-04-03 12:06:20 -04:00
onyinyang 362996c4f7
Add fingerprint field to Bridgeline 2023-04-03 11:47:11 -04:00
onyinyang a206917e92
Add update bridge function 2023-03-27 12:36:57 -04:00
onyinyang 562b74c274
Clean up code and improve readability 2023-03-24 13:16:26 -04:00
onyinyang b0038720e0
Make all requests POST requests to match server and browser handling 2023-03-24 13:02:42 -04:00
onyinyang 22ef5d157d
Updating bridges to make sense 2023-03-24 11:31:01 -04:00
onyinyang e257a05c99
Add bridge update 2023-03-23 13:21:04 -04:00
onyinyang f08520de84
Update function definition for bridge update 2023-03-23 11:00:10 -04:00
onyinyang 3f5d497573
Incorporate impl Stream for ResourceStream changes from rdsys-api-backend 2023-03-22 19:14:56 -04:00
Cecylia Bocovich eb43414574 Only return Poll::Pending if the inner future returns it
The waker stored in the future will only wake up and re-poll the stream
if the call to future returned Poll::Pending. Because of this, if we
didn't receive enough data to reconstruct the ResourceDiff, we need to
loop and poll the inner future again rather than return Poll::Pending
ourselves.
2023-03-22 17:41:08 -04:00
Cecylia Bocovich e1e5e798b6 Use a ReusableBoxFuture to store ReceiverStream 2023-03-22 15:05:05 -04:00
Cecylia Bocovich 0b0324c487 Change ResourceStream from an Iterator into a Stream 2023-03-21 17:37:15 -04:00
onyinyang 490ce2f19c
Add distributor logic for bridge updates from rdsys, handling for unsuccessful removals/updates 2023-03-20 12:42:40 -04:00
onyinyang 366111e28f
Add bridge_update stub 2023-03-20 12:33:26 -04:00
onyinyang 0476a88419
Add comments 2023-03-20 11:53:10 -04:00
onyinyang 9e78a90541
Adds graceful shutdown for all tasks, rdsys stream inconsistent shutdown 2023-03-17 10:41:32 -04:00
onyinyang 9616b95b5d
Update README 2023-03-15 15:42:04 -04:00
onyinyang c74da3a078
Server responds to requests and processes bridgelines from rdsys 2023-03-15 15:21:03 -04:00
onyinyang 3b0c8ab5b6
Implements server functionality, next get thread working 2023-03-15 12:38:38 -04:00
onyinyang 34f1d0399f
Refactoring to add a channel to pass messages to client 2023-03-13 18:05:52 -04:00
onyinyang c715d80632
[WIP] Progress on bridgedb update through channel update 2023-03-10 16:54:31 -05:00
onyinyang b2642d353c
Add add_invitation_bucket for new bridgelines and remove gone bridgelines 2023-03-10 15:21:27 -05:00
onyinyang 42f5c0e764
Increase bridge info size 2023-03-10 12:02:45 -05:00
onyinyang be861baf36
Add parsing resource into Lox BridgeLine 2023-03-09 19:01:01 -05:00
onyinyang 00aa9b0ab1
Revert "Add fields to BridgeLine"
This reverts commit 4a014725cdae582401f5d166a722317ed45b8bfe.
2023-03-09 18:18:02 -05:00
onyinyang a76fdc98b9
Add fields to BridgeLine 2023-03-09 16:59:20 -05:00
onyinyang a7cf09f812
Read json config from commandline file, progress on channels 2023-03-03 17:25:43 -05:00
onyinyang 1018dd827f
Add resourcediff stream stub for rdsys integration 2023-03-03 14:09:13 -05:00
Cecylia Bocovich 9e2d341751 Allow POST requests for invite tokens 2023-03-01 20:05:51 -05:00
onyinyang a9de52a266
Blockage Migration tested and fixed up 2023-02-28 12:57:57 -05:00
onyinyang fd4f715ad9
REVERT BEFORE USING: make BA today function, bridge_table public for testing 2023-02-28 12:01:00 -05:00
onyinyang dd00f99958
Add blockage migration (untested) 2023-02-27 16:58:06 -05:00
onyinyang 1bac11f1d0
Refactor Lox Credential, Add check blockage 2023-02-27 16:46:01 -05:00
onyinyang 8faf4fc273
Add redeem invite 2023-02-27 14:17:26 -05:00
onyinyang 7bf91edbaa
Add redeem invite 2023-02-27 14:17:07 -05:00
onyinyang 944cbb77e4
Add issue invitation 2023-02-24 19:11:44 -05:00
onyinyang fdaa75f43d
Add issue invitation 2023-02-24 19:10:38 -05:00
onyinyang 66f7ae4c0d
Add up to level up 4 2023-02-23 22:16:45 -05:00
onyinyang 01a6cb37e1
Add working reachability cred, test credential aging needs work 2023-02-23 13:18:11 -05:00
onyinyang a5b6ec8b93
Add request handling for encrypted bridge table and level up 2023-02-23 01:00:53 -05:00
onyinyang d8cdf3ccab
Logic for level up, reachability credential unimplemented 2023-02-14 17:08:09 -05:00
onyinyang f44ac0ae9f
Refactor js to remove duplicate code 2023-02-14 14:45:52 -05:00
onyinyang 984bbe9370
Add trust migration server handling 2023-02-13 23:58:38 -05:00
onyinyang 944c3634ca
Add Trust migration protocol 2023-02-13 23:58:07 -05:00
onyinyang 56bc148db1
Update date to 1 past threshold for upgrade 2023-02-13 16:29:34 -05:00
onyinyang 11071756d4
Add advance days for testing purposes 2023-02-13 16:28:24 -05:00
onyinyang 0a29265c1f
Solve time issue, add time for testing 2023-02-10 16:18:54 -05:00
onyinyang 080d5879b1
Adds trust promo logic, time issue 2023-02-07 00:45:54 -05:00
onyinyang 0e960d9156
Make all states serializable 2023-02-06 19:47:04 -05:00
onyinyang f4e34c06b1
Add server side for trust promo requests 2023-02-06 17:41:26 -05:00
onyinyang 745b6673cb
Clean up messages, full first credential handling 2023-02-06 13:58:24 -05:00
onyinyang 9f0d0203a0
Fix issue with public key request 2023-02-06 13:57:23 -05:00
onyinyang 04b4d50ef9
Change keys to string to be handled properly in index.js 2023-02-01 00:44:18 -05:00
onyinyang 8cc9d3d5d3
Change pubkey passing, handling credentials still broken 2023-02-01 00:42:49 -05:00
onyinyang 77d4f8b164
Handle POST requests and open invite credential request 2023-01-30 18:14:22 -05:00
onyinyang dfa2ae4c6f
Handle open invite credential 2023-01-30 18:13:17 -05:00
Cecylia Bocovich 1da6e245cc Formatting and documentation fixes 2023-01-30 17:05:38 -05:00
onyinyang 832a252318
Fix serialization of request/state 2023-01-30 16:03:12 -05:00
Cecylia Bocovich 46d51315b6 Use rust listing in markdown 2023-01-30 15:25:41 -05:00
Cecylia Bocovich 6eb8f575ca Add proto.rs after module refactor 2023-01-30 15:24:58 -05:00
Cecylia Bocovich 0f60fabae6 Add README 2023-01-30 15:24:47 -05:00
Cecylia Bocovich 685541176b Add documentation 2023-01-30 15:23:01 -05:00
Cecylia Bocovich 04e7caef31 Refactor modules 2023-01-30 15:08:30 -05:00
Cecylia Bocovich 9d448b00b4 Return an iterator over ResourceDiff items
Rather than returning a Receiver<Bytes>, instead return a ResourceStream
struct that implements the Iterator trait so callers can simply iterate
over the ResourceDiff items received.
2023-01-30 15:03:14 -05:00
Cecylia Bocovich c89aa4a9f9 Add function to start a resource-stream connection
At the moment the start_stream function very simply prints out each
response as it arrives.
2023-01-29 14:18:39 -05:00
onyinyang 03008449fa
Handle request and state more reasonably 2023-01-26 14:16:41 -05:00
onyinyang dd1b971914
Fix javascript to handle values properly 2023-01-26 00:17:14 -05:00
onyinyang 61940bdfe3
Sends pubkeys on request 2023-01-25 15:49:40 -05:00
onyinyang 0f0f13df0d
Tentative structure for request handler 2023-01-25 15:49:40 -05:00
onyinyang f80a6c80eb
Adds bridge authority and placeholder buckets 2023-01-25 15:41:34 -05:00
onyinyang 235eb90d6e
Change calls to match server 2023-01-25 15:02:53 -05:00
onyinyang d473b53745
Add wasm_bindgen for handling new lox credential 2023-01-25 15:02:39 -05:00
onyinyang 5d60807a42
Updates open_invite to return request and state 2023-01-25 15:02:23 -05:00
Cecylia Bocovich 64247c1ceb Add more tests for resource serialization 2023-01-23 12:58:41 -05:00
Cecylia Bocovich d5c98510db Run `cargo fmt` 2023-01-20 16:12:29 -05:00
Cecylia Bocovich c837a13121 Initial commit 2023-01-20 16:01:03 -05:00
onyinyang 9ce2a81fe7
Make credentials serializable for Tor JS bindings
Author:    onyinyang <onyinyang@users.noreply.github.com>
2023-01-18 15:02:28 -05:00
onyinyang f7002632f7
Make state serializable for Tor JS bindings
Author:    onyinyang <onyinyang@users.noreply.github.com>
2023-01-18 15:02:28 -05:00
Cecylia Bocovich e117dc5540 Refactor the xhr so other requests can reuse the code 2023-01-13 14:23:35 -05:00
Cecylia Bocovich 21a29a09eb Put lox test script into its own file 2023-01-13 14:16:37 -05:00
Vecna 3945ed5b60 Make BridgeAuth (de)serializable 2022-11-22 19:15:09 -05:00
Cecylia Bocovich bb5bdac588 Added README 2022-11-15 22:05:02 -05:00
Cecylia Bocovich b97310c35b Add Access-Control-Allow-Origin header 2022-11-15 22:04:04 -05:00
Cecylia Bocovich 9de53da203 Instructions and a simple test of the bindings 2022-11-15 22:03:30 -05:00
Cecylia Bocovich ebae7fb600 Improve error handling and add rand dependency
This makes panics more visible in the console and fixes a weird bug
where the rand package was throwing an error.
2022-11-15 21:57:49 -05:00
Cecylia Bocovich 9992e3c73c Simple lox server
Right now only issues open invite tokens
2022-11-15 19:11:16 -05:00
Vecna 2cd4d96b73 Make BridgeDb (de)serializable 2022-11-14 13:56:13 -05:00
Vecna b607f3bc37 Make Issuer Keys (de)serializable. 2022-11-13 11:33:57 -05:00
Cecylia Bocovich 6e3525ac4c Add .gitignore 2022-11-10 11:05:46 -05:00
Cecylia Bocovich 48b8a986ef Avoid use of * with use 2022-11-10 11:04:20 -05:00
Cecylia Bocovich fcabba5e6e Update Cargo.toml 2022-11-10 11:00:28 -05:00
Cecylia Bocovich ff905db53a First attempt at binding the open invite function 2022-11-09 14:40:53 -05:00