aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2025-05-14 08:34:46 +0000
committerWerner Koch <[email protected]>2025-05-16 12:26:45 +0000
commit645cf7d8fc25615fd6d2cb027fad8f3dadffb09d (patch)
treed9bec45b0b8bf69191bd35bec2a27a49948a48da
parentcommon: Add KEM constants for NIST curves. (diff)
downloadgnupg-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.
-rw-r--r--agent/command.c2
-rw-r--r--agent/gpg-agent.c20
-rw-r--r--dirmngr/dirmngr.c3
-rw-r--r--kbx/keyboxd.c5
4 files changed, 11 insertions, 19 deletions
diff --git a/agent/command.c b/agent/command.c
index ff018dde7..88c5576fb 100644
--- a/agent/command.c
+++ b/agent/command.c
@@ -4400,7 +4400,7 @@ register_commands (assuan_context_t ctx)
/* Startup the server. If LISTEN_FD and FD is given as -1, this is a
- simple pipe server, otherwise it is a regular server. CTRL is the
+ simple piper server, otherwise it is a regular server. CTRL is the
control structure for this connection; it has only the basic
initialization. */
void
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);
diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c
index 492171aac..08f313879 100644
--- a/dirmngr/dirmngr.c
+++ b/dirmngr/dirmngr.c
@@ -2272,8 +2272,7 @@ start_connection_thread (void *arg)
if (check_nonce (fd, &socket_nonce))
{
- log_error ("handler for fd %d FAILED nonce check\n", FD_DBG (fd));
- assuan_sock_close (fd);
+ log_error ("handler nonce check FAILED\n");
return NULL;
}
diff --git a/kbx/keyboxd.c b/kbx/keyboxd.c
index 28e292e10..197f01c74 100644
--- a/kbx/keyboxd.c
+++ b/kbx/keyboxd.c
@@ -1448,9 +1448,8 @@ start_connection_thread (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;
}