]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
src: remove use of siginterrupt
authorDaiki Ueno <ueno@gnu.org>
Sun, 4 Oct 2020 12:08:37 +0000 (14:08 +0200)
committerDaiki Ueno <ueno@gnu.org>
Wed, 4 Nov 2020 07:55:00 +0000 (08:55 +0100)
GCC 10 warns this:
  tests.c:702:2: error: 'siginterrupt' is deprecated: Use sigaction with SA_RESTART instead [-Werror=deprecated-declarations]

Signed-off-by: Daiki Ueno <ueno@gnu.org>
src/tests.c

index 76b896b8fd4959513a964d770af89de8e232b9a5..067531bd8ecb9e65ad683c5c3516e13266309658 100644 (file)
@@ -678,7 +678,7 @@ test_code_t test_bye(gnutls_session_t session)
        char data[20];
        int secs = 6;
 #ifndef _WIN32
-       int old;
+       struct sigaction sa, old_sa;
 
        signal(SIGALRM, got_alarm);
 #endif
@@ -699,7 +699,9 @@ test_code_t test_bye(gnutls_session_t session)
                return TEST_FAILED;
 
 #ifndef _WIN32
-       old = siginterrupt(SIGALRM, 1);
+       (void) sigaction (SIGALRM, NULL, &sa);
+       sa.sa_flags &= ~SA_RESTART;
+       sigaction(SIGALRM, &sa, &old_sa);
        alarm(secs);
 #else
        setsockopt((int) gnutls_transport_get_ptr(session), SOL_SOCKET,
@@ -712,7 +714,7 @@ test_code_t test_bye(gnutls_session_t session)
        while (ret > 0);
 
 #ifndef _WIN32
-       siginterrupt(SIGALRM, old);
+       sigaction(SIGALRM, &old_sa, NULL);
 #else
        if (WSAGetLastError() == WSAETIMEDOUT ||
            WSAGetLastError() == WSAECONNABORTED)