-
Notifications
You must be signed in to change notification settings - Fork 3.4k
No process spawn #3819
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
No process spawn #3819
Conversation
How about if we use the musl popen, which is at |
We did build it before, but we don't build any of the |
It should be simpler the other way, I think - stop us from blacklisting the But, doesn't the argument in this pull apply to all of them? We don't support any of these methods, and before this pull, all warn on build, and all abort if called; after this pull, that changes only for popen and system, but why not do the same for all |
Alternatively, if we think popen and spawn are special and we just want to avoid link warnings on them, the simplest thing is to just add a stub for each in |
Just a note on the changes as they stand, I suspect the return value of system should be -1 (to indicate a fork failure, rather than an exit code of 1) and errno in both cases should be ENOSYS i.e. passed upwards from a fork call, due to |
@aidanhs : musl returns I'll try to work this to build the |
0439dae
to
97909a0
Compare
Ok, redid the pull request and added the whole |
Regarding the 1, that's apparently a special case of calling
So it looks like musl is being a bit naughty by assuming a shell is available. |
Looks fine. However, I just want to repeat my other proposal: if we implement these methods in
However, this solution is more future proof, in that we could eventually implement those syscalls perhaps. I'm ok with either way, just want to make sure we consider the downsides of this approach. |
…p, which may be called by musl code that we do build.
Actually, I agree with the |
Great, lgtm. |
Replace system() and popen() with failing stubs. Fixes error 'unresolved symbol posix_spawn' when building code that calls to popen.