1*a2d6b270Schristos /* $NetBSD: sig.h,v 1.11 2016/05/09 21:46:56 christos Exp $ */ 22543e3e6Slukem 36dc2f1dbScgd /*- 46dc2f1dbScgd * Copyright (c) 1992, 1993 56dc2f1dbScgd * The Regents of the University of California. All rights reserved. 66dc2f1dbScgd * 76dc2f1dbScgd * This code is derived from software contributed to Berkeley by 86dc2f1dbScgd * Christos Zoulas of Cornell University. 96dc2f1dbScgd * 106dc2f1dbScgd * Redistribution and use in source and binary forms, with or without 116dc2f1dbScgd * modification, are permitted provided that the following conditions 126dc2f1dbScgd * are met: 136dc2f1dbScgd * 1. Redistributions of source code must retain the above copyright 146dc2f1dbScgd * notice, this list of conditions and the following disclaimer. 156dc2f1dbScgd * 2. Redistributions in binary form must reproduce the above copyright 166dc2f1dbScgd * notice, this list of conditions and the following disclaimer in the 176dc2f1dbScgd * documentation and/or other materials provided with the distribution. 18eb7c1594Sagc * 3. Neither the name of the University nor the names of its contributors 196dc2f1dbScgd * may be used to endorse or promote products derived from this software 206dc2f1dbScgd * without specific prior written permission. 216dc2f1dbScgd * 226dc2f1dbScgd * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 236dc2f1dbScgd * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 246dc2f1dbScgd * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 256dc2f1dbScgd * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 266dc2f1dbScgd * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 276dc2f1dbScgd * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 286dc2f1dbScgd * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 296dc2f1dbScgd * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 306dc2f1dbScgd * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 316dc2f1dbScgd * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 326dc2f1dbScgd * SUCH DAMAGE. 336dc2f1dbScgd * 346dc2f1dbScgd * @(#)sig.h 8.1 (Berkeley) 6/4/93 356dc2f1dbScgd */ 366dc2f1dbScgd 376dc2f1dbScgd /* 386dc2f1dbScgd * el.sig.h: Signal handling functions 396dc2f1dbScgd */ 406dc2f1dbScgd #ifndef _h_el_sig 416dc2f1dbScgd #define _h_el_sig 426dc2f1dbScgd 436dc2f1dbScgd #include <signal.h> 446dc2f1dbScgd 456dc2f1dbScgd /* 466dc2f1dbScgd * Define here all the signals we are going to handle 476dc2f1dbScgd * The _DO macro is used to iterate in the source code 486dc2f1dbScgd */ 496dc2f1dbScgd #define ALLSIGS \ 506dc2f1dbScgd _DO(SIGINT) \ 516dc2f1dbScgd _DO(SIGTSTP) \ 526dc2f1dbScgd _DO(SIGQUIT) \ 536dc2f1dbScgd _DO(SIGHUP) \ 546dc2f1dbScgd _DO(SIGTERM) \ 556dc2f1dbScgd _DO(SIGCONT) \ 566dc2f1dbScgd _DO(SIGWINCH) 57d25b6758Schristos #define ALLSIGSNO 7 586dc2f1dbScgd 59d25b6758Schristos typedef struct { 60d25b6758Schristos struct sigaction sig_action[ALLSIGSNO]; 61d25b6758Schristos sigset_t sig_set; 62e8bbf84cSchristos volatile sig_atomic_t sig_no; 63d25b6758Schristos } *el_signal_t; 646dc2f1dbScgd 65*a2d6b270Schristos libedit_private void sig_end(EditLine*); 66*a2d6b270Schristos libedit_private int sig_init(EditLine*); 67*a2d6b270Schristos libedit_private void sig_set(EditLine*); 68*a2d6b270Schristos libedit_private void sig_clr(EditLine*); 696dc2f1dbScgd 706dc2f1dbScgd #endif /* _h_el_sig */ 71