mirror of
https://github.com/urbit/shrub.git
synced 2024-12-02 08:55:07 +03:00
Merge branch 'ames-larva-report'
* ames-larva-report: vere: filter ames by protocol # vere: filter old packets ames: send larval crashes to dill ames: dequeue failed larval timer ames: print and retry larval crashes Signed-off-by: Jared Tobin <jared@tlon.io>
This commit is contained in:
commit
d9ad5c141a
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4b5e6792a827754fd31d7cc2a6054920ce47efae44bca09775c7e04fb9c3711a
|
||||
size 7143125
|
||||
oid sha256:4faacbf1212e83ca6952195cb718df42e6d82be7bb809bbfc2e9da74b6f4ea61
|
||||
size 7143502
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b4416fd52a3422ca29cdfb88b313a38b11d1468d6b7db884e103f11dc2450597
|
||||
size 9492136
|
||||
oid sha256:7352e0e38fd21e291b66c607b3971b448a6d738fece48a60c8158b7be3678489
|
||||
size 9502771
|
||||
|
@ -892,6 +892,27 @@
|
||||
?. ?=([%b %wake *] sign)
|
||||
~> %slog.0^leaf/"ames: larva: strange sign"
|
||||
[~ larval-gate]
|
||||
:: if crashed, print, dequeue, and set next drainage timer
|
||||
::
|
||||
:: TODO: cleanup duplicate iteration logic
|
||||
::
|
||||
?^ error.sign
|
||||
=. queued-events +:~(get to queued-events)
|
||||
:: .queued-events has been cleared; metamorphose
|
||||
::
|
||||
?~ queued-events
|
||||
~> %slog.0^leaf/"ames: metamorphosis"
|
||||
[~ adult-gate]
|
||||
:: set timer to drain next event
|
||||
::
|
||||
=/ moves
|
||||
=/ =tang [leaf/"ames: larva: drain crash" u.error.sign]
|
||||
:~ [duct %pass /larva-crash %d %flog %crud %larva tang]
|
||||
[duct %pass /larva %b %wait now]
|
||||
==
|
||||
[moves larval-gate]
|
||||
:: normal drain timer; dequeue and run event
|
||||
::
|
||||
=^ first-event queued-events ~(get to queued-events)
|
||||
=^ moves adult-gate
|
||||
?- -.first-event
|
||||
|
@ -374,6 +374,11 @@ _ames_recv_cb(uv_udp_t* wax_u,
|
||||
if ( 0 == nrd_i ) {
|
||||
_ames_free(buf_u->base);
|
||||
}
|
||||
// check protocol version in header matches 0
|
||||
//
|
||||
else if ( 0 != (0x7 & *((c3_w*)buf_u->base)) ) {
|
||||
_ames_free(buf_u->base);
|
||||
}
|
||||
else {
|
||||
{
|
||||
u3_noun msg = u3i_bytes((c3_w)nrd_i, (c3_y*)buf_u->base);
|
||||
|
Loading…
Reference in New Issue
Block a user