killpg(3)

NAZWA
killpg - wysyła sygnał do grupy procesów

BIBLIOTEKA
Standardowa biblioteka C (libc, -lc)

SKŁADNIA
#include <signal.h>

int killpg(int pgrp, int sig);

    Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

killpg():
    _XOPEN_SOURCE >= 500
        || /* Od glibc 2.19: */ _DEFAULT_SOURCE
        || /* glibc <= 2.19: */ _BSD_SOURCE

OPIS
killpg() wysyła sygnał sig do grupy procesów pgrp. Lista sygnałów znajduje się w podręczniku sigaction(2).

Jeśli pgrp jest równe 0, to killpg wysyła sygnał do grupy procesów procesu wysyłającego (POSIX wskazuje: jeśli pgrp jest mniejsze lub równe 1, zachowanie jest niezdefiniowane).

Uprawnienia potrzebne do wysłania sygnału do innego procesu opisano w podręczniku kill(2).

WARTOŚĆ ZWRACANA
Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest -1 i ustawiane errno, wskazując błąd.

BŁĘDY

EINVAL
    sig nie jest prawidłowym numerem sygnału.

EPERM
    Proces nie ma uprawnień do wysyłania sygnału do żadnego z procesów docelowych. Potrzebne uprawnienia opisano w podręczniku kill(2).

ESRCH
    Nie znaleziono żadnego procesu w grupie określonej przez pgrp.

ESRCH
    Podano zerową grupę, lecz proces wysyłający nie ma grupy procesów.

WERSJE
Istnieją pewne różnice pomiędzy sprawdzaniem uprawnień w systemach typu BSD i systemach typu System V. Uzasadnienie POSIX opisano w podręczniku kill(3p). Różnica nieopisana przez POSIX dotyczy wartości EPERM: BSD dokumentuje brak wysyłania sygnału i zwrócenie EPERM, gdy zawiodło sprawdzanie uprawnień dla co najmniej jednego procesu docelowego, natomiast POSIX dokumentuje EPERM tylko, gdy zawiodło sprawdzanie uprawnień dla wszystkich procesów docelowych.

  Różnice biblioteki C/jądra
W Linuksie, killpg() zaimplementowano jako funkcję biblioteczną czyniącą wywołanie kill(-pgrp, sig).

STANDARDY
POSIX.1-2008.

HISTORIA
POSIX.1-2001, SVr4, 4.4BSD (pojawiło się pierwotnie w 4BSD).

ZOBACZ TAKŻE
getpgrp(2), kill(2), signal(2), capabilities(7), credentials(7)

TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika: Przemek Borys <pborys@dione.ids.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 (https://www.gnu.org/licenses/gpl-3.0.html) lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.