Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ setsid(2) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

exec(2)

exit(2)

fork(2)

getpid(2)

getpgid(2)

getsid(2)

setpgid(2)

setpgrp(2)

signal(2)

sigsend(2)

setsid(2)                                                         setsid(2)

NAME
     setsid - Sitzungsnummer einstellen

SYNTAX
     #include <sys/types.h>
     #include <unistd.h>

     pidt setsid(void);

BESCHREIBUNG
     Wenn der aufrufende Prozeß nicht bereits ein Prozeßgruppenleiter ist,
     stellt setsid() die Prozeßgruppennummer und die Sitzungsnummer des
     aufrufenden Prozesses auf die Prozeßnummer des aufrufenden Prozesses
     und gibt das steuernde Terminal des Prozesses frei.

     setsid() schlägt fehl und liefert einen Fehler, wenn folgende Bedin-
     gung erfüllt ist:

     EPERM     Der aufrufende Prozeß ist bereits Prozeßgruppenleiter, oder
               es gibt andere Prozesse, deren Prozeßgruppennummer gleich
               der Prozeßnummer des aufrufenden Prozesses ist.

HINWEISE
     Wenn der aufrufende Prozeß die letzte Komponente einer Pipe ist, die
     von einer Job-Kontroll-Shell gestartet worden ist, kann die Shell den
     aufrufenden Prozeß zum Prozeßgruppenleiter machen. Die anderen Pro-
     zesse der Pipeline werden Mitglieder der Prozeßgruppe. In diesem Fall
     schlägt der Aufruf von setsid() fehl. Aus diesem Grund sollte ein Pro-
     zeß, der setsid() aufruft und davon ausgeht, Teil einer Pipe zu sein,
     vorher immer ein fork(2) ausführen; der Vaterprozeß sollte beendet
     werden, und der Sohnprozeß sollte setsid() aufrufen und dadurch versi-
     chern, daß der Prozeß zuverlässig funktioniert, ob er nun von Job-
     Kontroll-Shells aufgerufen wird oder nicht.

ERGEBNIS
     Nach erfolgreicher Ausführung liefert setsid() die Sitzungsnummer des
     aufrufenden Prozesses zurück. Andernfalls wird -1 zurückgegeben und
     der Fehlertyp durch errno angezeigt.

SIEHE AUCH
     exec(2), exit(2), fork(2), getpid(2), getpgid(2), getsid(2),
     setpgid(2), setpgrp(2), signal(2), sigsend(2).













Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026