killpg(3) Library Functions Manual killpg(3)

killpg - Envoyer un signal à un groupe de processus

Bibliothèque C standard (libc, -lc)

#include <signal.h>
int killpg(int pgrp, int sig);
Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

killpg() :

    _XOPEN_SOURCE >= 500
        || /* Depuis la glibc 2.19 : */ _DEFAULT_SOURCE
        || /* glibc <= 2.19 : */ _BSD_SOURCE

killpg() envoie le signal sig au groupe de processus pgrp. Consultez signal(7) pour la liste des signaux.

Si pgrp vaut 0, killpg() envoie le signal au groupe de processus du processus appelant. (POSIX dit : si pgrp est inférieur ou égal à 1, le comportement est indéterminé.)

Consultez kill(2) pour connaître les permissions nécessaires pour envoyer un signal à un autre processus.

En cas de succès, zéro est renvoyé. En cas d'erreur, -1 est renvoyé et errno est définie pour préciser l'erreur.

sig n'est pas un numéro de signal valide.
Le processus n'a pas la permission d'envoyer un signal à aucun des processus visés. Pour les permissions nécessaires, consultez kill(2).
Aucun processus n'appartient au groupe pgrp.
On a voulu émettre vers le groupe 0, mais le processus en cours n'appartient pas à un groupe.

Il y a des différences dans la vérification des permissions entre les systèmes de type BSD et ceux de type System V. Consultez l'explication de POSIX pour kill(3p). Une différence non mentionnée dans POSIX concerne la valeur de retour EPERM : BSD dit que lorsque la vérification des permissions échoue pour au moins un des processus cible, aucun signal n'est envoyé et EPERM et retournée, alors que POSIX dit que EPERM est retournée seulement lorsque la vérification des permissions échoue pour tous les processus cible.

Sous Linux, killpg() est implémenté comme une fonction de bibliothèque appelant kill(-pgrp, sig).

POSIX.1-2008.

POSIX.1-2001, SVr4, 4.4BSD (la fonction est apparue dans 4BSD).

getpgrp(2), kill(2), signal(2), capabilities(7), credentials(7)

La traduction française de cette page de manuel a été créée par Christophe Blaess https://www.blaess.fr/christophe/, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Cédric Boutillier <cedric.boutillier@gmail.com> et Frédéric Hantrais <fhantrais@gmail.com>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.

30 mars 2023 Pages du manuel de Linux 6.05.01