.\" .\" $Id: capget.2,v 1.2 2005-08-24 06:51:16 joey Exp $ .\" written by Andrew Morgan .\" may be distributed as per GPL .\" Modified by David A. Wheeler .\" Translated into german by Daniel Kobras (kobras@linux.de) .\" .TH CAPGET 2 "20. Januar 2001" "Linux 2.2" "Systemaufrufe" .SH BEZEICHNUNG capget, capset \- hole/setze Prozessrechte .SH "ÜBERSICHT" .B #undef _POSIX_SOURCE .br .B #include .sp .BI "int capget(cap_user_header_t " header ", cap_user_data_t " data ); .sp .BI "int capset(cap_user_header_t " header ", const cap_user_data_t " data ); .SH BESCHREIBUNG Beginnend mit Linux Kernel 2.2 sind die Befugnisse des Systemadministrators (root) aufgeteilt in einzelne Rechte. Jeder Prozess besitzt eine Menge aktueller Rechte, die bestimmen, welche Rechte er im Augenblick wahrnehmen darf. Jeder Prozess besitzt darüber hinaus einen Satz vererbbarer Rechte, die via execve(2) weitergereicht werden dürfen, sowie eine Liste erlaubter Rechte, die er einsetzen oder vererben kann. .PP .B capget() und .B capset() bilden die rohe Schnittstelle zum Kernel, um Rechte abzufragen und zu setzen. Diese Systemaufrufe sind nicht nur Linux-spezifisch, sondern auch die Form der Schnittstelle kann sich mit jeder Revision des Kernels ändern. Das gilt für die Anwendung der beiden Funktionen und ganz besonders für das Format des Typs .B cap_user_*_t. .sp Die portablen Schnittstellen heißen .IR cap_set_proc (3) und .IR cap_get_proc (3); wenn möglich sollten diese Schnittstellen in Anwendungsprogrammen benutzt werden. Um auch Zugriff auf Linux-Erweiterungen zu bekommen, stehen die Aufrufe .IR capsetp (3) und .IR capgetp (3) zur Verfügung. .SH "RÜCKGABEWERT" Bei Erfolg wird null zurückgeliefert. Im Fehlerfall wird -1 übergeben und .I errno entsprechend gesetzt. .SH FEHLER .TP .SB EINVAL Ein oder mehrere übergebene Argumente waren ungültig. .TP .SB EPERM Es wurde versucht, neue Rechte zur Menge der erlaubten Rechte (permitted) hinzuzufügen, oder ein nicht erlaubtes Recht in die Liste aktueller (effective) oder vererbbarer (inheritable) Rechte aufzunehmen. .SH WEITERE INFORMATIONEN Die portable Schnittstelle zum Abfragen und Setzen von Prozessrechten wird durch die Bibliothek .B libcap zur Verfügung gestellt. Sie ist zu beziehen über: .br .B ftp://linux.kernel.org/pub/linux/libs/security/linux-privs .SH "SIEHE AUCH"