(* ---------------------------------------------------------------------------- * $Id: MASSIGNAL.mi,v 1.6 1995/11/04 20:40:01 pesch Exp $ * ---------------------------------------------------------------------------- * Copyright (c) 1994, 1995 Universitaet Passau * ---------------------------------------------------------------------------- * This file is part of MAS. * ---------------------------------------------------------------------------- * $Log: MASSIGNAL.mi,v $ * Revision 1.6 1995/11/04 20:40:01 pesch * Renamed massignal.m? to massig.m? because of conflict with MASSIGNAL.m? * on certain OS. * * Revision 1.5 1995/10/13 16:02:10 pesch * Fixed error: sigsetmask() at wrong places caused SIGUSR1 to be blocked * permanently. * * Revision 1.4 1995/09/12 17:22:49 pesch * Signal handling function are now declared in massignal. * Action has been changed according to ANSI C. * signal.* and massignal.* have been removed, the former because of * name clash with signal.h. * * Revision 1.3 1994/04/14 12:42:03 pesch * Defined Action according to POSIX. * * Revision 1.2 1994/04/12 13:55:51 pesch * Added line feed after signal handler output. * * Revision 1.1 1994/04/12 13:25:26 pesch * Default handling for SIGUSR1 is now done in MASSIGNAL. * * ---------------------------------------------------------------------------- *) IMPLEMENTATION MODULE MASSIGNAL; (* MAS Signal Handling Implementation Module. *) FROM MASBIOS IMPORT BLINES, CUNIT, SOUNIT, SWRITE; FROM MASSTOR IMPORT LIST; FROM massig IMPORT Action, SIGUSR1, SIG_IGN, SIG_IGN, raise, signal; CONST rcsidi = "$Id: MASSIGNAL.mi,v 1.6 1995/11/04 20:40:01 pesch Exp $"; CONST copyrighti = "Copyright (c) 1994, 1995 Universitaet Passau"; VAR s: Action; PROCEDURE SigUsr1HandleDefault(signo: INTEGER); VAR dummy: Action; Dummy: LIST; BEGIN dummy:=signal(SIGUSR1,SIG_IGN); Dummy:=SOUNIT("CON:x"); BLINES(0); SWRITE("______________________________________________________________________________"); BLINES(0); SWRITE("SIGUSR1 received. This is the default signal handler."); BLINES(0); SWRITE("Sorry, whatever is executing at the moment has"); BLINES(0); SWRITE("no special signal-handler installed."); BLINES(0); SWRITE("______________________________________________________________________________"); BLINES(1); Dummy:=CUNIT("CON:x"); dummy:=signal(SIGUSR1,SigUsr1HandleDefault); END SigUsr1HandleDefault; BEGIN (* Install a default handler for SIGUSR1. *) s:=signal(SIGUSR1,SigUsr1HandleDefault); END MASSIGNAL. (* -EOF- *)