.\" -*- 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 .\" .\" %%%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 .\" . .\" %%%LICENSE_END .\" .\" Modified Sun Sep 11 19:19:05 1994 .\" Modified Mon Mar 25 10:19:00 1996 (merged a few .\" tiny changes from a man page by Charles Livingston). .\" Modified Sun Jul 21 14:45:46 1996 .\" .\"******************************************************************* .\" .\" 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 \fP .br \fB#include \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 4.16 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/. .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Stefan Janke , Martin Eberhard Schauer , Dr. Tobias Quathamer und Mario Blättermann erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an .