.\" -*- coding: UTF-8 -*-
.\" Copyright Michael Haardt (michael@cantor.informatik.rwth-aachen.de)
.\"     Sat Aug 27 20:43:50 MET DST 1994
.\" and Copyright (C) 2014, Michael Kerrisk <mtk.manpages@gmail.com>
.\"
.\" %%%LICENSE_START(GPLv2+_DOC_FULL)
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" The GNU General Public License's references to "object code"
.\" and "executables" are to be interpreted as the output of any
.\" document formatting or typesetting system, including
.\" intermediate and printed output.
.\"
.\" This manual is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
.\" License along with this manual; if not, see
.\" <http://www.gnu.org/licenses/>.
.\" %%%LICENSE_END
.\"
.\" Modified Sun Sep 11 19:19:05 1994 <faith@cs.unc.edu>
.\" Modified Mon Mar 25 10:19:00 1996 <aeb@cwi.nl> (merged a few
.\"	tiny changes from a man page by Charles Livingston).
.\" Modified Sun Jul 21 14:45:46 1996 <aeb@cwi.nl>
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH SETSID 2 "15. September 2017" Linux Linux\-Programmierhandbuch
.SH BEZEICHNUNG
setsid \- erzeugt eine neue Sitzung und setzt die Prozessgruppenkennung
.SH ÜBERSICHT
.ad l
\fB#include <sys/types.h>\fP
.br
\fB#include <unistd.h>\fP
.PP
\fBpid_t setsid(void);\fP
.br
.ad b
.SH BESCHREIBUNG
\fBsetsid\fP() erzeugt eine neue Sitzung, wenn der aufrufende Prozess kein
Prozessgruppen\-Führer ist. Der aufrufende Prozess wird dann Führer der neuen
Sitzung (seine Sitzungskennung ist die gleiche wie die Prozesskennung). Der
aufrufende Prozess wird außerdem zum Führer einer neuen Prozessgruppe in
dieser Sitzung (seine Prozessgruppenkennung ist die gleiche wie die
Prozesskennung).
.PP
Der aufrufende Prozess wird der einzige Prozess in der neuen Prozessgruppe
und der neuen Sitzung sein.
.PP
Anfänglich hat die neue Sitzung kein steuerndes Terminal. Für Details
darüber, wie eine Sitzung ein steuerndes Terminal erlangt, siehe
\fBcredentials\fP(7).
.SH RÜCKGABEWERT
Bei Erfolg wird die (neue) Sitzungskennung des aufrufenden Prozesses
zurückgeliefert. Im Fehlerfall ist der Rückgabewert \fI(pid_t)\ \-1\fP und
\fIerrno\fP wird entsprechend gesetzt.
.SH FEHLER
.TP 
\fBEPERM\fP
Die Prozessgruppenkennung irgendeines Prozesses der Prozessgruppe ist die
PID des aufrufenden Prozesses. Somit schlägt der Aufruf von \fBsetsid\fP()
insbesondere dann fehl, wenn der aufrufende Prozess bereits ein
Prozessgruppen\-Führer ist.
.SH "KONFORM ZU"
POSIX.1\-2001, POSIX.1\-2008, SVr4.
.SH ANMERKUNGEN
Ein mittels \fBfork\fP(2) erzeugter Kindprozess erbt die Sitzungskennung seines
Elternprozesses. Die Sitzungskennung bleibt über einen Aufruf von
\fBexecve\fP(2) erhalten.
.PP
Ein Prozessgruppen\-Führer ist ein Prozess, dessen Prozessgruppenkennung und
Prozesskennung gleich sind. Wenn einem Prozessgruppen\-Führer verboten wird,
\fBsetsid\fP() aufzurufen, wird auch verhindert, dass der Prozessgruppen\-Führer
sich selbst in einer neuen Sitzung platziert, während andere Prozesse in der
Prozessgruppe in ihrer Originalsitzung verbleiben. Solch ein Szenario würde
die strikte zweistufige Hierarchie von Sitzungen und Prozessgruppen
verletzen. Um sicher zu stellen, dass \fBsetsid\fP() funktioniert, rufen Sie
\fBfork\fP(2) auf und lassen Sie den Elternprozess \fB_exit\fP(2) ausführen,
während das Kind (das bei Definition kein Prozessgruppenleiter sein kann)
\fBsetsid\fP() aufruft.
.PP
Falls eine Sitzung ein steuerndes Terminal hat und der Schalter \fBCLOCAL\fP
für dieses Terminal nicht gesetzt ist und das Terminal aufhängt, dann wird
dem Sitzungsleitenden ein Signal \fBSIGHUP\fP gesandt.
.PP
Falls ein Prozess, der ein Sitzungsleitender ist, sich beendet, dann wird
ein Signal \fBSIGHUP\fP an jeden Prozess in der Vordergrundprozessgruppe des
steuernden Terminals gesandt.
.SH "SIEHE AUCH"
\fBsetsid\fP(1), \fBgetsid\fP(2), \fBsetpgid\fP(2), \fBsetpgrp\fP(2), \fBtcgetsid\fP(3),
\fBcredentials\fP(7), \fBsched\fP(7)
.SH KOLOPHON
Diese Seite ist Teil der Veröffentlichung 5.10 des Projekts
Linux\-\fIman\-pages\fP. Eine Beschreibung des Projekts, Informationen, wie
Fehler gemeldet werden können, sowie die aktuelle Version dieser Seite
finden sich unter \%https://www.kernel.org/doc/man\-pages/.
.PP
.SH ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von
Stefan Janke <gonzo@burg.studfb.unibw-muenchen.de>,
Martin Eberhard Schauer <Martin.E.Schauer@gmx.de>,
Dr. Tobias Quathamer <toddy@debian.org>
und
Mario Blättermann <mario.blaettermann@gmail.com>
erstellt.
.PP
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License Version 3
.UE
oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
.PP
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden,
schicken Sie bitte eine E-Mail an die
.MT debian-l10n-german@lists.debian.org
Mailingliste der Übersetzer
.ME .