diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 16:14:08 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 16:14:08 +0000 |
commit | afd7a175b53248d68095cecf5616705d093ffbc9 (patch) | |
tree | 5678015e96cc82aac7cf90a0b967aaea7a1c0841 /debian/patches/from-master/common-Use-gnupg_spawn_process_fd-to-invoke-gpg-agent-dir.patch | |
parent | Adding upstream version 2.2.40. (diff) | |
download | gnupg2-afd7a175b53248d68095cecf5616705d093ffbc9.tar.xz gnupg2-afd7a175b53248d68095cecf5616705d093ffbc9.zip |
Adding debian version 2.2.40-1.1.debian/2.2.40-1.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'debian/patches/from-master/common-Use-gnupg_spawn_process_fd-to-invoke-gpg-agent-dir.patch')
-rw-r--r-- | debian/patches/from-master/common-Use-gnupg_spawn_process_fd-to-invoke-gpg-agent-dir.patch | 52 |
1 files changed, 52 insertions, 0 deletions
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 <gniibe@fsij.org> +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 <gniibe@fsij.org> +(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)); |