version 1.9, 1997/07/31 17:55:16 |
version 1.10, 1997/11/13 03:30:21 |
|
|
sig_t saveint; |
sig_t saveint; |
#ifndef TIOCSTI |
#ifndef TIOCSTI |
sig_t savequit; |
sig_t savequit; |
|
#else |
|
# ifdef TIOCEXT |
|
int extproc, flag; |
|
#endif /* TIOCEXT */ |
#endif |
#endif |
sig_t savetstp; |
sig_t savetstp; |
sig_t savettou; |
sig_t savettou; |
|
|
if ((savequit = signal(SIGQUIT, SIG_IGN)) == SIG_DFL) |
if ((savequit = signal(SIGQUIT, SIG_IGN)) == SIG_DFL) |
(void)signal(SIGQUIT, SIG_DFL); |
(void)signal(SIGQUIT, SIG_DFL); |
#else |
#else |
|
# ifdef TIOCEXT |
|
extproc = ((ttybuf.c_lflag & EXTPROC) ? 1 : 0); |
|
if (extproc) { |
|
flag = 0; |
|
if (ioctl(fileno(stdin), TIOCEXT, &flag) < 0) |
|
warn("TIOCEXT: off"); |
|
} |
|
# endif /* TIOCEXT */ |
if (sigsetjmp(intjmp, 1)) { |
if (sigsetjmp(intjmp, 1)) { |
errs = SIGINT; |
errs = SIGINT; |
goto out; |
goto out; |
|
|
if (ttyset) |
if (ttyset) |
tcsetattr(fileno(stdin), TCSADRAIN, &ttybuf); |
tcsetattr(fileno(stdin), TCSADRAIN, &ttybuf); |
(void)signal(SIGQUIT, savequit); |
(void)signal(SIGQUIT, savequit); |
|
#else |
|
# ifdef TIOCEXT |
|
if (extproc) { |
|
flag = 1; |
|
if (ioctl(fileno(stdin), TIOCEXT, &flag) < 0) |
|
warn("TIOCEXT: on"); |
|
} |
|
# endif /* TIOCEXT */ |
#endif |
#endif |
(void)signal(SIGINT, saveint); |
(void)signal(SIGINT, saveint); |
return(errs); |
return(errs); |