From dd76358f6a97782c832674acf9240e21eb8a4094 Mon Sep 17 00:00:00 2001 From: Philip Monk Date: Fri, 26 Jul 2019 20:43:07 -0700 Subject: [PATCH] %breach-hi works with kale --- pkg/arvo/lib/ph/azimuth.hoon | 4 +- pkg/arvo/sys/arvo.hoon | 2 +- pkg/arvo/sys/vane/ames.hoon | 59 +++++++++--------- pkg/arvo/sys/vane/clay.hoon | 116 +++++++++++++++++++---------------- pkg/arvo/sys/vane/dill.hoon | 6 -- pkg/arvo/sys/vane/ford.hoon | 6 -- pkg/arvo/sys/vane/gall.hoon | 2 - pkg/arvo/sys/vane/jael.hoon | 14 ++--- pkg/arvo/sys/zuse.hoon | 10 --- 9 files changed, 104 insertions(+), 115 deletions(-) diff --git a/pkg/arvo/lib/ph/azimuth.hoon b/pkg/arvo/lib/ph/azimuth.hoon index 14b5b1aa31..c3ad8e1f40 100644 --- a/pkg/arvo/lib/ph/azimuth.hoon +++ b/pkg/arvo/lib/ph/azimuth.hoon @@ -103,6 +103,7 @@ fil-id u.fil(last-block latest-block) [%cont ..stay] + ~& [%ph-azimuth-miss req] [& ~ %wait ~] :: ++ latest-block @@ -346,6 +347,7 @@ ++ breach-and-hear |= [our=@p who=@p her=@p] =. this-az (breach who) + =. this-az (spawn ~fes) =/ new-rut rut:(~(got by lives) who) =/ m (ph ,_this-az) ;< [this-az=_this-az ~] bind:m @@ -356,7 +358,7 @@ :+ & ~ =/ aqua-pax :- %i - /(scot %p her)/j/(scot %p her)/rift/(scot %da now.pin)/(scot %p who)/noun + /(scot %p her)/k/(scot %p her)/rift/(scot %da now.pin)/(scot %p who)/noun =/ rut (scry-aqua noun our now.pin aqua-pax) ?: =([~ new-rut] rut) [%done ~] diff --git a/pkg/arvo/sys/arvo.hoon b/pkg/arvo/sys/arvo.hoon index 49321eb07b..6e74ffabe4 100644 --- a/pkg/arvo/sys/arvo.hoon +++ b/pkg/arvo/sys/arvo.hoon @@ -459,7 +459,7 @@ :: ++ dint :: input routing |= hap/path ^- @tas - ?+ hap !! + ?+ hap ~|([%bad-dint hap] !!) {@ $ames *} %a {@ $boat *} %c {@ $newt *} %a diff --git a/pkg/arvo/sys/vane/ames.hoon b/pkg/arvo/sys/vane/ames.hoon index 3ee8fc811f..e7beff2bcd 100644 --- a/pkg/arvo/sys/vane/ames.hoon +++ b/pkg/arvo/sys/vane/ames.hoon @@ -1424,17 +1424,20 @@ :_ fox [hen [%pass wire %k %private-keys ~]]~ :: %wine - :_ fox - =+ fom=~(rend co %$ %p p.bon) - :~ :- hen - :+ %slip %d - :+ %flog %text - ;: weld - "; " - fom - q.bon - == - == + [[(print hen p.bon q.bon) ~] fox] + == + :: + ++ print + |= [hen=duct who=ship =tape] + ^- move + =+ fom=~(rend co %$ %p who) + :- hen + :+ %slip %d + :+ %flog %text + ;: weld + "; " + fom + tape == :: ++ knap @@ -1457,6 +1460,10 @@ ?. ?=([%pubs @ ~] tea) ~& [%strange-pubs tea] [~ +>.$] + ?: ?& ?=(%diff -.public-keys-result.sih) + ?=(%rift -.diff.public-keys-result.sih) + == + (sink hen [who [from to]:diff]:public-keys-result.sih) ?: ?& ?=(%diff -.public-keys-result.sih) !?=(%keys -.diff.public-keys-result.sih) == @@ -1530,6 +1537,17 @@ $(p.fuy t.p.fuy, out (weld (flop toe) out)) == :: + ++ sink + |= [hen=duct who=ship from=rift to=rift] + ^- [(list move) _+>] + ?: =(our who) + [[(print hen who ", you have sunk") ~] +>.$] + :: + =: hoc.ton.fox (~(del by hoc.ton.fox) who) + wab.zac.fox (~(del by wab.zac.fox) who) + == + [[(print hen who " has sunk") ~] +>.$] + :: ++ knob ~/ %knob |= [hen=duct kyz=task:able] @@ -1594,25 +1612,6 @@ fox(bad (~(del in bad.fox) p.kyz)) ~& [%block p.kyz] fox(bad (~(put in bad.fox) p.kyz)) - :: - %sunk - =* who p.kyz - =* lyf q.kyz - ?: =(our who) - ?: (lth lyf p:(head val.ton.fox)) - :: replaying our old sinkage, ignore - :: XX review - :: - [~ fox] - :: XX include some helpful instructions here - :: - :_ fox - [%wine who ", you have sunk"]~ - :: - =: hoc.ton.fox (~(del by hoc.ton.fox) who) - wab.zac.fox (~(del by wab.zac.fox) who) - == - [[%wine who " has sunk"]~ fox] :: %vega :: re-initialize our cryptosuite B cores diff --git a/pkg/arvo/sys/vane/clay.hoon b/pkg/arvo/sys/vane/clay.hoon index 8b95318e37..006df86e04 100644 --- a/pkg/arvo/sys/vane/clay.hoon +++ b/pkg/arvo/sys/vane/clay.hoon @@ -524,6 +524,9 @@ $: %f :: by %ford $>(%made gift:able:ford) :: == :: + $: %k :: by %kale + $>(%public-keys gift:able:kale) :: + == :: $: @tas :: by any $>(%crud vane-task) :: XX strange == == :: @@ -4303,49 +4306,6 @@ =/ den ((de our now ski hen ruf) our des.req) abet:(perm:den pax.req rit.req) [mos ..^$] - :: - %sunk - ~& rift=[p.req q.req] - ~& desks=(turn ~(tap by dos.rom.ruf) head) - ~& hoy=(turn ~(tap by hoy.ruf) head) - :: - ?: =(our p.req) - [~ ..^$] - :: Cancel subscriptions - :: - =/ foreign-desk=(unit rung) - (~(get by hoy.ruf) p.req) - ?~ foreign-desk - ~& [%never-heard-of-her p.req q.req] - [~ ..^$] - ~& old-rift=rit.u.foreign-desk - ?: (gte rit.u.foreign-desk q.req) - ~& 'replaying sunk, so not clearing state' - [~ ..^$] - =/ cancel-ducts=(list duct) - %- zing ^- (list (list duct)) - %+ turn ~(tap by rus.u.foreign-desk) - |= [=desk =rede] - ^- (list duct) %- zing ^- (list (list duct)) - %+ turn ~(tap by qyx.rede) - |= [=wove ducts=(set duct)] - :: ~& [%sunk-wove desk (print-wove wove) ducts] - ~(tap in ducts) - =/ cancel-moves=(list move) - %+ turn cancel-ducts - |= =duct - [duct %slip %b %drip !>([%writ ~])] - :: Clear ford cache - :: - =/ clear-ford-cache-moves=(list move) - :~ [hen %pass /clear/keep %f %keep 0 1] - [hen %pass /clear/wipe %f %wipe 100] - [hen %pass /clear/kep %f %keep 2.048 64] - == - :: delete local state of foreign desk - :: - =. hoy.ruf (~(del by hoy.ruf) p.req) - [(weld clear-ford-cache-moves cancel-moves) ..^$] :: %vega [~ ..^$] :: @@ -4445,30 +4405,30 @@ :: ++ stay [%1 ruf] ++ take :: accept response - |= {tea/wire hen/duct hin/(hypo sign)} + |= [tea=wire hen=duct hin=(hypo sign)] ^+ [*(list move) ..^$] - ?: ?=({$commit @ *} tea) + ?: ?=([%commit @ *] tea) =* syd i.t.tea =^ mos ruf =/ den ((de our now ski hen ruf) our syd) abet:(take-commit:den q.hin) [mos ..^$] :: - ?: ?=({$merge @ *} tea) + ?: ?=([%merge @ *] tea) =* syd i.t.tea =^ mos ruf =/ den ((de our now ski hen ruf) our syd) abet:(take-merge:den q.hin) [mos ..^$] :: - ?: ?=({$mount @ *} tea) + ?: ?=([%mount @ *] tea) =* syd i.t.tea =^ mos ruf =/ den ((de our now ski hen ruf) our syd) abet:(take-mount:den q.hin) [mos ..^$] :: - ?: ?=({%foreign-request @ @ @ *} tea) + ?: ?=([%foreign-request @ @ @ *] tea) =/ her (slav %p i.t.tea) =/ syd (slav %tas i.t.t.tea) =/ inx (slav %ud i.t.t.t.tea) @@ -4477,7 +4437,7 @@ abet:(take-foreign-request:den inx q.hin) [mos ..^$] :: - ?: ?=({%foreign-update @ @ *} tea) + ?: ?=([%foreign-update @ @ *] tea) =/ her (slav %p i.t.tea) =/ syd (slav %tas i.t.t.tea) =^ mos ruf @@ -4485,8 +4445,8 @@ abet:(take-foreign-update:den q.hin) [mos ..^$] :: - ?: ?=({$blab care @ @ *} tea) - ?> ?=($made +<.q.hin) + ?: ?=([%blab care @ @ *] tea) + ?> ?=(%made +<.q.hin) ?. ?=([%complete %success *] result.q.hin) ~| %blab-fail ~> %mean.|.((made-result-as-error:ford result.q.hin)) @@ -4494,14 +4454,66 @@ :_ ..^$ :_ ~ :* hen %slip %b %drip !> :* %writ ~ - ^- {care case @tas} + ^- [care case @tas] [i.t.tea ;;(case +>:(slay i.t.t.tea)) i.t.t.t.tea] :: `path`t.t.t.t.tea `cage`(result-to-cage:ford build-result.result.q.hin) == == :: + ?: ?=([%sinks ~] tea) + ?> ?=(%public-keys +<.q.hin) + ~& 'XXX' + ?: ?=(%full -.public-keys-result.q.hin) + !! + ?. ?=(%rift -.diff.public-keys-result.q.hin) + [~ ..^$] + ~& rift=public-keys-result.q.hin + =/ who who.public-keys-result.q.hin + =/ to-rift to.diff.public-keys-result.q.hin + ~& desks=(turn ~(tap by dos.rom.ruf) head) + ~& hoy=(turn ~(tap by hoy.ruf) head) + :: + ?: =(our who) + [~ ..^$] + :: Cancel subscriptions + :: + =/ foreign-desk=(unit rung) + (~(get by hoy.ruf) who) + ?~ foreign-desk + ~& [%never-heard-of-her who] + [~ ..^$] + ~& old-rift=rit.u.foreign-desk + ?: (gte rit.u.foreign-desk to-rift) + ~& 'replaying sunk, so not clearing state' + [~ ..^$] + =/ cancel-ducts=(list duct) + %- zing ^- (list (list duct)) + %+ turn ~(tap by rus.u.foreign-desk) + |= [=desk =rede] + ^- (list duct) %- zing ^- (list (list duct)) + %+ turn ~(tap by qyx.rede) + |= [=wove ducts=(set duct)] + :: ~& [%sunk-wove desk (print-wove wove) ducts] + ~(tap in ducts) + =/ cancel-moves=(list move) + %+ turn cancel-ducts + |= =duct + [duct %slip %b %drip !>([%writ ~])] + :: Clear ford cache + :: + =/ clear-ford-cache-moves=(list move) + :~ [hen %pass /clear/keep %f %keep 0 1] + [hen %pass /clear/wipe %f %wipe 100] + [hen %pass /clear/kep %f %keep 2.048 64] + == + :: delete local state of foreign desk + :: + =. hoy.ruf (~(del by hoy.ruf) who) + [(weld clear-ford-cache-moves cancel-moves) ..^$] + :: ?- -.+.q.hin + %public-keys ~|([%public-keys-raw tea] !!) %init-clad ~|(%clad-not-real !!) :: diff --git a/pkg/arvo/sys/vane/dill.hoon b/pkg/arvo/sys/vane/dill.hoon index ca15846f18..26a23708fa 100644 --- a/pkg/arvo/sys/vane/dill.hoon +++ b/pkg/arvo/sys/vane/dill.hoon @@ -297,7 +297,6 @@ [[151 %noun] %k our %sein da+now /(scot %p who)] :: ++ init :: initialize - ~& [%dill-init our ram] ^+ . =. moz :_ moz @@ -317,7 +316,6 @@ . :: ++ mere :: continue init - ~& [%dill-mere our ram] ^+ . =/ myt (flop (fall tem ~)) =/ can (clan:title our) @@ -551,10 +549,6 @@ =? p.task ?=([%crud %hax-heft ~] p.task) [%heft ~] :: $(hen u.hey.all, wrapped-task p.task) - :: a %sunk notification from %jail comes in on an unfamiliar duct - :: - ?: ?=(%sunk -.task) - [~ ..^$] :: a %vega notification on kernel upgrade comes in on an unfamiliar duct :: ?: ?=(%vega -.task) diff --git a/pkg/arvo/sys/vane/ford.hoon b/pkg/arvo/sys/vane/ford.hoon index da93d11db0..23b81fa159 100644 --- a/pkg/arvo/sys/vane/ford.hoon +++ b/pkg/arvo/sys/vane/ford.hoon @@ -6168,12 +6168,6 @@ =^ moves state.ax cancel:this-event :: [moves ford-gate] - :: - :: %sunk: foreign ship has lost continutity - :: - %sunk - :: - [~ ford-gate] :: :: %vega: learn of kernel upgrade :: diff --git a/pkg/arvo/sys/vane/gall.hoon b/pkg/arvo/sys/vane/gall.hoon index 034a221891..f23088c292 100644 --- a/pkg/arvo/sys/vane/gall.hoon +++ b/pkg/arvo/sys/vane/gall.hoon @@ -1381,8 +1381,6 @@ :: $init [~ ..^$(sys.mast.all hen)] - :: - $sunk [~ ..^$] :: $vega [~ ..^$] :: diff --git a/pkg/arvo/sys/vane/jael.hoon b/pkg/arvo/sys/vane/jael.hoon index 749e18c573..dcd33e0042 100644 --- a/pkg/arvo/sys/vane/jael.hoon +++ b/pkg/arvo/sys/vane/jael.hoon @@ -118,7 +118,6 @@ == :: $: @tas :: $% $>(%init vane-task) :: report install - $>(%sunk vane-task) :: report death == == == :: :: :: +$ sign :: in result $<- @@ -1484,12 +1483,13 @@ %+ weld :: %- flop ^- (list move) - :~ [hen %slip %a %sunk who rit] - [hen %slip %c %sunk who rit] - [hen %slip %d %sunk who rit] - [hen %slip %f %sunk who rit] - [hen %slip %g %sunk who rit] - == + ~ + :: :~ [hen %slip %a %sunk who rit] + :: [hen %slip %c %sunk who rit] + :: [hen %slip %d %sunk who rit] + :: [hen %slip %f %sunk who rit] + :: [hen %slip %g %sunk who rit] + :: == moz == :: pon: updated point diff --git a/pkg/arvo/sys/zuse.hoon b/pkg/arvo/sys/zuse.hoon index 9d3b8ea020..bf2ae38d79 100644 --- a/pkg/arvo/sys/zuse.hoon +++ b/pkg/arvo/sys/zuse.hoon @@ -203,9 +203,6 @@ :: boot completed (XX legacy) :: [%init p=ship] - :: peer discontinuity - :: - [%sunk p=ship q=rift] :: kernel upgraded :: [%vega ~] @@ -393,7 +390,6 @@ $>(%init vane-task) :: report install {$kick p/@da} :: wake up {$nuke p/@p} :: toggle auto-block - $>(%sunk vane-task) :: report death $>(%vega vane-task) :: report upgrade {$wake ~} :: timer activate $>(%wegh vane-task) :: report memory @@ -628,7 +624,6 @@ {$dirk des/desk} :: mark mount dirty {$ogre pot/$@(desk beam)} :: delete mount point {$perm des/desk pax/path rit/rite} :: change permissions - $>(%sunk vane-task) :: report death $>(%vega vane-task) :: report upgrade {$warp wer/ship rif/riff} :: internal file req {$werp who/ship wer/ship rif/riff} :: external file req @@ -795,7 +790,6 @@ $>(%init vane-task) :: after gall ready {$lyra p/@t q/@t} :: upgrade kernel {$noop ~} :: no operation - $>(%sunk vane-task) :: report death {$talk p/tank} :: {$text p/tape} :: {$veer p/@ta q/path r/@t} :: install vane @@ -1182,9 +1176,6 @@ :: %kill: stop a build; send on same duct as original %build request :: [%kill ~] - :: %sunk: receive a report that a foreign ship has lost continuity - :: - $>(%sunk vane-task) :: %vega: report kernel upgrade :: $>(%vega vane-task) @@ -1879,7 +1870,6 @@ $% {$conf p/dock q/culm} :: configure app $>(%init vane-task) :: set owner {$deal p/sock q/cush} :: full transmission - $>(%sunk vane-task) :: report death $>(%vega vane-task) :: report upgrade $>(%west vane-task) :: network request $>(%wegh vane-task) :: report memory