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

Linux capabilities not listed #755

Closed
justincormack opened this issue Apr 5, 2017 · 7 comments
Closed

Linux capabilities not listed #755

justincormack opened this issue Apr 5, 2017 · 7 comments

Comments

@justincormack
Copy link
Contributor

The Linux capabilities supported are not listed in the spec, but as they are strings and not numbers they probably ought to be, with the spec changed as more are added. If they were numbers it would seem ok, as you could just pass a new number for a new cap, but with strings, each implementation needs to add support to convert the string to a number so it seems sane to have them explicitly listed and a minor version spec bump should another be added (a rare event).

@vbatts
Copy link
Member

vbatts commented Apr 5, 2017

fair. this is one of those rabbit-holes of effectively specifying the linux kernel API. Thoughts on how to make this age well?

@cyphar
Copy link
Member

cyphar commented Apr 5, 2017

@justincormack But the kill operation requires specifying a signal (which is a string) but we don't really provide any strong requirements what the strings mean. Should we also specify signal names as well (I'm just wondering which side of the consistency fence we want to land on)?

@wking
Copy link
Contributor

wking commented Apr 5, 2017 via email

@justincormack
Copy link
Contributor Author

Yeah, not entirely sure, I just noticed this when I was thinking where is the list of all caps I can get from the spec. Its all because of C's use of macros deep down. I am fine with us deciding to just put some wording instead of the list, but thought I would bring it up for discussion. It is a question of whether there is an explicit spec version that supports CAP_SYS_FOO or some implementations do and some dont, and you cant work it out from the spec version that you specify.

Currently we do specify the list of namespace kinds (which seems reasonable as they need special handling), and the list of seccomp architectures (kind of weird), and seccomp actions (less weird).

@justincormack
Copy link
Contributor Author

@wking the man pages are a poor source, they are often outdated. Better to link to the kernel source.

@justincormack
Copy link
Contributor Author

hmm, the comment in #673 covers much of the same ground, with no real conclusion. So going to close this on the grounds that its already discussed ;)

@vbatts
Copy link
Member

vbatts commented Apr 5, 2017 via email

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

No branches or pull requests

4 participants