Scroll to navigation

KILLPG(3) Linux-Programmierhandbuch KILLPG(3)

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():
_XOPEN_SOURCE >= 500 || /* Seit Glibc 2.19: */ _DEFAULT_SOURCE || /* Glibc-Versionen <= 2.19: */ _BSD_SOURCE

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.)

Für die benötigten Rechte, um ein Signal an einen anderen Prozess zu senden, siehe kill(2).

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. Für die benötigten Rechte, siehe kill(2).
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

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

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.

Unterschiede C-Bibliothek/Kernel

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 5.04 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 https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze <joey@infodrom.org>, Patrick Rother <krd@gulu.net>, 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 die Mailingliste der Übersetzer.

15. September 2017 Linux