Linux

CentOS 5.3

setsid(2)


SETSID

NOM

setsid − Créer une session et fixer l’ID du groupe de processus.

SYNOPSIS

#include <unistd.h>

pid_t setsid(void);

DESCRIPTION

setsid() crée une nouvelle session si le processus appelant n’est pas un leader de groupe. Le processus appelant devient le leader du nouveau groupe, et n’a pas de terminal de contrôle. L’ID du groupe de processus et l’ID de session du processus appelant sont fixés à la valeur de PID du processus en cours. Le processus en cours sera le seul dans son groupe et sa session.

VALEUR RENVOYÃE

S’il réussit, setsid() renvoie l’ID de session du processus en cours. S’il échoue, il renvoie −1 et errno contient le code d’erreur.

ERREURS

La seule erreur susceptible de se produire est EPERM. Elle est déclenchée si l’ID du groupe de processus d’un processus quelconque est égal au PID du processus appelant. En particulier setsid() échoue si le processus appelant est déjà leader d’un groupe.

NOTES

Un processus fils créé avec fork(2) hérite de l’ID session de son père. L’ID session est préservé à travers un execve(2).

Le leader d’un groupe est le processus dont le PID est égal à l’ID du groupe. Pour s’assurer que setsid() réussira, il faut effectuer un fork(), suivi d’un exit() pour le père, et le fils appellera setsid().

CONFORMITÃ

SVr4, POSIX.1-2001.

VOIR AUSSI

setpgid(2), setpgrp(2), tcgetsid(3)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 15 octobre 1996 et révisée le 14 août 2006.

L’équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 2 setsid ». N’hésitez pas à signaler à l’auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.


setsid(2)