Scroll to navigation

KILLPG(2) Linux-Programmierhandbuch KILLPG(2)

BEZEICHNUNG

killpg - sendet ein Signal zu einer Prozessgruppe

ÜBERSICHT

#include <signal.h>
int killpg(int pgrp, int sig);

Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):
killpg():
_BSD_SOURCE || _XOPEN_SOURCE >= 500 || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED

BESCHREIBUNG

killpg() sendet das Signal sig an die Prozessgruppe pgrp. In signal(7) finden Sie eine Liste der Signale.
Falls pgrp 0 ist, sendet killpg() das Signal an die Prozessgruppe des aufrufenden Prozesses. (POSIX sagt: Falls pgrp kleiner oder gleich 1 ist, ist das Verhalten undefiniert.)
Damit ein Prozess ein Signal senden darf, muss er entweder privilegiert sein (unter Linux muss er die CAP_KILL-Fähigkeit besitzen) oder die echte beziehungsweise effektive Benutzer-ID des sendenden Prozesses muss der realen oder gespeicherten SUID (gesetzte Benutzer-ID) des Zielprozesses entsprechen. Im Fall von SIGCONT reicht es, wenn die sendenden und empfangenden Prozesse zur gleichen Sitzung gehören.

RÜCKGABEWERT

Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird -1 zurückgegeben und errno entsprechend gesetzt.

FEHLER

EINVAL
sig ist keine gültige Signalnummer.
EPERM
Der Prozess verfügt nicht über das Recht, das Signal an einen der Zielprozesse zu senden.
ESRCH
Es kann kein Prozess gefunden werden, der der Prozessgruppe pgrp angehört.
ESRCH
Als Prozessgruppe wurde 0 angegeben, der sendende Prozess hat aber keine Prozessgruppe.

KONFORM ZU

SVr4, 4.4BSD (der Funktionsaufruf killpg() erschien erstmals in 4BSD), POSIX.1-2001.

ANMERKUNGEN

Es gibt mehrere Unterschiede zwischen den Rechteprüfungen in Systemen vom BSD- und vom System-Typ. Siehe das POSIX-Grundprinzip für kill(). Ein nicht von POSIX genannter Unterschied betrifft den Rückgabewert EPERM: BSD beschreibt, dass kein Signal gesandt wird und EPERM zurückgegeben wird, wenn die Rechteprüfung für mindestens einen Zielprozess fehlschlägt, während dies bei POSIX EPERM nur der Fall ist, wenn die Rechteprüfung für alle Zielprozesse fehlschlägt.
Auf Linux ist killpg() als eine Bibliotheksfunktion implementiert, die kill(-pgrp, sig) aufruft.

SIEHE AUCH

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

KOLOPHON

Diese Seite ist Teil der Veröffentlichung 3.74 des Projekts Linux- man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Patrick Rother <krd@gulu.net>, Martin Schulze <joey@infodrom.org>, Chris Leick <c.leick@vollbio.de> und Mario Blättermann <mario.blaettermann@gmail.com> 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 <debian-l10n-german@lists.debian.org>.
20. September 2010 Linux