yosoyubik
ab116653e8
wip fix dangling bone
2022-03-11 10:21:12 +01:00
lukechampine
53a0c87cdb
ames: add sendkeys-packet
2022-03-02 00:56:57 -05:00
lukechampine
df6318acd0
ames: fix comet self-attestation handling
2022-03-02 00:52:48 -05:00
lukechampine
1044d42a15
ames: don't enqueue blobs sent to unknown comets
2022-03-02 00:46:18 -05:00
Liam Fitzgerald
b4da246f01
strandio: add +keen gate
2022-02-24 12:03:07 -06:00
Liam Fitzgerald
f1c24c07dd
ames: refactor to remove unused state
2022-02-23 16:00:56 -06:00
Liam Fitzgerald
c16aaae201
ames: correct behaviour for %yawn
2022-02-23 16:00:56 -06:00
Liam Fitzgerald
479e060e32
ames: add +load for remote scry
2022-02-23 16:00:56 -06:00
Liam Fitzgerald
5baa1b8318
ames: add fast retransmit
2022-02-23 16:00:55 -06:00
Liam Fitzgerald
4be4e9a7a0
ames: fix keen ducts
2022-02-23 16:00:55 -06:00
Liam Fitzgerald
5f5092168f
ames: fix sig + data catenation
2022-02-23 16:00:55 -06:00
Liam Fitzgerald
22f3e49823
ames: add |yawn, fix duct wrangling
2022-02-23 16:00:31 -06:00
Liam Fitzgerald
6bd6029f57
ames: use finger trees for packet storage
2022-02-16 15:35:59 -06:00
Liam Fitzgerald
a36dc3aaff
ames: per-lane congestion control
2022-02-15 08:47:38 -06:00
Ted Blackman
b2051fcc2b
fine: WIP second list for performance
2022-02-14 10:34:26 -06:00
Liam Fitzgerald
e97d99275b
ames: congestion control for remote scry
2022-02-11 19:30:40 -06:00
fang
a5b16b1673
fine: consolidate duplicate logic
...
Further merge cleanup.
2022-02-04 13:36:32 +01:00
fang
47feec3ecc
Merge branch 'lf/ames-notifs' into m/scry-vane
2022-02-03 22:00:24 +01:00
fang
a8574df401
ames: retrieve pk from old crypto core on load
...
Since we cannot scry the key out of jael during load, and the
alternative is defering this logic through the larval core in some way,
we simply include the type for the old acru interface, letting us reuse
the old core to initialize the new one.
2022-02-03 13:49:38 +01:00
fang
39959942d2
ames: use +safe:as:crub instead of +veri:ed
...
+safe now exists to wrap that, so we should use it instead of deriving
the relevant key and calling +veri:ed directly.
2022-02-02 22:16:16 +01:00
fang
5776226a6c
lull: add acru arms for simply signing & authing
...
Instead of exporting keys so that caller can do this themselves, we
expose arms for signing and authenticating that produce and operate on
just the signature, without mangling it into the message.
2022-02-02 21:52:48 +01:00
fang
83e315cccd
lull: add arms to ex:acru for separate keys
...
We may want _just_ the encryption key, or _just_ the signing key.
2022-02-02 20:10:30 +01:00
fang
1302c5fa0b
fine: fix broken +full:keys callsite
...
Straggler from last commit about data type consistency.
2022-02-02 19:55:20 +01:00
Liam Fitzgerald
9dad96332b
ames: remove logging
2022-02-01 20:50:02 -06:00
Liam Fitzgerald
6ee2e1626f
ames: unify path format
2022-02-01 20:48:04 -06:00
Liam Fitzgerald
1eaad36d4d
ames: working notifications
2022-02-01 20:30:11 -06:00
Liam Fitzgerald
7205625abf
wip
2022-02-01 13:25:28 -06:00
fang
c72c187edd
fine: use $@(~ (cask)) consistently
...
It's what ends up in the packet, probably better than passing units and
converting them all over.
2022-02-01 12:02:47 +01:00
fang
4bea69bc7d
fine: verify life & signatures of packets & msgs
...
In addition to doing signing & verification consistently with each
other, we now handle the "no data" case sanely.
Still uses the wrong keys though.
2022-02-01 11:55:04 +01:00
fang
b42dc477c5
fine: move into per-event core
...
This is an obviously more ergonomic factoring.
2022-01-28 23:54:01 +01:00
fang
fb72b7df7d
fine: set receiver life in request packet
2022-01-28 23:11:27 +01:00
fang
709dd75d74
fine: track pending requests for unknown peers
2022-01-28 23:09:50 +01:00
fang
769d10fdd4
fine: use keys from ames state instead of jael
2022-01-28 14:30:59 +01:00
fang
4c045a9c4f
ames, fine: minimal compilable unification
2022-01-27 14:32:49 +01:00
fang
dd4eb87f42
ames: move packet en/decoding into lull
...
By moving this behavior for packets with ames-style headers into lull,
other vanes that want to do protocols in similar style (like the upcoming
%fine vane) can reuse the logic here.
Note that we parameterize the main en- and decoding functions, so that
we may pass in the "is ames" flag and protocol versions as appropriate
to the context.
2022-01-20 01:59:43 +01:00
yosoyubik
3d943ec201
ames: ignore missing peer-state on-publ-sponsor
2022-01-18 20:34:32 +01:00
Ted Blackman
bbc80f9d45
zuse,ames: ^^sein:title
2021-09-25 16:52:53 -04:00
Ted Blackman
bce8dfd477
ames: pop the next packet, not the first packet again
2021-08-28 23:01:15 +03:00
Ted Blackman
e2fd0b61e4
ames: |ames-prod to reset congestion control
2021-08-28 22:48:23 +03:00
Philip Monk
e2e4d28548
Merge pull request #4788 from urbit/la/sys-fast-orm
...
zuse: add +all, +any, +got, +has, +run, and +tab to ++ordered-map, jet hints, and reorganize alphabetically
2021-05-18 10:24:31 -07:00
Ted Blackman
4c94c7edd4
ames: expire direct lanes faster after inactivity
2021-05-03 17:33:56 -04:00
Logan Allen
dd6eeccdae
zuse: update names of +subset to +lot, +peek to +pry, remove unnecessary comments
2021-04-28 16:12:46 -05:00
Logan Allen
6b0dc98952
ames: reflect update of name +traverse -> +dip
2021-04-20 15:04:28 -05:00
Joe Bryan
19d5bd0de4
ames: gate "fragment crashed" printf on msg.veb
2021-03-18 17:04:08 -07:00
Philip Monk
6215137ed5
Merge remote-tracking branch 'origin/ted/ordered-map-fix' into release/next-sys
2021-03-03 18:20:33 -08:00
Philip Monk
6e3d1680a7
Merge remote-tracking branch 'origin/master' into release/next-sys
2021-03-03 17:54:57 -08:00
Philip Monk
413413b70c
zuse: traverse always delete
2021-02-26 21:03:20 -08:00
Philip Monk
5ac70ec974
ames: reset num-live to actual number of live packets
2021-02-26 20:53:27 -08:00
Ted Blackman
04ea4c78b2
ames: +on-hear-shut remove dead code
2021-02-26 16:55:26 +10:00
Ted Blackman
ccea39f865
ames: fix comet handshake
2021-02-26 16:55:24 +10:00
Ted Blackman
eb56fbd3f4
ames: shorten error printing; update pill
2021-02-19 11:54:34 -05:00
Ted Blackman
473a520b27
ames: more informative printing
2021-02-18 21:47:02 -05:00
Ted Blackman
6234b56ac1
ames: cache message +jam in +on-memo
2021-01-20 15:29:45 -05:00
Philip Monk
e5d4230f6b
ames: print on crashing %done
...
This is guaranteed to produce a stuck flow if the error isn't transient,
so this will be good info to get.
2020-12-11 16:49:55 -08:00
Philip Monk
175ce28bb7
ames: tag verb printfs
2020-12-11 16:45:13 -08:00
Philip Monk
595efabf6c
ames: recover from %strange-current
2020-12-11 16:43:13 -08:00
Joe Bryan
2b8d83e255
ames: remove "larva: drain" printf (too noisy)
2020-12-08 03:32:29 -08:00
Joe Bryan
aaf506ce8a
Merge branch 'jb/motion' into jb/motion-merge
...
* jb/motion:
pill: solid
zuse: remove %crud from vane-task
arvo: full vane names in $sign
aqua: build again (still broken)
arvo: reform of the scry reform
2020-12-07 18:52:51 -08:00
Joe Bryan
5dd3e148b8
zuse: remove %crud from vane-task
2020-12-07 18:01:48 -08:00
fang
d98c59e73a
zuse: lift moves out of +able
2020-12-08 01:47:06 +01:00
Joe Bryan
17736990ed
arvo: full vane names in $sign
2020-12-07 16:30:22 -08:00
Joe Bryan
98f2b8c6b3
arvo: reform of the scry reform
2020-12-07 13:52:12 -08:00
Joe Bryan
5a82f1d4c0
Merge branch 'na-release/candidate' into jb/motion
...
* na-release/candidate: (36 commits)
ames: don't crash on forward-lane scry
jael: cleanup per review
jael: don't signal breach if first hearing of ship
pill: update
vere: compile
lens: don't de-base64
vere: make import flow not use base64 encoding
version: strip trailing newline
pill: mainnet
Revert "zuse: change to ropsten"
chat-hook: fix another poke-import issue
chat-hook: fix poke-import issue
apps: reorder maps, sets, and jugs
apps: reorder maps, sets, and jugs
kiln: add base-hash and our scries
lens: fix change lost in merge
graph-store: leave try-rejoin wire when subscription succeeds
graphs: import-export
chat: import/export
invites: import/export
...
2020-12-07 00:27:58 -08:00
Joe Bryan
ff06ccd2b9
arvo: completes scry reform
2020-12-06 03:33:43 -08:00
Joe Bryan
5bc6d38437
arvo: updates vane interface
2020-12-06 03:33:43 -08:00
Philip Monk
4b8be294b2
ames: don't crash on forward-lane scry
2020-12-05 20:02:31 -08:00
Joe Bryan
958bb5acf7
arvo: removes +is and all references to it
2020-12-05 00:51:49 -08:00
Joe Bryan
5111831a03
ames: use +rep to assemble message fragments
2020-12-03 14:26:55 -08:00
Joe Bryan
9bb790e3e9
ames: updates +end, +lsh, and +rsh call sites
2020-12-03 14:25:31 -08:00
Ted Blackman
c7b8ffbf4e
ames: flat packet format
2020-12-01 09:51:14 -05:00
Joe Bryan
072e2c8101
Merge branch 'm/vane-unversion' into m/modern-hoon
...
* m/vane-unversion:
ames: remove old state versions & conversions
gall: rename fading styles
vanes: remove old load types and logic
gall: refresh clay subscription on fade
gall: add nonce to agent wires
gall: add %doze-style fade
gall: fade initial commit
2020-11-30 21:04:16 -08:00
fang
122123c11a
ames: remove old state versions & conversions
2020-11-27 13:55:21 +01:00
Joe Bryan
f95e1f48c2
arvo: scry reform
2020-11-25 16:02:10 -08:00
fang
7956adedee
vanes: remove old load types and logic
...
Maintains state version numbers to avoid tripping up migration tools.
2020-11-25 16:24:16 +01:00
Ted Blackman
56db7cdcda
ames/zuse: require >64-bit comet addresses
2020-10-27 17:28:07 -04:00
Ted Blackman
fcf9cfbcdb
ames/zuse: require >64-bit comet addresses
2020-10-27 17:20:25 -04:00
Joe Bryan
da928bed10
ames: updates forward-lane scry-handling to match +send-blob
2020-10-22 17:37:46 -07:00
Ted Blackman
f2be97d315
ames: print failed scrys
2020-09-18 16:06:13 -04:00
Philip Monk
1d0409c4c4
ames: fix lane discovery during some lane changes
...
We used to not accept new indirect lanes if we already have a direct
lane. This means that if Bob, with a publicly-accessible lane, changes
lanes (eg by restarting the process and getting a new port or changing
ip addresses), tries to talk to Alice, who is behind a NAT, then Bob
will try directly but fail (because Alice is behind a NAT), so he will
route the message through her galaxy. This is good -- the message gets
to Alice. However, Alice had a direct route to Bob's old lane, so she
will try to ack on that lane, which fails. She will not time out this
lane because she doesn't know that Bob isn't getting the acks (acks
don't have their own acks).
The solution is that if Alice receives an indirect lane for Bob when she
already has a direct lane, she shouldn't ignore it. If the lane is the
same as what she has, she shouldn't change anything (in particular, she
shouldn't mark it as indirect). But if it's a new lane, she should
discard her old direct lane and use the new indirect lane.
2020-07-24 20:41:48 -07:00
Fang
3955d1092b
ames: add scry endpoint for forward lanes
...
Finds the lane for that peer, or their galaxy. Intended for use in the
runtime, to enable stateless forwarding.
2020-07-22 16:33:34 +02:00
Fang
4ea98e569f
ames: improve scry interface
...
No longer abuse the desk field, instead making use of the path. Reject
any scries outside of the local ship, empty desk and current time as
invalid.
2020-07-22 16:30:47 +02:00
Ted Blackman
ef138bb007
ames: use +cut in +encrypt
2020-06-25 22:54:37 -04:00
Philip Monk
05f0e47f68
ames: fix larval +load for fusion
2020-06-11 22:55:08 -07:00
Philip Monk
8b78f04dd3
Merge remote-tracking branch 'origin/master' into ford-fusion
2020-06-02 21:50:20 -07:00
Philip Monk
818d2231f6
ames: remove jumbo packets
2020-06-02 14:13:28 -07:00
Philip Monk
18e396cf53
release: urbit-os-v1.0.20
...
Previous urbit-os-v1.0.20 was not released
2020-05-28 18:43:20 -07:00
Philip Monk
c20cd29932
jael: look for correct wire
...
We inspect the wire of our subscriber to see if we need to produce the
result as a %public-keys or a %boon. This is bad -- we should proxy the
subscription to avoid this need, but this doesn't make that change yet.
%pubs is an old name that doesn't exist anymore (last existed around
September 2019). The new version is /public-keys, but it's worked so
far because /public-keys has only one item in the path, so it missed the
conditional. This commit makes the intent more clear.
The [%a @ @ *] could be just [%a @ *], but I leave it to reduce the
chance of breaking stuff.
2020-05-28 14:27:08 -07:00
Philip Monk
0642cc5861
ames: add |ames-wake
...
Somehow we ended up with flows which expected to awaken but did not wake
up. This was likely caused by the error in r920j OTA, urbit-os-v1.0.18.
This adds a command which ensures that every flow has an active timer.
I expect this to be needed only once, but it's a pretty general tool, so
it's worth keeping.
I've included an unused @t parameter to more easily add simple debug
commands to ames without having to add a new task
2020-05-28 10:28:31 -07:00
Philip Monk
ff01a1ea04
ames: don't set new timer if we woke up too early
...
Otherwise if we end up having multple outstanding timers, they never
coalesce to a single timer.
2020-05-27 17:38:18 -07:00
Fang
58e85fa661
Merge branch 'release/next-sys' into m/debug-dashboard
2020-05-23 01:00:45 +02:00
Philip Monk
a4a44f1e21
kiln: cleanup
2020-05-22 14:32:32 -07:00
Philip Monk
4fcd9f23c0
Merge branch 'release/behn-fast' ( #2915 )
...
* release/behn-fast:
zuse: add +ordered-map
behn: switch to ordered-map
chat: virtualize message-to-json conversion
2020-05-21 22:43:53 -07:00
Philip Monk
274215ec6b
zuse: add +ordered-map
...
At some point this should be more properly styled similar to +by, +in,
and +to, but for now this reduces duplication and makes the ordered map
available to everyone.
2020-05-21 22:28:16 -07:00
Fang
4c9d18e5c0
Merge branch 'release/next-sys' into m/debug-dashboard
2020-05-21 20:09:58 +02:00
Philip Monk
8c4c0f31fc
Merge pull request #2920 from urbit/ted/ames-mass-alien
...
ames: fix %alien |mass over-reporting
2020-05-21 01:40:30 -07:00
Ted Blackman
a0eafa8aa3
zuse,ames: handle %trim task
2020-05-21 03:45:08 -04:00
Ted Blackman
0f7b213f38
ames: fix %alien |mass over-reporting
2020-05-21 03:19:20 -04:00
Ted Blackman
7e69e66280
ames/zuse: handle %trim event
2020-05-20 03:29:54 -04:00
Fang
be087a8c92
Merge branch 'release/next-sys' of https://github.com/urbit/urbit into m/debug-dashboard
2020-05-11 20:39:00 +02:00
Fang
14831f4864
ames: expose state through scries
...
Support /=peers= and /=peer=/~ship scries for getting at all peers and
a specific peer's connection state, respectively.
Moves some internal types into zuse for easier external use.
2020-05-08 01:37:07 +02:00