aboutsummaryrefslogtreecommitdiffstats
path: root/common/util.h
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2025-05-28 13:19:19 +0000
committerWerner Koch <[email protected]>2025-05-30 12:19:02 +0000
commit8d837279bce7fbbf72e1751ff1bd2c8889e96fb4 (patch)
tree7175881d04b4190a2eb782b2f319081f539565ca /common/util.h
parentgpgtar: Fix regression exhibited by make check (diff)
downloadgnupg-8d837279bce7fbbf72e1751ff1bd2c8889e96fb4.tar.gz
gnupg-8d837279bce7fbbf72e1751ff1bd2c8889e96fb4.zip
common: Improve helpfile.c to provide a generic template API.
* common/util.h (GET_TEMPLATE_CURRENT_LOCALE): New. (GET_TEMPLATE_SUBST_ENVVARS): New. (GET_TEMPLATE_CRLF): New. * common/helpfile.c (findkey_fname): Add arg flags and terminate line with CRLF if requested. (findkey_locale): Replace arg only_current_locale by flags and add arg domain. (gnupg_get_help_string): Factor all code out to ... (gnupg_get_template): new. Add arg domain. Handle SUBST flags. Do not trim tralins spaces with the CRLF flag. * common/t-helpfile.c (main): Require domain name and add two options.
Diffstat (limited to 'common/util.h')
-rw-r--r--common/util.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/common/util.h b/common/util.h
index 20456349c..ce1dc37d8 100644
--- a/common/util.h
+++ b/common/util.h
@@ -296,6 +296,14 @@ void gnupg_set_builddir (const char *newdir);
void gnupg_rl_initialize (void);
/*-- helpfile.c --*/
+
+/* Bit flags for gnupg_get_template. */
+#define GET_TEMPLATE_CURRENT_LOCALE 1 /* Use only the current locale. */
+#define GET_TEMPLATE_SUBST_ENVVARS 2 /* Substitute environment variables. */
+#define GET_TEMPLATE_CRLF 4 /* Use CR+LF. */
+
+char *gnupg_get_template (const char *domain, const char *key,
+ unsigned int flags);
char *gnupg_get_help_string (const char *key, int only_current_locale);
/*-- localename.c --*/