aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2025-07-31 09:37:08 +0000
committerWerner Koch <[email protected]>2025-07-31 09:37:27 +0000
commit5dadef08f0504988807bc59eed9e37f89d4f84cb (patch)
treeda96854c5f65127828a023f204140aacc6202af1
parentgpgtar: Fix regression in end-of-archive detection. (diff)
downloadgnupg-5dadef08f0504988807bc59eed9e37f89d4f84cb.tar.gz
gnupg-5dadef08f0504988807bc59eed9e37f89d4f84cb.zip
gpgtar: Do not close stderr when calling gpg.
* tools/gpgtar-extract.c (gpgtar_extract): Do not close stderr. * tools/gpgtar-list.c (gpgtar_list): Ditto. -- This is another regression which made it impossible to use use --status-fd=2 and also swallowed all other stderr output from gpg. This is somewhat related GnuPG-bug-id: 7757
-rw-r--r--NEWS1
-rw-r--r--tools/gpgtar-extract.c3
-rw-r--r--tools/gpgtar-list.c3
3 files changed, 5 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index d9e6297c7..9329b05a8 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,7 @@
Noteworthy changes in version 2.5.12 (unreleased)
-------------------------------------------------
+ * gpgtar: Fix regression in end-of-archive detection. [T7757]
Release-info: https://dev.gnupg.org/T7756
diff --git a/tools/gpgtar-extract.c b/tools/gpgtar-extract.c
index 55a517220..d23ccc579 100644
--- a/tools/gpgtar-extract.c
+++ b/tools/gpgtar-extract.c
@@ -492,7 +492,8 @@ gpgtar_extract (const char *filename, int decrypt)
#endif
err = gpgrt_process_spawn (opt.gpg_program, argv,
((filename ? 0 : GPGRT_PROCESS_STDIN_KEEP)
- | GPGRT_PROCESS_STDOUT_PIPE), act, &proc);
+ | GPGRT_PROCESS_STDOUT_PIPE
+ | GPGRT_PROCESS_STDERR_KEEP), act, &proc);
gpgrt_spawn_actions_release (act);
xfree (argv);
if (err)
diff --git a/tools/gpgtar-list.c b/tools/gpgtar-list.c
index 14a77bb33..9f2eca318 100644
--- a/tools/gpgtar-list.c
+++ b/tools/gpgtar-list.c
@@ -527,7 +527,8 @@ gpgtar_list (const char *filename, int decrypt)
#endif
err = gpgrt_process_spawn (opt.gpg_program, argv,
((filename ? 0 : GPGRT_PROCESS_STDIN_KEEP)
- | GPGRT_PROCESS_STDOUT_PIPE), act, &proc);
+ | GPGRT_PROCESS_STDOUT_PIPE
+ | GPGRT_PROCESS_STDERR_KEEP), act, &proc);
gpgrt_spawn_actions_release (act);
xfree (argv);
if (err)