#, fuzzy msgid "" msgstr "" "Project-Id-Version: man-pages-l10n VERSION\n" "POT-Creation-Date: 2014-07-17 17:53+0900\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. type: TH #: man-pages/man2/capget.2:15 #, no-wrap msgid "CAPGET" msgstr "" #. type: TH #: man-pages/man2/capget.2:15 #, no-wrap msgid "2013-03-11" msgstr "" #. type: TH #: man-pages/man2/capget.2:15 #, no-wrap msgid "Linux" msgstr "" #. type: TH #: man-pages/man2/capget.2:15 #, no-wrap msgid "Linux Programmer's Manual" msgstr "" #. type: SH #: man-pages/man2/capget.2:16 #, no-wrap msgid "NAME" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:18 msgid "capget, capset - set/get capabilities of thread(s)" msgstr "" #. type: SH #: man-pages/man2/capget.2:18 #, no-wrap msgid "SYNOPSIS" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:20 msgid "B<#include Esys/capability.hE>" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:22 msgid "" "BIB<, cap_user_data_t >IB<);>" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:24 msgid "" "BIB<, const cap_user_data_t " ">IB<);>" msgstr "" #. type: SH #: man-pages/man2/capget.2:24 #, no-wrap msgid "DESCRIPTION" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:35 msgid "" "As of Linux 2.2, the power of the superuser (root) has been partitioned into " "a set of discrete capabilities. Each thread has a set of effective " "capabilities identifying which capabilities (if any) it may currently " "exercise. Each thread also has a set of inheritable capabilities that may " "be passed through an B(2) call, and a set of permitted capabilities " "that it can make effective or inheritable." msgstr "" #. type: Plain text #: man-pages/man2/capget.2:44 msgid "" "These two system calls are the raw kernel interface for getting and setting " "thread capabilities. Not only are these system calls specific to Linux, but " "the kernel API is likely to change and use of these system calls (in " "particular the format of the I types) is subject to extension " "with each kernel revision, but old programs will keep working." msgstr "" #. type: Plain text #: man-pages/man2/capget.2:55 msgid "" "The portable interfaces are B(3) and B(3); if " "possible, you should use those interfaces in applications. If you wish to " "use the Linux extensions in applications, you should use the easier-to-use " "interfaces B(3) and B(3)." msgstr "" #. type: SS #: man-pages/man2/capget.2:55 #, no-wrap msgid "Current details" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:58 msgid "" "Now that you have been warned, some current kernel details. The structures " "are defined as follows." msgstr "" #. type: Plain text #: man-pages/man2/capget.2:63 #, no-wrap msgid "" "#define _LINUX_CAPABILITY_VERSION_1 0x19980330\n" "#define _LINUX_CAPABILITY_U32S_1 1\n" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:66 #, no-wrap msgid "" "#define _LINUX_CAPABILITY_VERSION_2 0x20071026\n" "#define _LINUX_CAPABILITY_U32S_2 2\n" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:71 #, no-wrap msgid "" "typedef struct __user_cap_header_struct {\n" " __u32 version;\n" " int pid;\n" "} *cap_user_header_t;\n" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:77 #, no-wrap msgid "" "typedef struct __user_cap_data_struct {\n" " __u32 effective;\n" " __u32 permitted;\n" " __u32 inheritable;\n" "} *cap_user_data_t;\n" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:96 msgid "" "The I, I, and I fields are bit masks of " "the capabilities defined in B(7). Note the B values " "are bit indexes and need to be bit-shifted before ORing into the bit fields. " " To define the structures for passing to the system call you have to use the " "I and I " "names because the typedefs are only pointers." msgstr "" #. type: Plain text #: man-pages/man2/capget.2:108 msgid "" "Kernels prior to 2.6.25 prefer 32-bit capabilities with version " "B<_LINUX_CAPABILITY_VERSION_1>, and kernels 2.6.25+ prefer 64-bit " "capabilities with version B<_LINUX_CAPABILITY_VERSION_2>. Note, 64-bit " "capabilities use I[0] and I[1], whereas 32-bit capabilities " "use only I[0]." msgstr "" #. type: Plain text #: man-pages/man2/capget.2:112 msgid "" "Another change affecting the behavior of these system calls is kernel " "support for file capabilities (VFS capability support). This support is " "currently a compile time option (added in kernel 2.6.24)." msgstr "" #. type: Plain text #: man-pages/man2/capget.2:119 msgid "" "For B() calls, one can probe the capabilities of any process by " "specifying its process ID with the Ipid> field value." msgstr "" #. type: SS #: man-pages/man2/capget.2:119 #, no-wrap msgid "With VFS capability support" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:131 msgid "" "VFS Capability support creates a file-attribute method for adding " "capabilities to privileged executables. This privilege model obsoletes " "kernel support for one process asynchronously setting the capabilities of " "another. That is, with VFS support, for B() calls the only " "permitted values for Ipid> are 0 or B(2), which are " "equivalent." msgstr "" #. type: SS #: man-pages/man2/capget.2:131 #, no-wrap msgid "Without VFS capability support" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:157 msgid "" "When the kernel does not support VFS capabilities, B() calls can " "operate on the capabilities of the thread specified by the I field of " "I when that is nonzero, or on the capabilities of the calling thread " "if I is 0. If I refers to a single-threaded process, then I " "can be specified as a traditional process ID; operating on a thread of a " "multithreaded process requires a thread ID of the type returned by " "B(2). For B(), I can also be: -1, meaning perform the " "change on all threads except the caller and B(8); or a value less than " "-1, in which case the change is applied to all members of the process group " "whose ID is -I." msgstr "" #. type: Plain text #: man-pages/man2/capget.2:160 msgid "For details on the data, see B(7)." msgstr "" #. type: SH #: man-pages/man2/capget.2:160 #, no-wrap msgid "RETURN VALUE" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:165 msgid "" "On success, zero is returned. On error, -1 is returned, and I is set " "appropriately." msgstr "" #. type: Plain text #: man-pages/man2/capget.2:179 msgid "" "The calls will fail with the error B, and set the I field " "of I to the kernel preferred value of B<_LINUX_CAPABILITY_VERSION_?> " "when an unsupported I value is specified. In this way, one can " "probe what the current preferred capability revision is." msgstr "" #. type: SH #: man-pages/man2/capget.2:179 #, no-wrap msgid "ERRORS" msgstr "" #. type: TP #: man-pages/man2/capget.2:180 #, no-wrap msgid "B" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:188 msgid "" "Bad memory address. I must not be NULL. I may be NULL only " "when the user is trying to determine the preferred capability version format " "supported by the kernel." msgstr "" #. type: TP #: man-pages/man2/capget.2:188 #, no-wrap msgid "B" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:191 msgid "One of the arguments was invalid." msgstr "" #. type: TP #: man-pages/man2/capget.2:191 man-pages/man2/capget.2:196 #, no-wrap msgid "B" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:196 msgid "" "An attempt was made to add a capability to the Permitted set, or to set a " "capability in the Effective or Inheritable sets that is not in the Permitted " "set." msgstr "" #. type: Plain text #: man-pages/man2/capget.2:215 msgid "" "The caller attempted to use B() to modify the capabilities of a " "thread other than itself, but lacked sufficient privilege. For kernels " "supporting VFS capabilities, this is never permitted. For kernels lacking " "VFS support, the B capability is required. (A bug in kernels " "before 2.6.11 meant that this error could also occur if a thread without " "this capability tried to change its own capabilities by specifying the " "I field as a nonzero value (i.e., the value returned by B(2)) " "instead of 0.)" msgstr "" #. type: TP #: man-pages/man2/capget.2:215 #, no-wrap msgid "B" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:218 msgid "No such thread." msgstr "" #. type: SH #: man-pages/man2/capget.2:218 #, no-wrap msgid "CONFORMING TO" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:220 msgid "These system calls are Linux-specific." msgstr "" #. type: SH #: man-pages/man2/capget.2:220 #, no-wrap msgid "NOTES" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:225 msgid "" "The portable interface to the capability querying and setting functions is " "provided by the I library and is available here:" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:228 msgid "" "E<.UR http://git.kernel.org/cgit\\:/linux\\:/kernel\\:/git\\:/morgan\\:\\:/" "libcap.git> E<.UE>" msgstr "" #. type: SH #: man-pages/man2/capget.2:228 #, no-wrap msgid "SEE ALSO" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:232 msgid "B(2), B(2), B(7)" msgstr "" #. type: SH #: man-pages/man2/capget.2:232 #, no-wrap msgid "COLOPHON" msgstr "" #. type: Plain text #: man-pages/man2/capget.2:240 msgid "" "This page is part of release 3.70 of the Linux I project. A " "description of the project, information about reporting bugs, and the latest " "version of this page, can be found at \\%http://www.kernel.org/doc/man-pages/" "." msgstr ""