Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1544039

Re: RFC: capabilities(7): notes for kernel developers

From "Michael Kerrisk (man-pages)" <mtk.manpages@gmail.com>
Newsgroups linux.kernel
Subject Re: RFC: capabilities(7): notes for kernel developers
Date 2016-12-17 22:10 +0100
Message-ID <sPuoW-6rm-13@gated-at.bofh.it> (permalink)
References (3 earlier) <sOL8t-20y-9@gated-at.bofh.it> <sOOJ4-4oB-7@gated-at.bofh.it> <sOP2p-4v4-11@gated-at.bofh.it> <sP29j-503-1@gated-at.bofh.it> <sP790-8js-9@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 12/16/2016 09:10 PM, Serge E. Hallyn wrote:
> Quoting Michael Kerrisk (man-pages) (mtk.manpages@gmail.com):
>> On 12/16/2016 01:44 AM, Casey Schaufler wrote:
>>> On 12/15/2016 4:31 PM, John Stultz wrote:
>>>> On Thu, Dec 15, 2016 at 12:40 PM, Casey Schaufler
>>>> <casey@schaufler-ca.com> wrote:
>>>>> On 12/15/2016 11:41 AM, Michael Kerrisk (man-pages) wrote:
>>>>>> On 12/15/2016 05:29 PM, Casey Schaufler wrote:
>>>>>>> CAP_WAKE_ALARM could readily be CAP_TIME.
>>>>>> Actually, I don't quite understand what you mean with that sentence.
>>>>>> Could you elaborate?
>>>>> Should have said CAP_SYS_TIME
>>>>>
>>>>> Setting an alarm could be considered a time management function,
>>>>> depending on what it actually does.
>>>> Just a nit here. CAP_WAKE_ALARM is more about the privilege of waking
>>>> a system from suspend, while CAP_SYS_TIME covers the ability to set
>>>> the time. One wouldn't necessarily want to give applications which
>>>> could wake a system up the capability to also set the time.
>>>
>>> Doesn't really matter, except that an ignorant developer
>>> might make the mistake I did and assume that WAKE_ALARM
>>> was somehow related to time management. If you want to use
>>> it as an example don't let my dunderheadedness get in your
>>> way.
>>
>> Actually, I decided it wasn't such a good example anyway.
>> That capability could potentially be generic. (But it probably
>> should better have been named something like 'CAP_WAKE_SYSTEM'.)
> 
> How about:
> 
> Subject: [PATCH 1/1] capabilities: alias CAP_WAKE_SYSTEM to CAP_WAKE_ALARM
> 
> As suggested by Michael Kerrisk his is a less confusing name, and
> this won't break any old userspace.

Yes, but. The names are used in user-space: should cap_to_text() or
cap_from_text() be reworked to understand these new names? For the former,
it seems like a bad idea, and for the latter it's dubious I would say.
So, I'm concerned that renaming/adding a synonym at the API level 
creates some inconsistency with user-space. Maybe I worry too much?

What certainly would be good is to more clearly document the (broader)
purpose of the (misnamed) capability in capabilities(7). Something along
the lines of John's suggestion.

Cheers,

Michael

> Signed-off-by: Serge Hallyn <serge@hallyn.com>
> Cc: Michael Kerrisk <mtk.manpages@gmail.com>
> ---
>  include/uapi/linux/capability.h | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/include/uapi/linux/capability.h b/include/uapi/linux/capability.h
> index fd4f87d..ba972ff 100644
> --- a/include/uapi/linux/capability.h
> +++ b/include/uapi/linux/capability.h
> @@ -357,6 +357,8 @@ struct vfs_ns_cap_data {
>  
>  #define CAP_WAKE_ALARM            35
>  
> +#define CAP_WAKE_SYSTEM      CAP_WAKE_ALARM
> +
>  /* Allow preventing system suspends */
>  
>  #define CAP_BLOCK_SUSPEND    36
> 


-- 
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

RFC: capabilities(7): notes for kernel developers "Michael Kerrisk (man-pages)" <mtk.manpages@gmail.com> - 2016-12-15 12:50 +0100
  Re: RFC: capabilities(7): notes for kernel developers Casey Schaufler <casey@schaufler-ca.com> - 2016-12-15 17:40 +0100
    Re: RFC: capabilities(7): notes for kernel developers "Michael Kerrisk (man-pages)" <mtk.manpages@gmail.com> - 2016-12-15 20:50 +0100
      Re: RFC: capabilities(7): notes for kernel developers Casey Schaufler <casey@schaufler-ca.com> - 2016-12-15 21:50 +0100
        Re: RFC: capabilities(7): notes for kernel developers John Stultz <john.stultz@linaro.org> - 2016-12-16 01:40 +0100
          Re: RFC: capabilities(7): notes for kernel developers Casey Schaufler <casey@schaufler-ca.com> - 2016-12-16 02:00 +0100
            Re: RFC: capabilities(7): notes for kernel developers "Michael Kerrisk (man-pages)" <mtk.manpages@gmail.com> - 2016-12-16 16:00 +0100
              Re: RFC: capabilities(7): notes for kernel developers "Serge E. Hallyn" <serge@hallyn.com> - 2016-12-16 21:20 +0100
                Re: RFC: capabilities(7): notes for kernel developers John Stultz <john.stultz@linaro.org> - 2016-12-16 21:30 +0100
                Re: RFC: capabilities(7): notes for kernel developers "Serge E. Hallyn" <serge@hallyn.com> - 2016-12-16 22:10 +0100
                Re: RFC: capabilities(7): notes for kernel developers John Stultz <john.stultz@linaro.org> - 2016-12-16 22:20 +0100
                Re: RFC: capabilities(7): notes for kernel developers "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-12-19 21:30 +0100
                Re: RFC: capabilities(7): notes for kernel developers "Michael Kerrisk (man-pages)" <mtk.manpages@gmail.com> - 2016-12-17 22:10 +0100
        Re: RFC: capabilities(7): notes for kernel developers "Michael Kerrisk (man-pages)" <mtk.manpages@gmail.com> - 2016-12-16 16:20 +0100

csiph-web