aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcus Brinkmann <[email protected]>2003-12-25 14:38:40 +0000
committerMarcus Brinkmann <[email protected]>2003-12-25 14:38:40 +0000
commitde739f876b8d506e32a209d2979ed44a0a33b41d (patch)
tree6292f08f35a0a483582ffb2ac54bee630d27e199
parent2003-12-23 Moritz Schulte <[email protected]> (diff)
downloadgpgme-de739f876b8d506e32a209d2979ed44a0a33b41d.tar.gz
gpgme-de739f876b8d506e32a209d2979ed44a0a33b41d.zip
doc/
2003-12-25 Marcus Brinkmann <[email protected]> * gpgme.texi (Key Management): Rename member class in gpgme_key_sig_t to sig_class. (Creating a Signature): Likewise for gpgme_signature_t. gpgme/ 2003-12-25 Marcus Brinkmann <[email protected]> * gpgme.h (_GPGME_D_CLASS): Revert this change. (struct _gpgme_key_sig): For C++ compilers, rename class member to _obsolete_class. Add new member sig_class. (struct _gpgme_new_signature): Same here. * key.c (gpgme_key_sig_get_ulong_attr): Use CERTSIG->sig_class, not CERTSIG->class. * keylist.c (keylist_colon_handler): Likewise for KEYSIG, but keep setting KEYSIG->class, too. Rename variable CLASS to SIG_CLASS. * sign.c (parse_sig_created): Set SIG->sig_class.
-rw-r--r--NEWS11
-rw-r--r--doc/ChangeLog6
-rw-r--r--doc/gpgme.texi4
-rw-r--r--gpgme/ChangeLog12
-rw-r--r--gpgme/gpgme.h24
-rw-r--r--gpgme/key.c2
-rw-r--r--gpgme/keylist.c9
-rw-r--r--gpgme/sign.c5
8 files changed, 57 insertions, 16 deletions
diff --git a/NEWS b/NEWS
index 72f615ff..4818a782 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,17 @@
Noteworthy changes in version 0.4.4 (unreleased)
------------------------------------------------
+ * The member "class" in gpgme_key_sig_t and gpgme_new_signature_t has
+ been renamed to "sig_class", to avoid clash with C++ compilers. In
+ the C API, the old name "class" has been preserved for backwards
+ compatibility, but is deprecated.
+
+ * Interface changes relative to the 0.4.3 release:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+gpgme_key_sig_t CHANGED: class deprecated, use new sig_class.
+gpgme_new_signature_t CHANGED: class deprecated, use new sig_class.
+
+
Noteworthy changes in version 0.4.3 (2003-10-06)
------------------------------------------------
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 1589e416..6d6d7bb7 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,9 @@
+2003-12-25 Marcus Brinkmann <[email protected]>
+
+ * gpgme.texi (Key Management): Rename member class in
+ gpgme_key_sig_t to sig_class.
+ (Creating a Signature): Likewise for gpgme_signature_t.
+
2003-12-23 Moritz Schulte <[email protected]>
* gpgme.texi (Listing Keys): Minor clarification for
diff --git a/doc/gpgme.texi b/doc/gpgme.texi
index 8c34f897..071793fc 100644
--- a/doc/gpgme.texi
+++ b/doc/gpgme.texi
@@ -2199,7 +2199,7 @@ signature does not expire.
This is the status of the signature and has the same meaning as the
member of the same name in a @code{gpgme_signature_t} object.
-@item unsigned int class
+@item unsigned int sig_class
This specifies the signature class of the key signature. The meaning
is specific to the crypto engine.
@@ -4038,7 +4038,7 @@ The public key algorithm used to create this signature.
@item gpgme_hash_algo_t
The hash algorithm used to create this signature.
-@item unsigned int class
+@item unsigned int sig_class
The signature class of this signature.
@item long int timestamp
diff --git a/gpgme/ChangeLog b/gpgme/ChangeLog
index 61b69fee..6506525c 100644
--- a/gpgme/ChangeLog
+++ b/gpgme/ChangeLog
@@ -1,3 +1,15 @@
+2003-12-25 Marcus Brinkmann <[email protected]>
+
+ * gpgme.h (_GPGME_D_CLASS): Revert this change.
+ (struct _gpgme_key_sig): For C++ compilers, rename class
+ member to _obsolete_class. Add new member sig_class.
+ (struct _gpgme_new_signature): Same here.
+ * key.c (gpgme_key_sig_get_ulong_attr): Use CERTSIG->sig_class,
+ not CERTSIG->class.
+ * keylist.c (keylist_colon_handler): Likewise for KEYSIG, but keep
+ setting KEYSIG->class, too. Rename variable CLASS to SIG_CLASS.
+ * sign.c (parse_sig_created): Set SIG->sig_class.
+
2003-12-22 Werner Koch <[email protected]>
* gpgme.h (_GPGME_D_CLASS): Kludge for C++ compatibility without
diff --git a/gpgme/gpgme.h b/gpgme/gpgme.h
index ac5cea74..4c37961b 100644
--- a/gpgme/gpgme.h
+++ b/gpgme/gpgme.h
@@ -44,10 +44,6 @@ extern "C" {
#if 0 /* just to make Emacs auto-indent happy */
}
#endif
-/* Keyword renaming for the sake of C doubleplus. */
-#define _GPGME_D_CLASS clazz
-#else
-#define _GPGME_D_CLASS class
#endif /* __cplusplus */
#include <gpg-error.h>
@@ -510,8 +506,12 @@ struct _gpgme_key_sig
/* Same as in gpgme_signature_t. */
gpgme_error_t status;
- /* Crypto backend specific signature class. */
- unsigned int _GPGME_D_CLASS;
+#ifdef __cplusplus
+ unsigned int _obsolete_class _GPGME_DEPRECATED;
+#else
+ /* Must be set to SIG_CLASS below. */
+ unsigned int class _GPGME_DEPRECATED;
+#endif
/* The user ID string. */
char *uid;
@@ -524,6 +524,9 @@ struct _gpgme_key_sig
/* The comment part of the user ID. */
char *comment;
+
+ /* Crypto backend specific signature class. */
+ unsigned int sig_class;
};
typedef struct _gpgme_key_sig *gpgme_key_sig_t;
@@ -1090,8 +1093,15 @@ struct _gpgme_new_signature
/* The fingerprint of the signature. */
char *fpr;
+#ifdef __cplusplus
+ unsigned int _obsolete_class_2;
+#else
+ /* Must be set to SIG_CLASS below. */
+ unsigned int class _GPGME_DEPRECATED;
+#endif
+
/* Crypto backend specific signature class. */
- unsigned int _GPGME_D_CLASS;
+ unsigned int sig_class;
};
typedef struct _gpgme_new_signature *gpgme_new_signature_t;
diff --git a/gpgme/key.c b/gpgme/key.c
index 3c0d7360..05beb114 100644
--- a/gpgme/key.c
+++ b/gpgme/key.c
@@ -695,7 +695,7 @@ gpgme_key_sig_get_ulong_attr (gpgme_key_t key, int uid_idx, _gpgme_attr_t what,
return certsig->expired;
case GPGME_ATTR_SIG_CLASS:
- return certsig->class;
+ return certsig->sig_class;
case GPGME_ATTR_SIG_STATUS:
return certsig->status;
diff --git a/gpgme/keylist.c b/gpgme/keylist.c
index 88ce7ca8..99499de5 100644
--- a/gpgme/keylist.c
+++ b/gpgme/keylist.c
@@ -650,11 +650,12 @@ keylist_colon_handler (void *priv, char *line)
if (fields >= 11)
if (field[10][0] && field[10][1])
{
- int class = _gpgme_hextobyte (field[10]);
- if (class >= 0)
+ int sig_class = _gpgme_hextobyte (field[10]);
+ if (sig_class >= 0)
{
- keysig->class = class;
- if (class == 0x30)
+ keysig->sig_class = sig_class;
+ keysig->class = keysig->sig_class;
+ if (sig_class == 0x30)
keysig->revoked = 1;
}
if (field[10][2] == 'x')
diff --git a/gpgme/sign.c b/gpgme/sign.c
index 4c71f804..4e1a523a 100644
--- a/gpgme/sign.c
+++ b/gpgme/sign.c
@@ -143,8 +143,9 @@ parse_sig_created (char *args, gpgme_new_signature_t *sigp)
}
args = tail;
- sig->class = strtol (args, &tail, 0);
- sig->_obsolete_class = sig->class;
+ sig->sig_class = strtol (args, &tail, 0);
+ sig->class = sig->sig_class;
+ sig->_obsolete_class = sig->sig_class;
if (errno || args == tail || *tail != ' ')
{
/* The crypto backend does not behave. */