aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2002-05-21 15:14:35 +0000
committerWerner Koch <[email protected]>2002-05-21 15:14:35 +0000
commit1721e91c886dd270033d2dd9b3339666fe8613ba (patch)
tree50f04a070fcd4e53f99fd936cb45d147285da744
parent* key.h (gpgme_key_s): Add OTRUST. (diff)
downloadgpgme-1721e91c886dd270033d2dd9b3339666fe8613ba.tar.gz
gpgme-1721e91c886dd270033d2dd9b3339666fe8613ba.zip
* 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.
-rw-r--r--ChangeLog4
-rw-r--r--configure.ac2
-rw-r--r--gpgme/ChangeLog5
-rw-r--r--gpgme/engine-gpgsm.c15
4 files changed, 25 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 100a98ec..00aa55b9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2002-05-21 Werner Koch <[email protected]>
+
+ * configure.ac (NEED_GPGSM_VERSION): We need gpgsm 0.3.7.
+
2002-05-03 Werner Koch <[email protected]>
Released 0.3.6.
diff --git a/configure.ac b/configure.ac
index b61ddb14..3e160e1a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -31,7 +31,7 @@ LIBGPGME_LT_CURRENT=8
LIBGPGME_LT_AGE=2
LIBGPGME_LT_REVISION=0
NEED_GPG_VERSION=1.0.7
-NEED_GPGSM_VERSION=0.3.6
+NEED_GPGSM_VERSION=0.3.7
##############################################
AC_PREREQ(2.52)
AC_REVISION($Revision$)
diff --git a/gpgme/ChangeLog b/gpgme/ChangeLog
index fc030153..bf78bfa3 100644
--- a/gpgme/ChangeLog
+++ b/gpgme/ChangeLog
@@ -1,3 +1,8 @@
+2002-05-21 Werner Koch <[email protected]>
+
+ * engine-gpgsm.c (_gpgme_gpgsm_op_keylist)
+ (_gpgme_gpgsm_op_keylist_ext): Pass the keylist mode to gpgsm.
+
2002-05-10 Werner Koch <[email protected]>
* key.h (gpgme_key_s): Add OTRUST.
diff --git a/gpgme/engine-gpgsm.c b/gpgme/engine-gpgsm.c
index bb2e5530..8d831a33 100644
--- a/gpgme/engine-gpgsm.c
+++ b/gpgme/engine-gpgsm.c
@@ -713,10 +713,18 @@ _gpgme_gpgsm_op_keylist (GpgsmObject gpgsm, const char *pattern,
int secret_only, int keylist_mode)
{
char *line;
+ GpgmeError err;
if (!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'. */
line = xtrymalloc (15 + strlen (pattern) + 1);
if (!line)
@@ -753,6 +761,13 @@ _gpgme_gpgsm_op_keylist_ext (GpgsmObject gpgsm, const char *pattern[],
if (reserved)
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)
{
const char **pat = pattern;