diff --git a/NEWS b/NEWS index b8be7e06..040b67c7 100644 --- a/NEWS +++ b/NEWS @@ -21,6 +21,7 @@ gpgme_op_verify CHANGED: Returns more status codes. GPGME_ATTR_SIG_STATUS NEW gpgme_get_sig_string_attr NEW gpgme_get_sig_ulong_attr NEW +gpgme_get_protocol NEW ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Noteworthy changes in version 0.3.5 (2002-04-01) diff --git a/TODO b/TODO index ec2f2e19..7e667e40 100644 --- a/TODO +++ b/TODO @@ -10,6 +10,8 @@ Hey Emacs, this is -*- outline -*- mode! * add locking to the key cache? +* cleanup the namespace - we use log_* assuna_* ascii_* mutext_* + * Documentation ** Add note about GPGME clearing out pointer return values. ** validity/trust diff --git a/doc/ChangeLog b/doc/ChangeLog index 8405f595..19b141e5 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,11 @@ +2002-05-03 Werner Koch + + * gpgme.texi (Manipulating Data Buffers): Changed some data types + to void*. + (Protocol Selection): Added gpgme_get_protocol. + (Verify): Updated to include the new attribute fucntions and + status codes. + 2002-04-27 Werner Koch * gpgme.texi (Manipulating Data Buffers): New type GpgmeDataEncoding. diff --git a/doc/gpgme.texi b/doc/gpgme.texi index a028bb01..0061274b 100644 --- a/doc/gpgme.texi +++ b/doc/gpgme.texi @@ -844,7 +844,7 @@ be returned to the user, the function will return @code{NULL}. @section Manipulating Data Buffers @cindex data buffere, manipulation -@deftypefun GpgmeError gpgme_data_read (@w{GpgmeData @var{dh}}, @w{char *@var{buffer}}, @w{size_t @var{length}}, @w{size_t *@var{nread}}) +@deftypefun GpgmeError gpgme_data_read (@w{GpgmeData @var{dh}}, @w{void *@var{buffer}}, @w{size_t @var{length}}, @w{size_t *@var{nread}}) The function @code{gpgme_data_read} reads up to @var{length} bytes from the data object with the handle @var{dh} into the space starting at @var{buffer}. The actual amount read is returned in @var{nread}. @@ -874,7 +874,7 @@ the user) and @code{GPGME_Invalid_Value} if @var{dh} is not a valid pointer. @end deftypefun -@deftypefun GpgmeError gpgme_data_write (@w{GpgmeData @var{dh}}, @w{const char *@var{buffer}}, @w{size_t @var{length}}) +@deftypefun GpgmeError gpgme_data_write (@w{GpgmeData @var{dh}}, @w{const void *@var{buffer}}, @w{size_t @var{length}}) The function @code{gpgme_data_write} writes @var{length} bytes starting from @var{buffer} into the data object with the handle @var{dh} at the current write position. @@ -1051,6 +1051,10 @@ set successfully, and @code{GPGME_Invalid_Value} if @var{protocol} is not a valid protocol. @end deftypefun +@deftypefun GpgmeProtocol gpgme_get_protocol (@w{GpgmeCtx @var{ctx}}) +The function @code{gpgme_get_protocol} retrieves the protocol currently +use with the context @var{ctx}. +@end deftypefun @node @acronym{ASCII} Armor @subsection @acronym{ASCII} Armor @@ -1992,6 +1996,16 @@ This status should not occur in normal operation. This status indicates that the signature is valid. For the combined result this status means that all signatures are valid. +@item GPGME_SIG_STAT_GOOD_EXP +This status indicates that the signature is valid but expired. For the +combined result this status means that all signatures are valid and expired.. + +@item GPGME_SIG_STAT_GOOD_EXPKEY +This status indicates that the signature is valid but the key used to +verify the signature has expired. For the +combined result this status means that all signatures are valid and all +keys are expired. + @item GPGME_SIG_STAT_BAD This status indicates that the signature is invalid. For the combined result this status means that all signatures are invalid. @@ -2068,6 +2082,47 @@ fingerprint of the key which signed the plaintext, or @code{NULL} if no verification could be performed. @end deftypefun +@deftypefun {const char *} gpgme_get_sig_string_attr (@w{GpgmeCtx @var{ctx}}, @w{int @var{idx}}, @w{GpgmeAttr @var{waht}}, @w{int @var{reserved}}) +This function is similar to @code{gpgme_get_sig_status} but may be used +to retrieve more detailed information. @var{ctx} should be the context +used for the last signature verification, @var{idx} is used to enumerate +over all signatures starting with @code{0} and @var{reserved} should be +@code{0} for now. + +The only attribute @var{what} currently supported is +@code{GPGME_ATTR_FPR} to return the fingerprint of the key used to +create the signature. +@end deftypefun + +@deftypefun {const char *} gpgme_get_sig_ulong_attr (@w{GpgmeCtx @var{ctx}}, @w{int @var{idx}}, @w{GpgmeAttr @var{waht}}, @w{int @var{reserved}}) +This fucntion is similar to @code{gpgme_get_sig_string_attr} but used +for attributes which can be represented by an @code{unsigned long} data +type. @var{ctx} should be the context used for the last signature +verification, @var{idx} is used to enumerate over all signatures +starting with @code{0} and @var{reserved} should be @code{0} for now. + +The following values may be used for @var{what}: +@table @code +@item GPGME_ATTR_CREATED +Return the creation time of the signature in seconds since Epoch. This +is the same value as returned by @code{gpgme_get_sig_status}. + +@item GPGME_ATTR_EXPIRE +Return the expiration time of the signature in seconds since Epoch. + +@item GPGME_ATTR_VALIDITY +Returns the validity of the key used to create the signature. This is a +shortcut function which avoids an extra key lookup. The value returned +is one of @code{GPGME_VALIDITY_UNKNOWN}, @code{GPGME_VALIDITY_NEVER}, +@code{GPGME_VALIDITY_MARGINAL} or @code{GPGME_VALIDITY_FULL}. + +@item GPGME_ATTR_SIG_STATUS +This is the same value as returned by @code{gpgme_get_sig_status}. + +@end table +@end deftypefun + + @deftypefun {const char *} gpgme_get_sig_key (@w{GpgmeCtx @var{ctx}}, @w{int @var{idx}}, @w{GpgmeSigKey *@var{r_stat}}) The function @code{gpgme_get_sig_status} receives a @code{GpgmeKey} object for the key which was used to verify the signature after the