2012-04-22 04:21:26 +02:00
|
|
|
--- rfc931.c.orig
|
2008-10-13 18:39:38 +02:00
|
|
|
+++ rfc931.c
|
2012-04-22 04:21:26 +02:00
|
|
|
@@ -33,7 +33,7 @@ static char sccsid[] = "@(#) rfc931.c 1.
|
2008-10-13 18:39:38 +02:00
|
|
|
|
|
|
|
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 */
|
|
|
|
|
2012-04-22 04:21:26 +02:00
|
|
|
@@ -62,7 +62,7 @@ int protocol;
|
2008-10-13 18:39:38 +02:00
|
|
|
static void timeout(sig)
|
|
|
|
int sig;
|
|
|
|
{
|
|
|
|
- longjmp(timebuf, sig);
|
|
|
|
+ siglongjmp(timebuf, sig);
|
|
|
|
}
|
|
|
|
|
|
|
|
/* rfc931 - return remote user name, given socket structures */
|
2012-04-22 04:21:26 +02:00
|
|
|
@@ -133,7 +133,7 @@ char *dest;
|
2008-10-13 18:39:38 +02:00
|
|
|
* 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);
|
|
|
|
|