GSIGNAL(3)

NOM
gsignal, ssignal - Gestion de signaux

SYNOPSIS
#include <signal.h>

typedef void (*sighandler_t)(int);

int gsignal(intsignum);

sighandler_t ssignal(int signum, sighandler_t action);

Exigences de macros de test de fonctionalités pour la glibc (voir feature_test_macros(7)) :

gsignal(), ssignal() : _SVID_SOURCE

DESCRIPTION
N'utilisez pas ces fonctions sous Linux. À cause d'une ancienne méprise, elles sont en réalité des synonymes de raise(3) et signal(2), respectivement.

Ailleurs, sur des systèmes System V, ces fonctions implémentent une gestion des signaux entièrement indépendante des appels système classiques signal(2) et kill(2). La fonction ssignal() définit l'action à entreprendre quand le signal numéro signum est envoyé au processus à l'aide de la fonction gsignal(), et renvoie l'action précédente, comme SIG_DFL. La fonction gsignal() agit ainsi : si aucune action (ou SIG_DFL) est indiqué pour signum, alors elle ne fait rien et renvoie zéro. Si l'action SIG_IGN est indiqué pour signum, alors elle ne fait rien et renvoie 1. Sinon, elle replace l'action à SIG_DFL et appelle le gestionnaire concerné, avec l'argument signum, et renvoie la valeur de retour de cette fonction. L'intervalle de valeurs possibles pour signum varie (souvent 1-15 ou 1-17).

CONFORMITÉ
Ces fonctions sont disponibles sous AIX, DG/UX, HP-UX, SCO, Solaris, Tru64. Elles sont considérées obsolètes sur la plupart de ces systèmes et sont erronées avec les bibliothèques libc Linux et glibc. Certains systèmes ont gsignal_r() et ssignal_r().

VOIR AUSSI
kill(2), signal(2), raise(3)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 21 juillet 1996 et révisée le 19 décembre 2007.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 gsignal ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.