Use SIGUSR1 to propogate SIGURG to the child; security measures prevent
the parent from sending SIGURG itself to the child. This fixes the problem of occasionally failing to pass the window size.
This commit is contained in:
parent
57c1a0b6bf
commit
1f5e29c956
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=91434
@ -773,6 +773,7 @@ reader(omask)
|
||||
#endif
|
||||
(void)signal(SIGTTOU, SIG_IGN);
|
||||
(void)signal(SIGURG, oob);
|
||||
(void)signal(SIGUSR1, oob); /* When propogating SIGURG from parent */
|
||||
ppid = getppid();
|
||||
(void)fcntl(rem, F_SETOWN, pid);
|
||||
(void)setjmp(rcvtop);
|
||||
@ -864,12 +865,12 @@ lostpeer(signo)
|
||||
done(1);
|
||||
}
|
||||
|
||||
/* copy SIGURGs to the child process. */
|
||||
/* copy SIGURGs to the child process via SIGUSR1. */
|
||||
void
|
||||
copytochild(signo)
|
||||
int signo;
|
||||
{
|
||||
(void)kill(child, SIGURG);
|
||||
(void)kill(child, SIGUSR1);
|
||||
}
|
||||
|
||||
void
|
||||
|
Loading…
Reference in New Issue
Block a user