SETSID(2)

NOM
setsid - Créer une session et définir l'identifiant 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 définis à la valeur de PID du processus en cours. Le processus en cours sera le seul dans son groupe et sa session.

VALEUR RENVOYÉE
En cas de succès, l'identifiant de la (nouvelle) session du processus appelant est renvoyé. En cas d'échec, (pid_t) -1 est renvoyé, et errno contient le code de l'erreur.

ERREURS

EPERM
    L'identifiant 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.

CONFORMITÉ
SVr4, POSIX.1-2001.

NOTES
Un fils créé par fork(2) hérite de l'identifiant de session de son père. L'identifiant de session est conservé au travers d'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(2), suivi d'un _exit(2) pour le père, et le fils appellera setsid().

VOIR AUSSI
getsid(2), setpgid(2), setpgrp(2), tcgetsid(3), credentials(7)

COLOPHON
Cette page fait partie de la publication 3.40 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <URL:http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <URL:http://perkamon.alioth.debian.org/>.

Christophe Blaess <URL:http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <URL:http://manpagesfr.free.fr/> (2003-2006). Julien Cristau et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».