1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-06-18 00:49:50 +02:00

* gpg.c (print_algo_names): New. (list_config): Use it here for the

"ciphername" and "digestname" config items so we can get a
script-parseable list of the names.
This commit is contained in:
David Shaw 2007-11-28 15:09:52 +00:00
parent e60684e3d8
commit c756a493c9
2 changed files with 41 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2007-11-28 David Shaw <dshaw@jabberwocky.com>
* gpg.c (print_algo_names): New.
(list_config): Use it here for the "ciphername" and "digestname"
config items so we can get a script-parseable list of the names.
2007-11-19 Werner Koch <wk@g10code.com>
* keyedit.c (keyedit_menu): String grammar fix.

View File

@ -1324,7 +1324,6 @@ check_permissions(const char *path,int item)
return 0;
}
static void
print_algo_numbers(int (*checker)(int))
{
@ -1343,6 +1342,23 @@ print_algo_numbers(int (*checker)(int))
}
}
static void
print_algo_names(int (*checker)(int),const char *(*mapper)(int))
{
int i,first=1;
for(i=0;i<=110;i++)
{
if(!checker(i))
{
if(first)
first=0;
else
printf(";");
printf("%s",mapper(i));
}
}
}
/* In the future, we can do all sorts of interesting configuration
output here. For now, just give "group" as the Enigmail folks need
@ -1410,6 +1426,14 @@ list_config(char *items)
any=1;
}
if(show_all || ascii_strcasecmp(name,"ciphername")==0)
{
printf("cfg:ciphername:");
print_algo_names(check_cipher_algo,cipher_algo_to_string);
printf("\n");
any=1;
}
if(show_all
|| ascii_strcasecmp(name,"digest")==0
|| ascii_strcasecmp(name,"hash")==0)
@ -1420,6 +1444,16 @@ list_config(char *items)
any=1;
}
if(show_all
|| ascii_strcasecmp(name,"digestname")==0
|| ascii_strcasecmp(name,"hashname")==0)
{
printf("cfg:digestname:");
print_algo_names(check_digest_algo,digest_algo_to_string);
printf("\n");
any=1;
}
if(show_all || ascii_strcasecmp(name,"compress")==0)
{
printf("cfg:compress:");