Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site ucla-cs.ARPA Path: utzoo!watmath!clyde!burl!mgnetp!ihnp4!houxm!houxz!vax135!cornell!uw-beaver!tektronix!hplabs!sdcrdcf!trwrba!cepu!ucla-cs!lund From: lund@ucla-cs.UUCP Newsgroups: net.news.b Subject: bug in vnews signal handling when replying Message-ID: <716@ucla-cs.ARPA> Date: Tue, 7-Aug-84 20:41:11 EDT Article-I.D.: ucla-cs.716 Posted: Tue Aug 7 20:41:11 1984 Date-Received: Fri, 10-Aug-84 01:21:09 EDT Organization: UCLA CS Dept. Lines: 17 While hacking vnews to use the UCLA version of send I ran in to some signal handling problems with SIGINT. It seems that vnews exec()s the program in prun() and then waits for it to finish. Our send runs in CBREAK and uses SIGINT (^C) to abort. While vnews is waiting it ignores SIGQUIT and catches SIGINT with it's catcher, onint(). Onint() then renalbles the catching and does a ioctl(0,TIOCSTI,"\0") which stuffs a null onto the input queue which gets read by send. Our send did not appreciate this. Now the question is why did vnews do this awful thing? I fixed it by ignoring SIGINT while waiting for the child to finish. .....Laurence Lundblade UCLA CS Dept. UUCP: {cepu,sdcrdcf,ucbvax,ihnp4}!ucla-cs!lund ARPA: lund@ucla-cs.ARPA