• S
    file capabilities: add no_file_caps switch (v4) · 1f29fae2
    Serge E. Hallyn 提交于
    Add a no_file_caps boot option when file capabilities are
    compiled into the kernel (CONFIG_SECURITY_FILE_CAPABILITIES=y).
    
    This allows distributions to ship a kernel with file capabilities
    compiled in, without forcing users to use (and understand and
    trust) them.
    
    When no_file_caps is specified at boot, then when a process executes
    a file, any file capabilities stored with that file will not be
    used in the calculation of the process' new capability sets.
    
    This means that booting with the no_file_caps boot option will
    not be the same as booting a kernel with file capabilities
    compiled out - in particular a task with  CAP_SETPCAP will not
    have any chance of passing capabilities to another task (which
    isn't "really" possible anyway, and which may soon by killed
    altogether by David Howells in any case), and it will instead
    be able to put new capabilities in its pI.  However since fI
    will always be empty and pI is masked with fI, it gains the
    task nothing.
    
    We also support the extra prctl options, setting securebits and
    dropping capabilities from the per-process bounding set.
    
    The other remaining difference is that killpriv, task_setscheduler,
    setioprio, and setnice will continue to be hooked.  That will
    be noticable in the case where a root task changed its uid
    while keeping some caps, and another task owned by the new uid
    tries to change settings for the more privileged task.
    
    Changelog:
    	Nov 05 2008: (v4) trivial port on top of always-start-\
    		with-clear-caps patch
    	Sep 23 2008: nixed file_caps_enabled when file caps are
    		not compiled in as it isn't used.
    		Document no_file_caps in kernel-parameters.txt.
    Signed-off-by: NSerge Hallyn <serue@us.ibm.com>
    Acked-by: NAndrew G. Morgan <morgan@kernel.org>
    Signed-off-by: NJames Morris <jmorris@namei.org>
    1f29fae2
capability.h 15.8 KB