* gpgme_signature_t's status field is now correctly set to an error
with error code GPG_ERR_NO_PUBKEY if public key is not found.
+ * gpgme_new_signature_t's class field is now an unsigned int, rather
+ than an unsigned long (the old class field is preserved for
+ backwards compatibility).
+
* Interface changes relative to the 0.4.3 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_get_key CHANGED: Fails correctly if key ID not unique.
gpgme_key_t EXTENDED: New field can_authenticate.
gpgme_subkey_t EXTENDED: New field can_authenticate.
+gpgme_new_signature_t CHANGED: New type for class field.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+2003-08-14 Marcus Brinkmann <marcus@g10code.de>
+
+ * gpgme.texi (Creating a Signature): Change type of member class
+ to unsigned int.
+
2003-08-04 Marcus Brinkmann <marcus@g10code.de>
* gpgme.texi (Verify): Get error code from SIG->status in the code
@item gpgme_hash_algo_t
The hash algorithm used to create this signature.
-@item unsigned long class
+@item unsigned int class
The signature class of this signature.
@item long int timestamp
+2003-08-14 Marcus Brinkmann <marcus@g10code.de>
+
+ * gpgme.h (struct _gpgme_new_signature): Rename member CLASS to
+ _OBSOLETE_CLASS, add member CLASS with type unsigned int.
+ * sign.c (parse_sig_created): Also set SIG->_unused_class for
+ backward compatibility.
+
2003-08-04 Marcus Brinkmann <marcus@g10code.de>
* verify.c (parse_new_sig): Fix status parsing case.
struct _gpgme_new_signature
{
struct _gpgme_new_signature *next;
+
+ /* The type of the signature. */
gpgme_sig_mode_t type;
+
+ /* The public key algorithm used to create the signature. */
gpgme_pubkey_algo_t pubkey_algo;
+
+ /* The hash algorithm used to create the signature. */
gpgme_hash_algo_t hash_algo;
- unsigned long class;
+
+ /* Internal to GPGME, do not use. Must be set to the same value as
+ CLASS below. */
+ unsigned long _obsolete_class;
+
+ /* Signature creation time. */
long int timestamp;
+
+ /* The fingerprint of the signature. */
char *fpr;
+
+ /* Crypto backend specific signature class. */
+ unsigned int class;
};
typedef struct _gpgme_new_signature *gpgme_new_signature_t;
args = tail;
sig->class = strtol (args, &tail, 0);
+ sig->_obsolete_class = sig->class;
if (errno || args == tail || *tail != ' ')
{
/* The crypto backend does not behave. */
+2003-08-14 Marcus Brinkmann <marcus@g10code.de>
+
+ * gpg/t-sign.c (check_result): Change output format for signature
+ class to unsigned int.
+
2003-07-31 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-verify.c (check_result): Change type of SUMMARY to
}
if (result->signatures->class != 1)
{
- fprintf (stderr, "Wrong signature class reported: %lu\n",
+ fprintf (stderr, "Wrong signature class reported: %u\n",
result->signatures->class);
exit (1);
}