On Friday, May 29, 2020, Stuart Henderson <s...@spacehopper.org> wrote:

> On 2020/05/29 08:30, Luke Small wrote:
> > You mention a lot of files that need to be read, but a program like
> pkg_add can make it the
> > _pkgfetch (57) user which has no directory and I’m guessing not in
> interactive mode. At the
> > very least, in noninteractive mode you could unveil(“/“, “rx”); and
> change the specified output
> > file discover the name of the file that is to be downloaded and unveil
> it as “cw” !
> > --
> > -Luke
>
> What problem are you trying to solve?
>
> If you are concerned about writes, use "ftp -o - $URL > somefile", it will
> run without cpath/wpath, which is functionally similar to unveil("/", "rx")
> (a bit stronger, because a program trying to write will be killed, rather
> than just having a file access error).
>
> pkg_add(1) already uses "ftp -o -":
>
> # ktrace -di pkg_add -u moo
> quirks-3.339 signed on 2020-05-27T20:05:28Z
>
> # kdump | grep promise=
>  61644 ftp      STRU  promise="stdio rpath dns tty inet proc exec fattr"
>  41938 signify  STRU  promise="stdio rpath wpath cpath tty"
>  41938 signify  STRU  promise="stdio rpath"
>  24897 ftp      STRU  promise="stdio rpath dns tty inet proc exec fattr"
>  54324 signify  STRU  promise="stdio rpath wpath cpath tty"
>  54324 signify  STRU  promise="stdio rpath"
>   9188 ftp      STRU  promise="stdio rpath dns tty inet proc exec fattr"



If you need a diff written, I’m sure a developer would be willing in return
for a donation.

Reply via email to