interesting. Yes, msyscall() should probably be in the "stdio" set.
But I've been considering deleting execpromises. It was put in as an experiment, and I tried to make code in the base use it. I was unable to find great usage cases, and so I am considering deleting it. Andrea Biscuola <a...@abiscuola.com> wrote: > Hi @misc > > It appear the introduction of msyscall(2), broke the existing code > of one of my projects. > > My code use a fork+exec model for executing different commands > and pledge(2) is used for restricting the behavior of the child > process using the execpromises argument. > > The problem is that, when a child process that was forked with > the execpromises argument set load a new program, the process > is killed because msyscall(2) is not permitted by the parent pledge(2). > > I checked in the /usr/src/sys/kern/kern_pledge.c file and it appear > the msyscall(2) system call is not added to any category yet, thus > not allowing me to use the execpromises argument for now. > > At the moment, I solved the problem by setting the execpromises > for the pledge(2) calls to NULL. > > Is this expected? It's not really a problem as I'm running current > and I know things could break and the workaround is ok (all the > commands uses pledge(2) anyway). Is there some more work in > progress that will solve the situation during the development > cycle? > > Thank you and regards. > -- > Andrea >