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