Ultrix-3.1/src/cmd/csh/onintr.c
/**********************************************************************
* Copyright (c) Digital Equipment Corporation 1984, 1985, 1986. *
* All Rights Reserved. *
* Reference "/usr/src/COPYRIGHT" for applicable restrictions. *
**********************************************************************/
/* SCCSID: @(#)onintr.c 3.0 4/21/86 */
#include "sh.h"
#include <sys/ioctl.h>
doonintr(v)
char **v;
{
register char *cp;
register char *vv = v[1];
if (parintr == SIG_IGN)
return;
if (setintr && intty)
bferr("Can't from terminal");
cp = gointr, gointr = 0, xfree(cp);
if (vv == 0) {
if (setintr)
sighold(SIGINT);
else
sigset(SIGINT, SIG_DFL);
gointr = 0;
} else if (eq((vv = strip(vv)), "-")) {
sigset(SIGINT, SIG_IGN);
gointr = "-";
} else {
gointr = savestr(vv);
sigset(SIGINT, pintr);
}
}