mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
Print library versions according to GNU standards.
This commit is contained in:
parent
4b3389b7bd
commit
5dc1c18c3a
9 changed files with 162 additions and 102 deletions
|
@ -1,3 +1,8 @@
|
|||
2008-11-18 Werner Koch <wk@g10code.com>
|
||||
|
||||
* scdaemon.c (make_libversion): New.
|
||||
(my_strusage): Print libgcrypt and libksba version.
|
||||
|
||||
2008-11-03 Werner Koch <wk@g10code.com>
|
||||
|
||||
* command.c (server_local_s): Add field DISCONNECT_ALLOWED.
|
||||
|
|
|
@ -200,10 +200,30 @@ static int fixed_gcry_pth_init (void)
|
|||
|
||||
|
||||
|
||||
static char *
|
||||
make_libversion (const char *libname, const char *(*getfnc)(const char*))
|
||||
{
|
||||
const char *s;
|
||||
char *result;
|
||||
|
||||
if (maybe_setuid)
|
||||
{
|
||||
gcry_control (GCRYCTL_INIT_SECMEM, 0, 0); /* Drop setuid. */
|
||||
maybe_setuid = 0;
|
||||
}
|
||||
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, *ver_ksba;
|
||||
const char *p;
|
||||
|
||||
switch (level)
|
||||
{
|
||||
case 11: p = "scdaemon (GnuPG)";
|
||||
|
@ -212,6 +232,16 @@ my_strusage (int level)
|
|||
case 17: p = PRINTABLE_OS_NAME; break;
|
||||
case 19: p = _("Please report bugs to <" PACKAGE_BUGREPORT ">.\n");
|
||||
break;
|
||||
case 20:
|
||||
if (!ver_gcry)
|
||||
ver_gcry = make_libversion ("libgcrypt", gcry_check_version);
|
||||
p = ver_gcry;
|
||||
break;
|
||||
case 21:
|
||||
if (!ver_ksba)
|
||||
ver_ksba = make_libversion ("libksba", ksba_check_version);
|
||||
p = ver_ksba;
|
||||
break;
|
||||
case 1:
|
||||
case 40: p = _("Usage: scdaemon [options] (-h for help)");
|
||||
break;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue