From afd7a175b53248d68095cecf5616705d093ffbc9 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 18:14:08 +0200 Subject: Adding debian version 2.2.40-1.1. Signed-off-by: Daniel Baumann --- ..._spawn_process_fd-to-invoke-gpg-agent-dir.patch | 52 ++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 debian/patches/from-master/common-Use-gnupg_spawn_process_fd-to-invoke-gpg-agent-dir.patch (limited to 'debian/patches/from-master/common-Use-gnupg_spawn_process_fd-to-invoke-gpg-agent-dir.patch') diff --git a/debian/patches/from-master/common-Use-gnupg_spawn_process_fd-to-invoke-gpg-agent-dir.patch b/debian/patches/from-master/common-Use-gnupg_spawn_process_fd-to-invoke-gpg-agent-dir.patch new file mode 100644 index 0000000..003dbf4 --- /dev/null +++ b/debian/patches/from-master/common-Use-gnupg_spawn_process_fd-to-invoke-gpg-agent-dir.patch @@ -0,0 +1,52 @@ +From: NIIBE Yutaka +Date: Wed, 24 Jul 2019 15:15:32 +0900 +Subject: common: Use gnupg_spawn_process_fd to invoke gpg-agent/dirmngr. + +* common/asshelp.c (start_new_gpg_agent): Call gnupg_spawn_process_fd +and gnupg_wait_process. +(start_new_dirmngr): Likewise. + +-- + +With --daemon option, gpg-agent/dirmngr detaches by itself. + +Signed-off-by: NIIBE Yutaka +(cherry picked from commit b1c56cf9e2bb51abfd47747128bd2a6285ed1623) +--- + common/asshelp.c | 16 +++++++++++++--- + 1 file changed, 13 insertions(+), 3 deletions(-) + +diff --git a/common/asshelp.c b/common/asshelp.c +index d87017e..73f159d 100644 +--- a/common/asshelp.c ++++ b/common/asshelp.c +@@ -477,8 +477,13 @@ start_new_gpg_agent (assuan_context_t *r_ctx, + if (!(err = lock_spawning (&lock, gnupg_homedir (), "agent", verbose)) + && assuan_socket_connect (ctx, sockname, 0, 0)) + { +- err = gnupg_spawn_process_detached (program? program : agent_program, +- argv, NULL); ++ pid_t pid; ++ ++ err = gnupg_spawn_process_fd (program? program : agent_program, ++ argv, -1, -1, -1, &pid); ++ if (!err) ++ err = gnupg_wait_process (program? program : agent_program, ++ pid, 1, NULL); + if (err) + log_error ("failed to start agent '%s': %s\n", + agent_program, gpg_strerror (err)); +@@ -612,7 +617,12 @@ start_new_dirmngr (assuan_context_t *r_ctx, + if (!(err = lock_spawning (&lock, gnupg_homedir (), "dirmngr", verbose)) + && assuan_socket_connect (ctx, sockname, 0, 0)) + { +- err = gnupg_spawn_process_detached (dirmngr_program, argv, NULL); ++ pid_t pid; ++ ++ err = gnupg_spawn_process_fd (dirmngr_program, argv, ++ -1, -1, -1, &pid); ++ if (!err) ++ err = gnupg_wait_process (dirmngr_program, pid, 1, NULL); + if (err) + log_error ("failed to start the dirmngr '%s': %s\n", + dirmngr_program, gpg_strerror (err)); -- cgit v1.2.3