* engine-gpgsm.c (_gpgme_gpgsm_op_keylist)

(_gpgme_gpgsm_op_keylist_ext):  Pass the keylist mode to gpgsm.

* configure.ac (NEED_GPGSM_VERSION): We need gpgsm 0.3.7.
This commit is contained in:
Werner Koch 2002-05-21 15:14:35 +00:00
parent fe2e3af237
commit 1721e91c88
4 changed files with 25 additions and 1 deletions

View File

@ -1,3 +1,7 @@
2002-05-21 Werner Koch <wk@gnupg.org>
* configure.ac (NEED_GPGSM_VERSION): We need gpgsm 0.3.7.
2002-05-03 Werner Koch <wk@gnupg.org> 2002-05-03 Werner Koch <wk@gnupg.org>
Released 0.3.6. Released 0.3.6.

View File

@ -31,7 +31,7 @@ LIBGPGME_LT_CURRENT=8
LIBGPGME_LT_AGE=2 LIBGPGME_LT_AGE=2
LIBGPGME_LT_REVISION=0 LIBGPGME_LT_REVISION=0
NEED_GPG_VERSION=1.0.7 NEED_GPG_VERSION=1.0.7
NEED_GPGSM_VERSION=0.3.6 NEED_GPGSM_VERSION=0.3.7
############################################## ##############################################
AC_PREREQ(2.52) AC_PREREQ(2.52)
AC_REVISION($Revision$) AC_REVISION($Revision$)

View File

@ -1,3 +1,8 @@
2002-05-21 Werner Koch <wk@gnupg.org>
* engine-gpgsm.c (_gpgme_gpgsm_op_keylist)
(_gpgme_gpgsm_op_keylist_ext): Pass the keylist mode to gpgsm.
2002-05-10 Werner Koch <wk@gnupg.org> 2002-05-10 Werner Koch <wk@gnupg.org>
* key.h (gpgme_key_s): Add OTRUST. * key.h (gpgme_key_s): Add OTRUST.

View File

@ -713,10 +713,18 @@ _gpgme_gpgsm_op_keylist (GpgsmObject gpgsm, const char *pattern,
int secret_only, int keylist_mode) int secret_only, int keylist_mode)
{ {
char *line; char *line;
GpgmeError err;
if (!pattern) if (!pattern)
pattern = ""; pattern = "";
if (asprintf (&line, "OPTION list-mode=%d", (keylist_mode & 3)) < 0)
return mk_error (Out_Of_Core);
err = gpgsm_assuan_simple_command (gpgsm->assuan_ctx, line);
free (line);
if (err)
return err;
/* Length is "LISTSECRETKEYS " + p + '\0'. */ /* Length is "LISTSECRETKEYS " + p + '\0'. */
line = xtrymalloc (15 + strlen (pattern) + 1); line = xtrymalloc (15 + strlen (pattern) + 1);
if (!line) if (!line)
@ -753,6 +761,13 @@ _gpgme_gpgsm_op_keylist_ext (GpgsmObject gpgsm, const char *pattern[],
if (reserved) if (reserved)
return mk_error (Invalid_Value); return mk_error (Invalid_Value);
if (asprintf (&line, "OPTION list-mode=%d", (keylist_mode & 3)) < 0)
return mk_error (Out_Of_Core);
err = gpgsm_assuan_simple_command (gpgsm->assuan_ctx, line);
free (line);
if (err)
return err;
if (pattern && *pattern) if (pattern && *pattern)
{ {
const char **pat = pattern; const char **pat = pattern;