diff options
Diffstat (limited to '')
-rw-r--r-- | g10/gpgv.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/g10/gpgv.c b/g10/gpgv.c index e708d5c21..2f64f83c7 100644 --- a/g10/gpgv.c +++ b/g10/gpgv.c @@ -87,10 +87,24 @@ static ARGPARSE_OPTS opts[] = { int g10_errors_seen = 0; +static char * +make_libversion (const char *libname, const char *(*getfnc)(const char*)) +{ + const char *s; + char *result; + + s = getfnc (NULL); + result = xmalloc (strlen (libname) + 1 + strlen (s) + 1); + strcpy (stpcpy (stpcpy (result, libname), " "), s); + return result; +} + static const char * my_strusage( int level ) { + static char *ver_gcry; const char *p; + switch (level) { case 11: p = "gpgv (GnuPG)"; @@ -106,6 +120,13 @@ my_strusage( int level ) "Check signatures against known trusted keys\n"); break; + case 20: + if (!ver_gcry) + ver_gcry = make_libversion ("libgcrypt", gcry_check_version); + p = ver_gcry; + break; + + default: p = NULL; } return p; |