Subroutine proj_execve

Zweck

Führt eine Anwendung mit der angegebenen Projektzuordnung aus

Bibliothek

Bibliothek libaacct.a

Syntax

<sys/aacct.h>

int proj_execve(char * path char *const arg[], char *const env[], projid_t projid, int force);

Beschreibung

Der Systemaufruf proj_execve ordnet die angeforderte Projekt-ID dem aufrufenden Prozess zu und führt das angegebene Programm aus. Diese Subroutine prüft anhand der verfügbaren Projektzuordnungsregeln für die Benutzer-ID, die Gruppen-ID und den Anwendungsnamen des Aufrufenden, ob der Aufrufende die angeforderte Projekt-ID der Anwendung zuordnen darf. Wenn die angeforderte Projektzuweisung nicht zulässig ist, wird ein Fehlercode zurückgegeben. Der Benutzer mit Rootberechtigung oder erweiterten Abrechnungsadministratorberechtigungen kann die Projektzuordnung jedoch erzwingen, indem er den Parameter force auf 1setzt.

Parameter

Element Beschreibung
Pfad Pfad für die auszuführende Anwendung oder das auszuführende Programm.
Argument Liste der Argumente für den neuen Prozess.
Umgebung Umgebung für den neuen Prozess.
projid Projekt-ID, die dem neuen Prozess zugewiesen werden soll
force Option zum Überschreiben der Liste zulässiger Projekte für die Anwendung, den Benutzer oder die Gruppe.

Rückgabewerte

Element Beschreibung
0 Bei Erfolg kehrt nicht zum aufrufenden Prozess zurück.
-1 Die Subroutine ist fehlgeschlagen.

Fehlercodes

Element Beschreibung
EPERM Zugriff verweigert. Ein Benutzer ohne Berechtigungen hat den Aufruf versucht.