diff --git a/pkg/base-dev/lib/sss.hoon b/pkg/base-dev/lib/sss.hoon index 3a6d9114ce..b74ef44b4e 100644 --- a/pkg/base-dev/lib/sss.hoon +++ b/pkg/base-dev/lib/sss.hoon @@ -241,6 +241,23 @@ ?. =(next (add aeon.last waves.rul.tide)) buoy buoy(tid (form tide)) :: + ++ fork :: Fork a pub into an empty path. + |= [from=paths to=paths] + ^- pubs + :- %0 + ?< (~(has by pub) to) + (~(put by pub) to (~(got by pub) from)) + :: + ++ copy :: Fork a sub into an empty path. + |= [sub=_(mk-subs lake *) from=[ship dude *] to=paths] + ^- pubs + :- %0 + ?< (~(has by pub) to) + %+ ~(put by pub) to + %* . *$<(aeon buoy) + rok.tid (put:rok ~ [aeon rock]:(need (~(got by +:sub) from))) + == + :: ++ perm :: Change permissions with gate. |= [where=(list paths) diff=$-((unit (set ship)) (unit (set ship)))] ^- pubs