From b8c5d99406c9935a127d49116a92f56bcb78ff4b Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Wed, 2 Aug 2023 14:34:17 +0900 Subject: [PATCH] gpg,agent,kbx,sm,scd,tpm2d,g13: Use assuan_control. * agent/gpg-agent.c (thread_init_once): Call assuan_control. * g10/gpg.c (main): Likewise. * g13/g13.c (main): Likewise. * kbx/keyboxd.c (thread_init_once): Likewise. * scd/scdaemon.c (main): Likewise. * sm/gpgsm.c (main): Likewise. * tpm2d/tpm2daemon.c (main): Likewise. -- GnuPG-bug-id: 6606 Signed-off-by: NIIBE Yutaka --- agent/gpg-agent.c | 1 + g10/gpg.c | 1 + g13/g13.c | 1 + kbx/keyboxd.c | 1 + scd/scdaemon.c | 2 ++ sm/gpgsm.c | 1 + tpm2d/tpm2daemon.c | 2 ++ 7 files changed, 9 insertions(+) diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c index afd864295..9df0facbe 100644 --- a/agent/gpg-agent.c +++ b/agent/gpg-agent.c @@ -1043,6 +1043,7 @@ thread_init_once (void) * initialized and thus Libgcrypt could not set its system call * clamp. */ gcry_control (GCRYCTL_REINIT_SYSCALL_CLAMP, 0, 0); + assuan_control (ASSUAN_CONTROL_REINIT_SYSCALL_CLAMP, NULL); } diff --git a/g10/gpg.c b/g10/gpg.c index 23c1453dd..beb2e0cad 100644 --- a/g10/gpg.c +++ b/g10/gpg.c @@ -3860,6 +3860,7 @@ main (int argc, char **argv) /* Init threading which is used by some helper functions. */ npth_init (); gpgrt_set_syscall_clamp (npth_unprotect, npth_protect); + assuan_control (ASSUAN_CONTROL_REINIT_SYSCALL_CLAMP, NULL); if (logfile) { diff --git a/g13/g13.c b/g13/g13.c index d9594dd52..e0453176a 100644 --- a/g13/g13.c +++ b/g13/g13.c @@ -433,6 +433,7 @@ main (int argc, char **argv) /* Prepare libassuan. */ assuan_set_gpg_err_source (GPG_ERR_SOURCE_DEFAULT); setup_libassuan_logging (&opt.debug, NULL); + assuan_control (ASSUAN_REINIT_SYSCALL_CLAMP, NULL); /* Setup a default control structure for command line mode. */ memset (&ctrl, 0, sizeof ctrl); diff --git a/kbx/keyboxd.c b/kbx/keyboxd.c index c55b2a0d9..e8e41486c 100644 --- a/kbx/keyboxd.c +++ b/kbx/keyboxd.c @@ -436,6 +436,7 @@ thread_init_once (void) * initialized and thus Libgcrypt could not set its system call * clamp. */ gcry_control (GCRYCTL_REINIT_SYSCALL_CLAMP, 0, 0); + assuan_control (ASSUAN_CONTROL_REINIT_SYSCALL_CLAMP, NULL); } diff --git a/scd/scdaemon.c b/scd/scdaemon.c index 54c5760ba..0376cbfba 100644 --- a/scd/scdaemon.c +++ b/scd/scdaemon.c @@ -754,6 +754,7 @@ main (int argc, char **argv ) npth_init (); setup_signal_mask (); gpgrt_set_syscall_clamp (npth_unprotect, npth_protect); + assuan_control (ASSUAN_CONTROL_REINIT_SYSCALL_CLAMP, NULL); /* If --debug-allow-core-dump has been given we also need to switch the working directory to a place where we can actually @@ -895,6 +896,7 @@ main (int argc, char **argv ) npth_init (); setup_signal_mask (); gpgrt_set_syscall_clamp (npth_unprotect, npth_protect); + assuan_control (ASSUAN_CONTROL_REINIT_SYSCALL_CLAMP, NULL); /* Detach from tty and put process into a new session. */ if (!nodetach ) diff --git a/sm/gpgsm.c b/sm/gpgsm.c index c0e929d7d..da1949ca7 100644 --- a/sm/gpgsm.c +++ b/sm/gpgsm.c @@ -1586,6 +1586,7 @@ main ( int argc, char **argv) npth_init (); gpgrt_set_syscall_clamp (npth_unprotect, npth_protect); + assuan_control (ASSUAN_CONTROL_REINIT_SYSCALL_CLAMP, NULL); /* if (opt.qualsig_approval && !opt.quiet) */ /* log_info (_("This software has officially been approved to " */ diff --git a/tpm2d/tpm2daemon.c b/tpm2d/tpm2daemon.c index 13e20b9ef..416a27df0 100644 --- a/tpm2d/tpm2daemon.c +++ b/tpm2d/tpm2daemon.c @@ -595,6 +595,7 @@ main (int argc, char **argv ) npth_init (); gpgrt_set_syscall_clamp (npth_unprotect, npth_protect); + assuan_control (ASSUAN_REINIT_SYSCALL_CLAMP, NULL); /* If --debug-allow-core-dump has been given we also need to switch the working directory to a place where we can actually @@ -736,6 +737,7 @@ main (int argc, char **argv ) npth_init (); gpgrt_set_syscall_clamp (npth_unprotect, npth_protect); + assuan_control (ASSUAN_REINIT_SYSCALL_CLAMP, NULL); /* Detach from tty and put process into a new session. */ if (!nodetach )