From c33523a0132e047032c4d65f9dedec0297bfbef3 Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Tue, 17 Sep 2024 09:24:41 +0900 Subject: common:w32: Don't expose unused functions. * common/exechelp.h [HAVE_W32_SYSTEM] (get_max_fds): Don't expose. (close_all_fds, get_all_open_fds): Likewise. * common/exechelp-w32.c: Don't expose unused functions. -- GnuPG-bug-id: 7293 Signed-off-by: NIIBE Yutaka --- common/exechelp-w32.c | 12 ++++++++++-- common/exechelp.h | 2 ++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/common/exechelp-w32.c b/common/exechelp-w32.c index 0600bc555..e7278937b 100644 --- a/common/exechelp-w32.c +++ b/common/exechelp-w32.c @@ -97,7 +97,15 @@ my_error (int errcode) return gpg_err_make (default_errsource, errcode); } - +/* + * get_max_fds, close_all_fds and get_all_open_fds are functions for + * POSIX, not Windows. After fork and before exec on POSIX, those are + * used when spawning a child process so that the child process + * doesn't keep having file descriptors not needed for it. On + * Windows, spawn API has a different semantics (than fork + exec). + */ +#undef EXPORT_UNUSED_FUNCTIONS +#ifdef EXPORT_UNUSED_FUNCTIONS /* Return the maximum number of currently allowed open file descriptors. Only useful on POSIX systems but returns a value on other systems too. */ @@ -178,7 +186,7 @@ get_all_open_fds (void) #endif /*HAVE_STAT*/ return array; } - +#endif /* Helper function to build_w32_commandline. */ static char * diff --git a/common/exechelp.h b/common/exechelp.h index 1240fde33..4348c54d1 100644 --- a/common/exechelp.h +++ b/common/exechelp.h @@ -31,6 +31,7 @@ #define GNUPG_COMMON_EXECHELP_H +#ifndef HAVE_W32_SYSTEM /* Return the maximum number of currently allowed file descriptors. Only useful on POSIX systems. */ int get_max_fds (void); @@ -49,6 +50,7 @@ void close_all_fds (int first, int *except); use of this function right at startup even before libgcrypt has been initialized. Returns NULL on error and sets ERRNO accordingly. */ int *get_all_open_fds (void); +#endif /* Portable function to create a pipe. Under Windows the write end is -- cgit v1.2.3