Skip to content
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

unistd: add execveat() on Linux and Android #800

Merged
merged 1 commit into from
Nov 21, 2017

Conversation

lucab
Copy link
Contributor

@lucab lucab commented Nov 19, 2017

This adds execveat() to nix::unistd. It uses the execveat(2) Linux
kernel syscall, which is available since 3.19.
This is a Linux-specific extension which is not covered by POSIX and
does not have any userland libc wrapper.

Ref: http://man7.org/linux/man-pages/man2/execveat.2.html

@lucab lucab force-pushed the ups/execveat branch 3 times, most recently from c5feda5 to 4741e4f Compare November 19, 2017 13:07
@lucab
Copy link
Contributor Author

lucab commented Nov 19, 2017

I had to constrain Linux tests to x86 and amd64 only, as travis was failing with qemu: unsupported syscall everywhere else.

@asomers
Copy link
Member

asomers commented Nov 19, 2017

Please s/Linus/Linux in the commit message.
Were you able to run the tests on Android? Our CI system only builds for Android, it doesn't test.

This adds execveat() to `nix::unistd`. It uses the execveat(2) Linux
kernel syscall, which is available since 3.19.
This is a Linux-specific extension which is not covered by POSIX and
does not have any userland libc wrapper.

Ref: http://man7.org/linux/man-pages/man2/execveat.2.html
@lucab
Copy link
Contributor Author

lucab commented Nov 19, 2017

Woops for the typo. I rebased to fix that and to resolve a conflict on the changelog, PTAL.

No, I didn't explicitly test this on Android as I don't have at hand an environment for that.

@asomers
Copy link
Member

asomers commented Nov 19, 2017

I don't have an Android test environment either. But it looks correct and Android is only Tier 2, so it's ok to merge.

@lucab
Copy link
Contributor Author

lucab commented Nov 20, 2017

Ack. May I then get a review and merge? Or is there anything else I can do here?

@Susurrus
Copy link
Contributor

@lucab @asomers was likely waiting for one of the other maintainers to have a chance to look this over in case he missed something. We do that pretty commonly, so there wasn't anything for you to do but wait!

LGTM as well.

bors r+

bors bot added a commit that referenced this pull request Nov 21, 2017
800: unistd: add execveat() on Linux and Android r=Susurrus a=lucab

This adds execveat() to `nix::unistd`. It uses the execveat(2) Linux
kernel syscall, which is available since 3.19.
This is a Linux-specific extension which is not covered by POSIX and
does not have any userland libc wrapper.

Ref: http://man7.org/linux/man-pages/man2/execveat.2.html
@bors
Copy link
Contributor

bors bot commented Nov 21, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants