dpk@brl-sem.ARPA (Doug Kingston <dpk>) (11/12/86)
Index: sys/sys/kern_exec.c 4.3BSD FIX Description: In 4.3BSD, the ability to interrupt systemcalls is controlled on a per-signal basis through the user structure entry u.u_sigintr. Unfortunately, the bit is never reset. Repeat-By: Run one of Doug Gwyn's system V shells compiled for 4.3BSD and watch the behavior of signals on editors or other other programs that have reads which should not be interrupted by signals. Fix: In kern_exec.c, apply the following diff. This will reset the sigintr behavior when it resets all the other signal parameters for the new process image. *** /tmp/,RCSt1009882 Wed Nov 12 15:38:33 1986 --- kern_exec.c Wed Oct 29 22:42:08 1986 *************** *** 343,348 **** --- 343,349 ---- u.u_onstack = 0; u.u_sigsp = 0; u.u_sigonstack = 0; + u.u_sigintr = 0; for (nc = u.u_lastfile; nc >= 0; --nc) { if (u.u_pofile[nc] & UF_EXCLOSE) {