diff options
| author | Werner Koch <[email protected]> | 2025-05-14 08:34:46 +0000 |
|---|---|---|
| committer | Werner Koch <[email protected]> | 2025-05-16 12:26:45 +0000 |
| commit | 645cf7d8fc25615fd6d2cb027fad8f3dadffb09d (patch) | |
| tree | d9bec45b0b8bf69191bd35bec2a27a49948a48da /agent/gpg-agent.c | |
| parent | common: Add KEM constants for NIST curves. (diff) | |
| download | gnupg-645cf7d8fc25615fd6d2cb027fad8f3dadffb09d.tar.gz gnupg-645cf7d8fc25615fd6d2cb027fad8f3dadffb09d.zip | |
Revert "w32: On socket nonce mismatch close the socket."
--
The commit was entirely bogus because the check_nonce function closes
the socket itself if it returns with true. Thus closing the socket by
the caller in the true case was bogus.
The more likely cause for the hangs on Windows are in scdaemon:
* scd: Fix posssible lockup on Windows due to a lost select
result. [rGa7ec3792c5]
GnuPG-bug-id: 7434
Fixes-commit: 73f6c2dd4d3e5b58faf69821726988ae984fad89.
Diffstat (limited to 'agent/gpg-agent.c')
| -rw-r--r-- | agent/gpg-agent.c | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c index 5b1a124e0..ae1295977 100644 --- a/agent/gpg-agent.c +++ b/agent/gpg-agent.c @@ -2877,9 +2877,8 @@ start_connection_thread_std (void *arg) if (check_nonce (ctrl, &socket_nonce)) { - log_error ("handler 0x%lx for fd %d FAILED nonce check\n", - (unsigned long) npth_self(), FD_DBG (ctrl->thread_startup.fd)); - assuan_sock_close (ctrl->thread_startup.fd); + log_error ("handler 0x%lx nonce check FAILED\n", + (unsigned long) npth_self()); return NULL; } @@ -2895,9 +2894,8 @@ start_connection_thread_extra (void *arg) if (check_nonce (ctrl, &socket_nonce_extra)) { - log_error ("handler 0x%lx for fd %d FAILED nonce check\n", - (unsigned long) npth_self(), FD_DBG (ctrl->thread_startup.fd)); - assuan_sock_close (ctrl->thread_startup.fd); + log_error ("handler 0x%lx nonce check FAILED\n", + (unsigned long) npth_self()); return NULL; } @@ -2914,9 +2912,8 @@ start_connection_thread_browser (void *arg) if (check_nonce (ctrl, &socket_nonce_browser)) { - log_error ("handler 0x%lx for fd %d FAILED nonce check\n", - (unsigned long) npth_self(), FD_DBG (ctrl->thread_startup.fd)); - assuan_sock_close (ctrl->thread_startup.fd); + log_error ("handler 0x%lx nonce check FAILED\n", + (unsigned long) npth_self()); return NULL; } @@ -2932,10 +2929,7 @@ start_connection_thread_ssh (void *arg) ctrl_t ctrl = arg; if (check_nonce (ctrl, &socket_nonce_ssh)) - { - assuan_sock_close (ctrl->thread_startup.fd); - return NULL; - } + return NULL; active_connections++; agent_init_default_ctrl (ctrl); |
