Provided by: manpages-nl-dev_4.21.0-2_all 

NAAM
setsid - maakt een sessie aan en zet de proces groep ID
BIBLIOTHEEK
Standard C bibliotheek (libc, -lc)
SAMENVATTING
#include <unistd.h>
pid_t setsid(void);
BESCHRIJVING
setsid() maakt een nieuwe sessie aan als het aanroepende proces niet de proces groep leider is. Het
aanroepende proces is de leider van de nieuwe sessie (m.a.w. zijn sessie ID wordt hetzelfde gemaakt als
zijn proces ID). Het aanroepende proces wordt op deze manier ook de proces groep leider van een nieuwe
proces groep in de sessie (m.a.w. de proces groep ID wordt hetzelfde gemaakt als zijn proces ID).
Het aanroepende proces zal het enige proces zijn in deze nieuwe proces groep en in deze nieuwe sessie.
Initieel heeft de nieuwe sessie geen controlerende terminal. Zie, voor details op welke manier een sessie
een controlerende terminal verkrijgt, credentials(7).
EIND WAARDE
Bij succes, wordt de (nieuwe) sessie ID van het aanroepende proces teruggegeven. Bij een fout, wordt
(pid_t)-1 teruggegeven, en wordt errno gezet om de fout aan te geven.
FOUTEN
EPERM De proces groep ID van elk proces is gelijk aan de PID van het aanroepende proces. Daarom zal in
het bijzonder setsid() falen als het aanroepende proces al een proces groep leider is.
VOLDOET AAN
POSIX.1-2001, POSIX.1-2008, SVr4.
OPMERKINGEN
Een kind aangemaakt door fork(2) erft het sessie ID van zijn ouders. De sessie ID blijft bewaard dwars
door execve(2).
Een proces groep leider is een proces waarvan zijn proces groep ID gelijk is aan zijn PID. Niet toestaan
dat een proces groep leider setsid() aanroept voorkomt de mogelijkheid dat een proces groep leider
zichzelf in een nieuwe sessie zet terwijl ander processen in de proces groep in de originele sessie
blijven; zo´n scenario zou de strikte twee-niveau hiërarchie van sessies en proces groepen breken. Om er
zeker van te zijn dat setsid() succesvol is, roep dan fork(2) aan en zorg ervoor dat de ouder _exit(2)
aanroept, terwijl het kind (die per definitie geen proces groep leider kan zijn) setsid(2) aanroept.
Als een sessie een controlerende terminal heeft, en de CLOCAL vlag voor deze terminal is niet gezet, en
de terminal wordt opgehangen, dan zal een SIGHUP signaal naar de sessie leider gestuurd worden.
Als een proces, zijnde de sessie leider, eindigt, dan zal een SIGHUP signaal naar elk proces in de
voorgrond proces groep van de controlerende terminal gestuurd worden.
ZIE OOK
setsid(1), getsid(2), setpgid(2), setpgrp(2), tcgetsid(3), credentials(7), sched(7)
VERTALING
De Nederlandse vertaling van deze handleiding is geschreven door Jos Boersema <joshb@xs4all.nl>, Mario
Blättermann <mario.blaettermann@gmail.com> en Luc Castermans <luc.castermans@gmail.com>
Deze vertaling is vrije documentatie; lees de GNU General Public License Version 3 of later over de
Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.
Indien U fouten in de vertaling van deze handleiding zou vinden, stuur een e-mail naar debian-l10n-
dutch@lists.debian.org.
Linux man-pagina's 6.03 30 oktober 2022 setsid(2)