blob: 56e4ad7c3937ddc66a0442dbc1edd5e72cdf42ed (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
--- tcp_wrappers_7.6.orig/rfc931.c 1995-01-02 16:11:34.000000000 +0100
+++ tcp_wrappers_7.6/rfc931.c 2009-06-05 18:45:03.000000000 +0200
@@ -33,7 +33,7 @@ static char sccsid[] = "@(#) rfc931.c 1.
int rfc931_timeout = RFC931_TIMEOUT;/* Global so it can be changed */
-static jmp_buf timebuf;
+static sigjmp_buf timebuf;
/* fsocket - open stdio stream on top of socket */
@@ -62,7 +62,7 @@ int protocol;
static void timeout(sig)
int sig;
{
- longjmp(timebuf, sig);
+ siglongjmp(timebuf, sig);
}
/* rfc931 - return remote user name, given socket structures */
@@ -99,7 +99,7 @@ char *dest;
* Set up a timer so we won't get stuck while waiting for the server.
*/
- if (setjmp(timebuf) == 0) {
+ if (sigsetjmp(timebuf,1) == 0) {
signal(SIGALRM, timeout);
alarm(rfc931_timeout);
|