gnutls-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SCM] GNU gnutls branch, gnutls_2_8_x, updated. gnutls_2_8_6-4-g74f77b6


From: Simon Josefsson
Subject: [SCM] GNU gnutls branch, gnutls_2_8_x, updated. gnutls_2_8_6-4-g74f77b6
Date: Mon, 15 Mar 2010 13:49:19 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU gnutls".

http://git.savannah.gnu.org/cgit/gnutls.git/commit/?id=74f77b602ea3099ec7b6105055bbf7054ecd4328

The branch, gnutls_2_8_x has been updated
       via  74f77b602ea3099ec7b6105055bbf7054ecd4328 (commit)
       via  04052dc154929216f9c04cd45868c0ac24f26f8c (commit)
      from  9281daa3a9b961346d0f426a63384fe640513bb3 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 74f77b602ea3099ec7b6105055bbf7054ecd4328
Author: Simon Josefsson <address@hidden>
Date:   Mon Mar 15 14:49:15 2010 +0100

    Add.

commit 04052dc154929216f9c04cd45868c0ac24f26f8c
Author: Simon Josefsson <address@hidden>
Date:   Mon Mar 15 14:49:00 2010 +0100

    Upgrade libtasn1 to v2.5.

-----------------------------------------------------------------------

Summary of changes:
 NEWS                       |    2 +
 lib/minitasn1/coding.c     |   55 +++----
 lib/minitasn1/decoding.c   |  249 ++++++++++++++---------------
 lib/minitasn1/element.c    |  387 ++++++++++++++++++++++----------------------
 lib/minitasn1/errors.c     |   32 ++--
 lib/minitasn1/gstr.c       |    4 +-
 lib/minitasn1/int.h        |    4 +-
 lib/minitasn1/libtasn1.h   |    6 +-
 lib/minitasn1/parser_aux.c |    6 +-
 lib/minitasn1/structure.c  |  209 ++++++++++++------------
 10 files changed, 473 insertions(+), 481 deletions(-)

diff --git a/NEWS b/NEWS
index d178ee0..3fc498d 100644
--- a/NEWS
+++ b/NEWS
@@ -5,6 +5,8 @@ See the end for copying conditions.
 
 * Version 2.8.7 (unreleased)
 
+** minitasn1: Internal copy updated to libtasn1 v2.5.
+
 ** API and ABI modifications:
 No changes since last version.
 
diff --git a/lib/minitasn1/coding.c b/lib/minitasn1/coding.c
index ea0c7d9..9a28b12 100644
--- a/lib/minitasn1/coding.c
+++ b/lib/minitasn1/coding.c
@@ -1,6 +1,6 @@
 /*
- *      Copyright (C) 2004, 2006, 2008, 2009 Free Software Foundation
- *      Copyright (C) 2002  Fabio Fiorina
+ * Copyright (C) 2002, 2004, 2006, 2008, 2009, 2010 Free Software
+ * Foundation, Inc.
  *
  * This file is part of LIBTASN1.
  *
@@ -843,32 +843,31 @@ _asn1_ordering_set_of (unsigned char *der, int der_len, 
ASN1_TYPE node)
 }
 
 /**
-  * asn1_der_coding - Creates the DER encoding for the NAME structure
-  * @element: pointer to an ASN1 element
-  * @name: the name of the structure you want to encode (it must be
-  *   inside *POINTER).
-  * @ider: vector that will contain the DER encoding. DER must be a
-  *   pointer to memory cells already allocated.
-  * @len: number of bytes of address@hidden: @address@hidden, Initialy
-  *   holds the sizeof of der vector.
-  * @errorDescription : return the error description or an empty
-  *   string if success.
-  *
-  * Creates the DER encoding for the NAME structure (inside *POINTER
-  * structure).
-  *
-  * Returns:
-  *
-  *   ASN1_SUCCESS: DER encoding OK.
-  *
-  *   ASN1_ELEMENT_NOT_FOUND: NAME is not a valid element.
-  *
-  *   ASN1_VALUE_NOT_FOUND: There is an element without a value.
-  *
-  *   ASN1_MEM_ERROR: @ider vector isn't big enough. Also in this case
-  *     LEN will contain the length needed.
-  *
-  **/
+ * asn1_der_coding:
+ * @element: pointer to an ASN1 element
+ * @name: the name of the structure you want to encode (it must be
+ *   inside *POINTER).
+ * @ider: vector that will contain the DER encoding. DER must be a
+ *   pointer to memory cells already allocated.
+ * @len: number of bytes of address@hidden: @address@hidden, Initialy
+ *   holds the sizeof of der vector.
+ * @errorDescription : return the error description or an empty
+ *   string if success.
+ *
+ * Creates the DER encoding for the NAME structure (inside *POINTER
+ * structure).
+ *
+ * Returns:
+ *
+ *   %ASN1_SUCCESS: DER encoding OK.
+ *
+ *   %ASN1_ELEMENT_NOT_FOUND: NAME is not a valid element.
+ *
+ *   %ASN1_VALUE_NOT_FOUND: There is an element without a value.
+ *
+ *   %ASN1_MEM_ERROR: @ider vector isn't big enough. Also in this case
+ *     LEN will contain the length needed.
+ **/
 asn1_retCode
 asn1_der_coding (ASN1_TYPE element, const char *name, void *ider, int *len,
                 char *ErrorDescription)
diff --git a/lib/minitasn1/decoding.c b/lib/minitasn1/decoding.c
index b79002c..6875baf 100644
--- a/lib/minitasn1/decoding.c
+++ b/lib/minitasn1/decoding.c
@@ -1,6 +1,6 @@
 /*
- *      Copyright (C) 2004, 2006, 2008, 2009 Free Software Foundation
- *      Copyright (C) 2002 Fabio Fiorina
+ * Copyright (C) 2002, 2004, 2006, 2008, 2009, 2010 Free Software
+ * Foundation, Inc.
  *
  * This file is part of LIBTASN1.
  *
@@ -112,7 +112,7 @@ asn1_get_length_der (const unsigned char *der, int der_len, 
int *len)
  *
  * Decode the class and TAG from DER code.
  *
- * Return value: Returns ASN1_SUCCESS on success, or an error.
+ * Return value: Returns %ASN1_SUCCESS on success, or an error.
  **/
 int
 asn1_get_tag_der (const unsigned char *der, int der_len,
@@ -203,7 +203,7 @@ asn1_get_length_ber (const unsigned char *ber, int ber_len, 
int *len)
  *
  * Extract an OCTET SEQUENCE from DER data.
  *
- * Return value: Returns ASN1_SUCCESS on success, or an error.
+ * Return value: Returns %ASN1_SUCCESS on success, or an error.
  **/
 int
 asn1_get_octet_der (const unsigned char *der, int der_len,
@@ -328,7 +328,7 @@ _asn1_get_objectid_der (const unsigned char *der, int 
der_len, int *ret_len,
  *
  * Extract a BIT SEQUENCE from DER data.
  *
- * Return value: Return ASN1_SUCCESS on success, or an error.
+ * Return value: Return %ASN1_SUCCESS on success, or an error.
  **/
 int
 asn1_get_bit_der (const unsigned char *der, int der_len,
@@ -798,29 +798,28 @@ _asn1_get_indefinite_length_string (const unsigned char 
*der, int *len)
 
 
 /**
-  * asn1_der_decoding - Fill the structure *ELEMENT with values of a DER 
encoding string.
-  * @element: pointer to an ASN1 structure.
-  * @ider: vector that contains the DER encoding.
-  * @len: number of bytes of address@hidden: @address@hidden
-  * @errorDescription: null-terminated string contains details when an
-  *   error occurred.
-  *
-  * Fill the structure *ELEMENT with values of a DER encoding
-  * string. The sructure must just be created with function
-  * 'create_stucture'.  If an error occurs during the decoding
-  * procedure, the *ELEMENT is deleted and set equal to
-  * %ASN1_TYPE_EMPTY.
-  *
-  * Returns:
-  *
-  *   ASN1_SUCCESS: DER encoding OK.
-  *
-  *   ASN1_ELEMENT_NOT_FOUND: ELEMENT is ASN1_TYPE_EMPTY.
-  *
-  *   ASN1_TAG_ERROR,ASN1_DER_ERROR: The der encoding doesn't match
-  *     the structure NAME. *ELEMENT deleted.
-  **/
-
+ * asn1_der_decoding:
+ * @element: pointer to an ASN1 structure.
+ * @ider: vector that contains the DER encoding.
+ * @len: number of bytes of address@hidden: @address@hidden
+ * @errorDescription: null-terminated string contains details when an
+ *   error occurred.
+ *
+ * Fill the structure *ELEMENT with values of a DER encoding
+ * string. The structure must just be created with function
+ * 'asn1_create_element'.  If an error occurs during the decoding
+ * procedure, the *ELEMENT is deleted and set equal to
+ * %ASN1_TYPE_EMPTY.
+ *
+ * Returns:
+ *
+ *   %ASN1_SUCCESS: DER encoding OK.
+ *
+ *   %ASN1_ELEMENT_NOT_FOUND: ELEMENT is ASN1_TYPE_EMPTY.
+ *
+ *   %ASN1_TAG_ERROR,ASN1_DER_ERROR: The der encoding doesn't match
+ *     the structure NAME. *ELEMENT deleted.
+ **/
 asn1_retCode
 asn1_der_decoding (ASN1_TYPE * element, const void *ider, int len,
                   char *errorDescription)
@@ -1355,32 +1354,31 @@ asn1_der_decoding (ASN1_TYPE * element, const void 
*ider, int len,
 #define EXIT         4
 
 /**
-  * asn1_der_decoding_element - Fill the element named ELEMENTNAME of the 
structure STRUCTURE with values of a DER encoding string.
-  * @structure: pointer to an ASN1 structure
-  * @elementName: name of the element to fill
-  * @ider: vector that contains the DER encoding of the whole structure.
-  * @len: number of bytes of *der: der[0]..der[len-1]
-  * @errorDescription: null-terminated string contains details when an
-  *   error occurred.
-  *
-  * Fill the element named ELEMENTNAME with values of a DER encoding
-  * string.  The sructure must just be created with function
-  * 'create_stucture'.  The DER vector must contain the encoding
-  * string of the whole STRUCTURE.  If an error occurs during the
-  * decoding procedure, the *STRUCTURE is deleted and set equal to
-  * %ASN1_TYPE_EMPTY.
-  *
-  * Returns:
-  *
-  *   ASN1_SUCCESS: DER encoding OK.
-  *
-  *   ASN1_ELEMENT_NOT_FOUND: ELEMENT is ASN1_TYPE_EMPTY or
-  *     elementName == NULL.
-  *
-  *   ASN1_TAG_ERROR,ASN1_DER_ERROR: The der encoding doesn't match
-  *   the structure STRUCTURE. *ELEMENT deleted.
-  *
-  **/
+ * asn1_der_decoding_element:
+ * @structure: pointer to an ASN1 structure
+ * @elementName: name of the element to fill
+ * @ider: vector that contains the DER encoding of the whole structure.
+ * @len: number of bytes of *der: der[0]..der[len-1]
+ * @errorDescription: null-terminated string contains details when an
+ *   error occurred.
+ *
+ * Fill the element named ELEMENTNAME with values of a DER encoding
+ * string.  The structure must just be created with function
+ * 'asn1_create_element'.  The DER vector must contain the encoding
+ * string of the whole STRUCTURE.  If an error occurs during the
+ * decoding procedure, the *STRUCTURE is deleted and set equal to
+ * %ASN1_TYPE_EMPTY.
+ *
+ * Returns:
+ *
+ *   %ASN1_SUCCESS: DER encoding OK.
+ *
+ *   %ASN1_ELEMENT_NOT_FOUND: ELEMENT is ASN1_TYPE_EMPTY or
+ *     elementName == NULL.
+ *
+ *   %ASN1_TAG_ERROR,ASN1_DER_ERROR: The der encoding doesn't match
+ *   the structure STRUCTURE. *ELEMENT deleted.
+ **/
 asn1_retCode
 asn1_der_decoding_element (ASN1_TYPE * structure, const char *elementName,
                           const void *ider, int len, char *errorDescription)
@@ -2128,35 +2126,34 @@ asn1_der_decoding_element (ASN1_TYPE * structure, const 
char *elementName,
 
 
 /**
-  * asn1_der_decoding_startEnd - Find the start and end point of an element in 
a DER encoding string.
-  * @element: pointer to an ASN1 element
-  * @ider: vector that contains the DER encoding.
-  * @len: number of bytes of address@hidden: @address@hidden
-  * @name_element: an element of NAME structure.
-  * @start: the position of the first byte of NAME_ELEMENT decoding
-  *   (@ider[*start])
-  * @end: the position of the last byte of NAME_ELEMENT decoding
-  *  (@ider[*end])
-  *
-  * Find the start and end point of an element in a DER encoding
-  * string. I mean that if you have a der encoding and you have
-  * already used the function "asn1_der_decoding" to fill a structure,
-  * it may happen that you want to find the piece of string concerning
-  * an element of the structure.
-  *
-  * Example: the sequence "tbsCertificate" inside an X509 certificate.
-  *
-  * Returns:
-  *
-  *   ASN1_SUCCESS: DER encoding OK.
-  *
-  *   ASN1_ELEMENT_NOT_FOUND: ELEMENT is ASN1_TYPE EMPTY or
-  *   NAME_ELEMENT is not a valid element.
-  *
-  *   ASN1_TAG_ERROR,ASN1_DER_ERROR: the der encoding doesn't match
-  *   the structure ELEMENT.
-  *
-  **/
+ * asn1_der_decoding_startEnd:
+ * @element: pointer to an ASN1 element
+ * @ider: vector that contains the DER encoding.
+ * @len: number of bytes of address@hidden: @address@hidden
+ * @name_element: an element of NAME structure.
+ * @start: the position of the first byte of NAME_ELEMENT decoding
+ *   (@ider[*start])
+ * @end: the position of the last byte of NAME_ELEMENT decoding
+ *  (@ider[*end])
+ *
+ * Find the start and end point of an element in a DER encoding
+ * string. I mean that if you have a der encoding and you have already
+ * used the function "asn1_der_decoding" to fill a structure, it may
+ * happen that you want to find the piece of string concerning an
+ * element of the structure.
+ *
+ * Example: the sequence "tbsCertificate" inside an X509 certificate.
+ *
+ * Returns:
+ *
+ *   %ASN1_SUCCESS: DER encoding OK.
+ *
+ *   %ASN1_ELEMENT_NOT_FOUND: ELEMENT is ASN1_TYPE EMPTY or
+ *   NAME_ELEMENT is not a valid element.
+ *
+ *   %ASN1_TAG_ERROR,ASN1_DER_ERROR: the der encoding doesn't match
+ *   the structure ELEMENT.
+ **/
 asn1_retCode
 asn1_der_decoding_startEnd (ASN1_TYPE element, const void *ider, int len,
                            const char *name_element, int *start, int *end)
@@ -2480,27 +2477,25 @@ asn1_der_decoding_startEnd (ASN1_TYPE element, const 
void *ider, int len,
 
 
 /**
-  * asn1_expand_any_defined_by - Expand "ANY DEFINED BY" fields in structure.
-  * @definitions: ASN1 definitions
-  * @element: pointer to an ASN1 structure
-  *
-  * Expands every "ANY DEFINED BY" element of a structure created from
-  * a DER decoding process (asn1_der_decoding function). The element ANY
-  * must be defined by an OBJECT IDENTIFIER. The type used to expand
-  * the element ANY is the first one following the definition of
-  * the actual value of the OBJECT IDENTIFIER.
-  *
-  *
-  * Returns:
-  *
-  *   ASN1_SUCCESS: Substitution OK.
-  *
-  *   ASN1_ERROR_TYPE_ANY: Some "ANY DEFINED BY" element couldn't be
-  *   expanded due to a problem in OBJECT_ID -> TYPE association.
-  *
-  *   other errors: Result of der decoding process.
-  **/
-
+ * asn1_expand_any_defined_by:
+ * @definitions: ASN1 definitions
+ * @element: pointer to an ASN1 structure
+ *
+ * Expands every "ANY DEFINED BY" element of a structure created from
+ * a DER decoding process (asn1_der_decoding function). The element
+ * ANY must be defined by an OBJECT IDENTIFIER. The type used to
+ * expand the element ANY is the first one following the definition of
+ * the actual value of the OBJECT IDENTIFIER.
+ *
+ * Returns:
+ *
+ *   %ASN1_SUCCESS: Substitution OK.
+ *
+ *   %ASN1_ERROR_TYPE_ANY: Some "ANY DEFINED BY" element couldn't be
+ *   expanded due to a problem in OBJECT_ID -> TYPE association.
+ *
+ *   other errors: Result of der decoding process.
+ **/
 asn1_retCode
 asn1_expand_any_defined_by (ASN1_TYPE definitions, ASN1_TYPE * element)
 {
@@ -2716,29 +2711,29 @@ asn1_expand_any_defined_by (ASN1_TYPE definitions, 
ASN1_TYPE * element)
 
 
 /**
-  * asn1_expand_octet_string - Expand "OCTET STRING" fields in structure.
-  * @definitions: ASN1 definitions
-  * @element: pointer to an ASN1 structure
-  * @octetName: name of the OCTECT STRING field to expand.
-  * @objectName: name of the OBJECT IDENTIFIER field to use to define
-  *    the type for expansion.
-  *
-  * Expands an "OCTET STRING" element of a structure created from a
-  * DER decoding process (asn1_der_decoding function). The type used
-  * for expansion is the first one following the definition of the
-  * actual value of the OBJECT IDENTIFIER indicated by OBJECTNAME.
-  *
-  * Returns:
-  *
-  *   ASN1_SUCCESS: Substitution OK.
-  *
-  *   ASN1_ELEMENT_NOT_FOUND: OBJECTNAME or OCTETNAME are not correct.
-  *
-  *   ASN1_VALUE_NOT_VALID: Wasn't possible to find the type to use
-  *       for expansion.
-  *
-  *   other errors: result of der decoding process.
-  **/
+ * asn1_expand_octet_string:
+ * @definitions: ASN1 definitions
+ * @element: pointer to an ASN1 structure
+ * @octetName: name of the OCTECT STRING field to expand.
+ * @objectName: name of the OBJECT IDENTIFIER field to use to define
+ *    the type for expansion.
+ *
+ * Expands an "OCTET STRING" element of a structure created from a DER
+ * decoding process (asn1_der_decoding function). The type used for
+ * expansion is the first one following the definition of the actual
+ * value of the OBJECT IDENTIFIER indicated by OBJECTNAME.
+ *
+ * Returns:
+ *
+ *   %ASN1_SUCCESS: Substitution OK.
+ *
+ *   %ASN1_ELEMENT_NOT_FOUND: @objectName or @octetName are not correct.
+ *
+ *   %ASN1_VALUE_NOT_VALID: Wasn't possible to find the type to use
+ *       for expansion.
+ *
+ *   other errors: result of der decoding process.
+ **/
 asn1_retCode
 asn1_expand_octet_string (ASN1_TYPE definitions, ASN1_TYPE * element,
                          const char *octetName, const char *objectName)
diff --git a/lib/minitasn1/element.c b/lib/minitasn1/element.c
index 4b4c838..51ade14 100644
--- a/lib/minitasn1/element.c
+++ b/lib/minitasn1/element.c
@@ -1,6 +1,6 @@
 /*
- *      Copyright (C) 2004, 2006, 2008, 2009 Free Software Foundation
- *      Copyright (C) 2000, 2001, 2002, 2003 Fabio Fiorina
+ * Copyright (C) 2000, 2001, 2002, 2003, 2004, 2006, 2008, 2009, 2010
+ * Free Software Foundation, Inc.
  *
  * This file is part of LIBTASN1.
  *
@@ -163,116 +163,115 @@ _asn1_append_sequence_set (ASN1_TYPE node)
 
 
 /**
-  * asn1_write_value - Set the value of one element inside a structure.
-  * @node_root: pointer to a structure
-  * @name: the name of the element inside the structure that you want to set.
-  * @ivalue: vector used to specify the value to set. If len is >0,
-  *   VALUE must be a two's complement form integer.  if len=0 *VALUE
-  *   must be a null terminated string with an integer value.
-  * @len: number of bytes of *value to use to set the value:
-  *   value[0]..value[len-1] or 0 if value is a null terminated string
-  *
-  * Set the value of one element inside a structure.
-  *
-  * If an element is OPTIONAL and you want to delete it, you must use
-  * the value=NULL and len=0.  Using "pkix.asn":
-  *
-  * result=asn1_write_value(cert, "tbsCertificate.issuerUniqueID",
-  * NULL, 0);
-  *
-  * Description for each type:
-  *
-  * INTEGER: VALUE must contain a two's complement form integer.
-  *
-  *            value[0]=0xFF ,               len=1 -> integer=-1.
-  *            value[0]=0xFF value[1]=0xFF , len=2 -> integer=-1.
-  *            value[0]=0x01 ,               len=1 -> integer= 1.
-  *            value[0]=0x00 value[1]=0x01 , len=2 -> integer= 1.
-  *            value="123"                 , len=0 -> integer= 123.
-  *
-  * ENUMERATED: As INTEGER (but only with not negative numbers).
-  *
-  * BOOLEAN: VALUE must be the null terminated string "TRUE" or
-  *   "FALSE" and LEN != 0.
-  *
-  *            value="TRUE" , len=1 -> boolean=TRUE.
-  *            value="FALSE" , len=1 -> boolean=FALSE.
-  *
-  * OBJECT IDENTIFIER: VALUE must be a null terminated string with
-  *   each number separated by a dot (e.g. "1.2.3.543.1").  LEN != 0.
-  *
-  *            value="1 2 840 10040 4 3" , len=1 -> OID=dsa-with-sha.
-  *
-  * UTCTime: VALUE must be a null terminated string in one of these
-  *   formats: "YYMMDDhhmmssZ", "YYMMDDhhmmssZ",
-  *   "YYMMDDhhmmss+hh'mm'", "YYMMDDhhmmss-hh'mm'",
-  *   "YYMMDDhhmm+hh'mm'", or "YYMMDDhhmm-hh'mm'".  LEN != 0.
-  *
-  *            value="9801011200Z" , len=1 -> time=Jannuary 1st, 1998
-  *            at 12h 00m Greenwich Mean Time
-  *
-  * GeneralizedTime: VALUE must be in one of this format:
-  *   "YYYYMMDDhhmmss.sZ", "YYYYMMDDhhmmss.sZ",
-  *   "YYYYMMDDhhmmss.s+hh'mm'", "YYYYMMDDhhmmss.s-hh'mm'",
-  *   "YYYYMMDDhhmm+hh'mm'", or "YYYYMMDDhhmm-hh'mm'" where ss.s
-  *   indicates the seconds with any precision like "10.1" or "01.02".
-  *   LEN != 0
-  *
-  *            value="2001010112001.12-0700" , len=1 -> time=Jannuary
-  *            1st, 2001 at 12h 00m 01.12s Pacific Daylight Time
-  *
-  * OCTET STRING: VALUE contains the octet string and LEN is the
-  *   number of octets.
-  *
-  *            value="$\backslash$x01$\backslash$x02$\backslash$x03" ,
-  *            len=3 -> three bytes octet string
-  *
-  * GeneralString: VALUE contains the generalstring and LEN is the
-  *   number of octets.
-  *
-  *            value="$\backslash$x01$\backslash$x02$\backslash$x03" ,
-  *            len=3 -> three bytes generalstring
-  *
-  * BIT STRING: VALUE contains the bit string organized by bytes and
-  *   LEN is the number of bits.
-  *
-  *   value="$\backslash$xCF" , len=6 -> bit string="110011" (six
-  *   bits)
-  *
-  * CHOICE: if NAME indicates a choice type, VALUE must specify one of
-  *   the alternatives with a null terminated string. LEN != 0. Using
-  *   "pkix.asn"\:
-  *
-  *           result=asn1_write_value(cert,
-  *           "certificate1.tbsCertificate.subject", "rdnSequence",
-  *           1);
-  *
-  * ANY: VALUE indicates the der encoding of a structure.  LEN != 0.
-  *
-  * SEQUENCE OF: VALUE must be the null terminated string "NEW" and
-  *   LEN != 0. With this instruction another element is appended in
-  *   the sequence. The name of this element will be "?1" if it's the
-  *   first one, "?2" for the second and so on.
-  *
-  *   Using "pkix.asn"\:
-  *
-  *   result=asn1_write_value(cert,
-  *   "certificate1.tbsCertificate.subject.rdnSequence", "NEW", 1);
-  *
-  * SET OF: the same as SEQUENCE OF.  Using "pkix.asn":
-  *
-  *           result=asn1_write_value(cert,
-  *           "tbsCertificate.subject.rdnSequence.?LAST", "NEW", 1);
-  *
-  * Returns:
-  *
-  *   ASN1_SUCCESS: Set value OK.
-  *
-  *   ASN1_ELEMENT_NOT_FOUND: NAME is not a valid element.
-  *
-  *   ASN1_VALUE_NOT_VALID: VALUE has a wrong format.
-  *
-  **/
+ * asn1_write_value:
+ * @node_root: pointer to a structure
+ * @name: the name of the element inside the structure that you want to set.
+ * @ivalue: vector used to specify the value to set. If len is >0,
+ *   VALUE must be a two's complement form integer.  if len=0 *VALUE
+ *   must be a null terminated string with an integer value.
+ * @len: number of bytes of *value to use to set the value:
+ *   value[0]..value[len-1] or 0 if value is a null terminated string
+ *
+ * Set the value of one element inside a structure.
+ *
+ * If an element is OPTIONAL and you want to delete it, you must use
+ * the value=NULL and len=0.  Using "pkix.asn":
+ *
+ * result=asn1_write_value(cert, "tbsCertificate.issuerUniqueID",
+ * NULL, 0);
+ *
+ * Description for each type:
+ *
+ * INTEGER: VALUE must contain a two's complement form integer.
+ *
+ *            value[0]=0xFF ,               len=1 -> integer=-1.
+ *            value[0]=0xFF value[1]=0xFF , len=2 -> integer=-1.
+ *            value[0]=0x01 ,               len=1 -> integer= 1.
+ *            value[0]=0x00 value[1]=0x01 , len=2 -> integer= 1.
+ *            value="123"                 , len=0 -> integer= 123.
+ *
+ * ENUMERATED: As INTEGER (but only with not negative numbers).
+ *
+ * BOOLEAN: VALUE must be the null terminated string "TRUE" or
+ *   "FALSE" and LEN != 0.
+ *
+ *            value="TRUE" , len=1 -> boolean=TRUE.
+ *            value="FALSE" , len=1 -> boolean=FALSE.
+ *
+ * OBJECT IDENTIFIER: VALUE must be a null terminated string with
+ *   each number separated by a dot (e.g. "1.2.3.543.1").  LEN != 0.
+ *
+ *            value="1 2 840 10040 4 3" , len=1 -> OID=dsa-with-sha.
+ *
+ * UTCTime: VALUE must be a null terminated string in one of these
+ *   formats: "YYMMDDhhmmssZ", "YYMMDDhhmmssZ",
+ *   "YYMMDDhhmmss+hh'mm'", "YYMMDDhhmmss-hh'mm'",
+ *   "YYMMDDhhmm+hh'mm'", or "YYMMDDhhmm-hh'mm'".  LEN != 0.
+ *
+ *            value="9801011200Z" , len=1 -> time=Jannuary 1st, 1998
+ *            at 12h 00m Greenwich Mean Time
+ *
+ * GeneralizedTime: VALUE must be in one of this format:
+ *   "YYYYMMDDhhmmss.sZ", "YYYYMMDDhhmmss.sZ",
+ *   "YYYYMMDDhhmmss.s+hh'mm'", "YYYYMMDDhhmmss.s-hh'mm'",
+ *   "YYYYMMDDhhmm+hh'mm'", or "YYYYMMDDhhmm-hh'mm'" where ss.s
+ *   indicates the seconds with any precision like "10.1" or "01.02".
+ *   LEN != 0
+ *
+ *            value="2001010112001.12-0700" , len=1 -> time=Jannuary
+ *            1st, 2001 at 12h 00m 01.12s Pacific Daylight Time
+ *
+ * OCTET STRING: VALUE contains the octet string and LEN is the
+ *   number of octets.
+ *
+ *            value="$\backslash$x01$\backslash$x02$\backslash$x03" ,
+ *            len=3 -> three bytes octet string
+ *
+ * GeneralString: VALUE contains the generalstring and LEN is the
+ *   number of octets.
+ *
+ *            value="$\backslash$x01$\backslash$x02$\backslash$x03" ,
+ *            len=3 -> three bytes generalstring
+ *
+ * BIT STRING: VALUE contains the bit string organized by bytes and
+ *   LEN is the number of bits.
+ *
+ *   value="$\backslash$xCF" , len=6 -> bit string="110011" (six
+ *   bits)
+ *
+ * CHOICE: if NAME indicates a choice type, VALUE must specify one of
+ *   the alternatives with a null terminated string. LEN != 0. Using
+ *   "pkix.asn"\:
+ *
+ *           result=asn1_write_value(cert,
+ *           "certificate1.tbsCertificate.subject", "rdnSequence",
+ *           1);
+ *
+ * ANY: VALUE indicates the der encoding of a structure.  LEN != 0.
+ *
+ * SEQUENCE OF: VALUE must be the null terminated string "NEW" and
+ *   LEN != 0. With this instruction another element is appended in
+ *   the sequence. The name of this element will be "?1" if it's the
+ *   first one, "?2" for the second and so on.
+ *
+ *   Using "pkix.asn"\:
+ *
+ *   result=asn1_write_value(cert,
+ *   "certificate1.tbsCertificate.subject.rdnSequence", "NEW", 1);
+ *
+ * SET OF: the same as SEQUENCE OF.  Using "pkix.asn":
+ *
+ *           result=asn1_write_value(cert,
+ *           "tbsCertificate.subject.rdnSequence.?LAST", "NEW", 1);
+ *
+ * Returns:
+ *
+ *   %ASN1_SUCCESS: Set value OK.
+ *
+ *   %ASN1_ELEMENT_NOT_FOUND: NAME is not a valid element.
+ *
+ *   %ASN1_VALUE_NOT_VALID: VALUE has a wrong format.
+ **/
 asn1_retCode
 asn1_write_value (ASN1_TYPE node_root, const char *name,
                  const void *ivalue, int len)
@@ -645,71 +644,70 @@ asn1_write_value (ASN1_TYPE node_root, const char *name,
        }
 
 /**
-  * asn1_read_value - Returns the value of one element inside a structure
-  * @root: pointer to a structure.
-  * @name: the name of the element inside a structure that you want to read.
-  * @ivalue: vector that will contain the element's content, must be a
-  *   pointer to memory cells already allocated.
-  * @len: number of bytes of *value: value[0]..value[len-1]. Initialy
-  *   holds the sizeof value.
-  *
-  * Returns the value of one element inside a structure.
-  *
-  * If an element is OPTIONAL and the function "read_value" returns
-  * %ASN1_ELEMENT_NOT_FOUND, it means that this element wasn't present
-  * in the der encoding that created the structure.  The first element
-  * of a SEQUENCE_OF or SET_OF is named "?1". The second one "?2" and
-  * so on.
-  *
-  * INTEGER: VALUE will contain a two's complement form integer.
-  *
-  *            integer=-1  -> value[0]=0xFF , len=1.
-  *            integer=1   -> value[0]=0x01 , len=1.
-  *
-  * ENUMERATED: As INTEGER (but only with not negative numbers).
-  *
-  * BOOLEAN: VALUE will be the null terminated string "TRUE" or
-  *   "FALSE" and LEN=5 or LEN=6.
-  *
-  * OBJECT IDENTIFIER: VALUE will be a null terminated string with
-  *   each number separated by a dot (i.e. "1.2.3.543.1").
-  *
-  *                      LEN = strlen(VALUE)+1
-  *
-  * UTCTime: VALUE will be a null terminated string in one of these
-  *   formats: "YYMMDDhhmmss+hh'mm'" or "YYMMDDhhmmss-hh'mm'".
-  *   LEN=strlen(VALUE)+1.
-  *
-  * GeneralizedTime: VALUE will be a null terminated string in the
-  *   same format used to set the value.
-  *
-  * OCTET STRING: VALUE will contain the octet string and LEN will be
-  *   the number of octets.
-  *
-  * GeneralString: VALUE will contain the generalstring and LEN will
-  *   be the number of octets.
-  *
-  * BIT STRING: VALUE will contain the bit string organized by bytes
-  *   and LEN will be the number of bits.
-  *
-  * CHOICE: If NAME indicates a choice type, VALUE will specify the
-  *   alternative selected.
-  *
-  * ANY: If NAME indicates an any type, VALUE will indicate the DER
-  *   encoding of the structure actually used.
-  *
-  * Returns:
-  *
-  *   ASN1_SUCCESS: Set value OK.
-  *
-  *   ASN1_ELEMENT_NOT_FOUND: NAME is not a valid element.
-  *
-  *   ASN1_VALUE_NOT_FOUND: There isn't any value for the element selected.
-  *
-  *   ASN1_MEM_ERROR: The value vector isn't big enough to store the result.
-  *   In this case LEN will contain the number of bytes needed.
-  *
-  **/
+ * asn1_read_value:
+ * @root: pointer to a structure.
+ * @name: the name of the element inside a structure that you want to read.
+ * @ivalue: vector that will contain the element's content, must be a
+ *   pointer to memory cells already allocated.
+ * @len: number of bytes of *value: value[0]..value[len-1]. Initialy
+ *   holds the sizeof value.
+ *
+ * Returns the value of one element inside a structure.
+ *
+ * If an element is OPTIONAL and the function "read_value" returns
+ * %ASN1_ELEMENT_NOT_FOUND, it means that this element wasn't present
+ * in the der encoding that created the structure.  The first element
+ * of a SEQUENCE_OF or SET_OF is named "?1". The second one "?2" and
+ * so on.
+ *
+ * INTEGER: VALUE will contain a two's complement form integer.
+ *
+ *            integer=-1  -> value[0]=0xFF , len=1.
+ *            integer=1   -> value[0]=0x01 , len=1.
+ *
+ * ENUMERATED: As INTEGER (but only with not negative numbers).
+ *
+ * BOOLEAN: VALUE will be the null terminated string "TRUE" or
+ *   "FALSE" and LEN=5 or LEN=6.
+ *
+ * OBJECT IDENTIFIER: VALUE will be a null terminated string with
+ *   each number separated by a dot (i.e. "1.2.3.543.1").
+ *
+ *                      LEN = strlen(VALUE)+1
+ *
+ * UTCTime: VALUE will be a null terminated string in one of these
+ *   formats: "YYMMDDhhmmss+hh'mm'" or "YYMMDDhhmmss-hh'mm'".
+ *   LEN=strlen(VALUE)+1.
+ *
+ * GeneralizedTime: VALUE will be a null terminated string in the
+ *   same format used to set the value.
+ *
+ * OCTET STRING: VALUE will contain the octet string and LEN will be
+ *   the number of octets.
+ *
+ * GeneralString: VALUE will contain the generalstring and LEN will
+ *   be the number of octets.
+ *
+ * BIT STRING: VALUE will contain the bit string organized by bytes
+ *   and LEN will be the number of bits.
+ *
+ * CHOICE: If NAME indicates a choice type, VALUE will specify the
+ *   alternative selected.
+ *
+ * ANY: If NAME indicates an any type, VALUE will indicate the DER
+ *   encoding of the structure actually used.
+ *
+ * Returns:
+ *
+ *   %ASN1_SUCCESS: Set value OK.
+ *
+ *   %ASN1_ELEMENT_NOT_FOUND: NAME is not a valid element.
+ *
+ *   %ASN1_VALUE_NOT_FOUND: There isn't any value for the element selected.
+ *
+ *   %ASN1_MEM_ERROR: The value vector isn't big enough to store the result.
+ *   In this case LEN will contain the number of bytes needed.
+ **/
 asn1_retCode
 asn1_read_value (ASN1_TYPE root, const char *name, void *ivalue, int *len)
 {
@@ -874,24 +872,23 @@ asn1_read_value (ASN1_TYPE root, const char *name, void 
*ivalue, int *len)
 
 
 /**
-  * asn1_read_tag - Returns the TAG of one element inside a structure
-  * @root: pointer to a structure
-  * @name: the name of the element inside a structure.
-  * @tagValue:  variable that will contain the TAG value.
-  * @classValue: variable that will specify the TAG type.
-  *
-  * Returns the TAG and the CLASS of one element inside a structure.
-  * CLASS can have one of these constants: %ASN1_CLASS_APPLICATION,
-  * %ASN1_CLASS_UNIVERSAL, %ASN1_CLASS_PRIVATE or
-  * %ASN1_CLASS_CONTEXT_SPECIFIC.
-  *
-  * Returns:
-  *
-  *   ASN1_SUCCESS: Set value OK.
-  *
-  *   ASN1_ELEMENT_NOT_FOUND: NAME is not a valid element.
-  *
-  **/
+ * asn1_read_tag:
+ * @root: pointer to a structure
+ * @name: the name of the element inside a structure.
+ * @tagValue:  variable that will contain the TAG value.
+ * @classValue: variable that will specify the TAG type.
+ *
+ * Returns the TAG and the CLASS of one element inside a structure.
+ * CLASS can have one of these constants: %ASN1_CLASS_APPLICATION,
+ * %ASN1_CLASS_UNIVERSAL, %ASN1_CLASS_PRIVATE or
+ * %ASN1_CLASS_CONTEXT_SPECIFIC.
+ *
+ * Returns:
+ *
+ *   %ASN1_SUCCESS: Set value OK.
+ *
+ *   %ASN1_ELEMENT_NOT_FOUND: NAME is not a valid element.
+ **/
 asn1_retCode
 asn1_read_tag (ASN1_TYPE root, const char *name, int *tagValue,
               int *classValue)
diff --git a/lib/minitasn1/errors.c b/lib/minitasn1/errors.c
index 86dec68..052c64f 100644
--- a/lib/minitasn1/errors.c
+++ b/lib/minitasn1/errors.c
@@ -1,6 +1,6 @@
 /*
- *      Copyright (C) 2006, 2008, 2009 Free Software Foundation, Inc.
- *      Copyright (C) 2002, 2005 Fabio Fiorina
+ * Copyright (C) 2002, 2005, 2006, 2008, 2009, 2010 Free Software
+ * Foundation, Inc.
  *
  * This file is part of LIBTASN1.
  *
@@ -57,11 +57,12 @@ static const libtasn1_error_entry error_algorithms[] = {
 };
 
 /**
- * asn1_perror - prints a string to stderr with a description of an error
+ * asn1_perror:
  * @error: is an error returned by a libtasn1 function.
  *
- * This function is like perror().  The only difference is that it
- * accepts an error returned by a libtasn1 function.
+ * Prints a string to stderr with a description of an error.  This
+ * function is like perror().  The only difference is that it accepts
+ * an error returned by a libtasn1 function.
  *
  * This function replaces libtasn1_perror() in older libtasn1.
  *
@@ -75,11 +76,12 @@ asn1_perror (asn1_retCode error)
 }
 
 /**
- * asn1_strerror - Returns a string with a description of an error
+ * asn1_strerror:
  * @error: is an error returned by a libtasn1 function.
  *
- * This function is similar to strerror.  The only difference is that
- * it accepts an error (number) returned by a libtasn1 function.
+ * Returns a string with a description of an error.  This function is
+ * similar to strerror.  The only difference is that it accepts an
+ * error (number) returned by a libtasn1 function.
  *
  * This function replaces libtasn1_strerror() in older libtasn1.
  *
@@ -105,11 +107,12 @@ asn1_strerror (asn1_retCode error)
 /* Compatibility mappings to preserve ABI. */
 
 /**
- * libtasn1_perror - prints a string to stderr with a description of an error
+ * libtasn1_perror:
  * @error: is an error returned by a libtasn1 function.
  *
- * This function is like perror(). The only difference is that it
- * accepts an error returned by a libtasn1 function.
+ * Prints a string to stderr with a description of an error.  This
+ * function is like perror(). The only difference is that it accepts
+ * an error returned by a libtasn1 function.
  *
  * Deprecated: Use asn1_perror() instead.
  **/
@@ -120,11 +123,12 @@ libtasn1_perror (asn1_retCode error)
 }
 
 /**
- * libtasn1_strerror - Returns a string with a description of an error
+ * libtasn1_strerror:
  * @error: is an error returned by a libtasn1 function.
  *
- * This function is similar to strerror.  The only difference is that
- * it accepts an error (number) returned by a libtasn1 function.
+ * Returns a string with a description of an error.  This function is
+ * similar to strerror.  The only difference is that it accepts an
+ * error (number) returned by a libtasn1 function.
  *
  * Returns: Pointer to static zero-terminated string describing error
  *   code.
diff --git a/lib/minitasn1/gstr.c b/lib/minitasn1/gstr.c
index 9c08351..b3f6af2 100644
--- a/lib/minitasn1/gstr.c
+++ b/lib/minitasn1/gstr.c
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation
- * Copyright (C) 2002 Nikos Mavroyanopoulos
+ * Copyright (C) 2002, 2006, 2007, 2008, 2009, 2010 Free Software
+ * Foundation, Inc.
  *
  * This file is part of LIBTASN1.
  *
diff --git a/lib/minitasn1/int.h b/lib/minitasn1/int.h
index 5b42af5..def4927 100644
--- a/lib/minitasn1/int.h
+++ b/lib/minitasn1/int.h
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, 
Inc.
- * Copyright (C) 2002 Fabio Fiorina
+ * Copyright (C) 2002, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
+ * Software Foundation, Inc.
  *
  * This file is part of LIBTASN1.
  *
diff --git a/lib/minitasn1/libtasn1.h b/lib/minitasn1/libtasn1.h
index cc330c4..fea5cea 100644
--- a/lib/minitasn1/libtasn1.h
+++ b/lib/minitasn1/libtasn1.h
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation
- * Copyright (C) 2002 Fabio Fiorina
+ * Copyright (C) 2002, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
+ * Software Foundation, Inc.
  *
  * This file is part of LIBTASN1.
  *
@@ -45,7 +45,7 @@ extern "C"
 {
 #endif
 
-#define ASN1_VERSION "2.3"
+#define ASN1_VERSION "2.5"
 
   typedef int asn1_retCode;    /* type returned by libtasn1 functions */
 
diff --git a/lib/minitasn1/parser_aux.c b/lib/minitasn1/parser_aux.c
index 98af5d6..b740a1e 100644
--- a/lib/minitasn1/parser_aux.c
+++ b/lib/minitasn1/parser_aux.c
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2004, 2006, 2007, 2008, 2009 Free Software Foundation
- * Copyright (C) 2000,2001 Fabio Fiorina
+ * Copyright (C) 2000, 2001, 2004, 2006, 2007, 2008, 2009, 2010 Free
+ * Software Foundation, Inc.
  *
  * This file is part of LIBTASN1.
  *
@@ -1139,7 +1139,7 @@ parse_version_string (const char *s, int *major, int 
*minor, int *micro)
 }
 
 /**
- * asn1_check_version - check for library version
+ * asn1_check_version:
  * @req_version: Required version number, or NULL.
  *
  * Check that the version of the library is at minimum the
diff --git a/lib/minitasn1/structure.c b/lib/minitasn1/structure.c
index 3931651..b1c5b30 100644
--- a/lib/minitasn1/structure.c
+++ b/lib/minitasn1/structure.c
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2004, 2006, 2007, 2008, 2009 Free Software Foundation
- * Copyright (C) 2002  Fabio Fiorina
+ * Copyright (C) 2002, 2004, 2006, 2007, 2008, 2009, 2010 Free
+ * Software Foundation, Inc.
  *
  * This file is part of LIBTASN1.
  *
@@ -159,26 +159,26 @@ _asn1_create_static_structure (ASN1_TYPE pointer, char 
*output_file_name,
 
 
 /**
-  * asn1_array2tree - Creates the structures needed to manage the ASN1 
definitions.
-  * @array: specify the array that contains ASN.1 declarations
-  * @definitions: return the pointer to the structure created by
-  *   *ARRAY ASN.1 declarations
-  * @errorDescription: return the error description.
-  *
-  * Creates the structures needed to manage the ASN.1 definitions.
-  * @array is a vector created by asn1_parser2array().
-  *
-  * Returns:
-  *
-  * ASN1_SUCCESS: Structure created correctly.
-  *
-  * ASN1_ELEMENT_NOT_EMPTY: address@hidden not ASN1_TYPE_EMPTY.
-  *
-  * ASN1_IDENTIFIER_NOT_FOUND: In the file there is an identifier that
-  *   is not defined (see @errorDescription for more information).
-  *
-  * ASN1_ARRAY_ERROR: The array pointed by @array is wrong.
-  **/
+ * asn1_array2tree:
+ * @array: specify the array that contains ASN.1 declarations
+ * @definitions: return the pointer to the structure created by
+ *   *ARRAY ASN.1 declarations
+ * @errorDescription: return the error description.
+ *
+ * Creates the structures needed to manage the ASN.1 definitions.
+ * @array is a vector created by asn1_parser2array().
+ *
+ * Returns:
+ *
+ * %ASN1_SUCCESS: Structure created correctly.
+ *
+ * %ASN1_ELEMENT_NOT_EMPTY: address@hidden not ASN1_TYPE_EMPTY.
+ *
+ * %ASN1_IDENTIFIER_NOT_FOUND: In the file there is an identifier that
+ *   is not defined (see @errorDescription for more information).
+ *
+ * %ASN1_ARRAY_ERROR: The array pointed by @array is wrong.
+ **/
 asn1_retCode
 asn1_array2tree (const ASN1_ARRAY_TYPE * array, ASN1_TYPE * definitions,
                 char *errorDescription)
@@ -278,19 +278,18 @@ asn1_array2tree (const ASN1_ARRAY_TYPE * array, ASN1_TYPE 
* definitions,
 }
 
 /**
-  * asn1_delete_structure - Deletes the structure pointed by *ROOT.
-  * @structure: pointer to the structure that you want to delete.
-  *
-  * Deletes the structure address@hidden  At the end, address@hidden is set
-  * to ASN1_TYPE_EMPTY.
-  *
-  * Returns:
-  *
-  * ASN1_SUCCESS: Everything OK.
-  *
-  * ASN1_ELEMENT_NOT_FOUND: address@hidden was ASN1_TYPE_EMPTY.
-  *
-  **/
+ * asn1_delete_structure:
+ * @structure: pointer to the structure that you want to delete.
+ *
+ * Deletes the structure address@hidden  At the end, address@hidden is set
+ * to ASN1_TYPE_EMPTY.
+ *
+ * Returns:
+ *
+ * %ASN1_SUCCESS: Everything OK.
+ *
+ * %ASN1_ELEMENT_NOT_FOUND: address@hidden was ASN1_TYPE_EMPTY.
+ **/
 asn1_retCode
 asn1_delete_structure (ASN1_TYPE * structure)
 {
@@ -345,20 +344,19 @@ asn1_delete_structure (ASN1_TYPE * structure)
 
 
 /**
-  * asn1_delete_element - Deletes the element of a structure.
-  * @structure: pointer to the structure that contains the element you
-  *   want to delete.
-  * @element_name: element's name you want to delete.
-  *
-  * Deletes the element named address@hidden inside address@hidden
-  *
-  * Returns:
-  *
-  * ASN1_SUCCESS: Everything OK.
-  *
-  * ASN1_ELEMENT_NOT_FOUND: The name element was not found.
-  *
-  **/
+ * asn1_delete_element:
+ * @structure: pointer to the structure that contains the element you
+ *   want to delete.
+ * @element_name: element's name you want to delete.
+ *
+ * Deletes the element named address@hidden inside address@hidden
+ *
+ * Returns:
+ *
+ * %ASN1_SUCCESS: Everything OK.
+ *
+ * %ASN1_ELEMENT_NOT_FOUND: The name element was not found.
+ **/
 asn1_retCode
 asn1_delete_element (ASN1_TYPE structure, const char *element_name)
 {
@@ -661,24 +659,23 @@ _asn1_expand_identifier (ASN1_TYPE * node, ASN1_TYPE root)
 
 
 /**
-  * asn1_create_element - Creates a structure of type SOURCE_NAME.
-  * @definitions: pointer to the structure returned by "parser_asn1" function
-  * @source_name: the name of the type of the new structure (must be
-  *   inside p_structure).
-  * @element: pointer to the structure created.
-  *
-  * Creates a structure of type @source_name.  Example using
-  *  "pkix.asn":
-  *
-  * rc = asn1_create_structure(cert_def, "PKIX1.Certificate",
-  * certptr);
-  *
-  * Returns:
-  *
-  * ASN1_SUCCESS: Creation OK.
-  *
-  * ASN1_ELEMENT_NOT_FOUND: SOURCE_NAME isn't known
-  **/
+ * asn1_create_element:
+ * @definitions: pointer to the structure returned by "parser_asn1" function
+ * @source_name: the name of the type of the new structure (must be
+ *   inside p_structure).
+ * @element: pointer to the structure created.
+ *
+ * Creates a structure of type @source_name.  Example using
+ *  "pkix.asn":
+ *
+ * rc = asn1_create_element(cert_def, "PKIX1.Certificate", certptr);
+ *
+ * Returns:
+ *
+ * %ASN1_SUCCESS: Creation OK.
+ *
+ * %ASN1_ELEMENT_NOT_FOUND: SOURCE_NAME isn't known
+ **/
 asn1_retCode
 asn1_create_element (ASN1_TYPE definitions, const char *source_name,
                     ASN1_TYPE * element)
@@ -703,17 +700,17 @@ asn1_create_element (ASN1_TYPE definitions, const char 
*source_name,
 
 
 /**
-  * asn1_print_structure - Prints on the standard output the structure's tree
-  * @out: pointer to the output file (e.g. stdout).
-  * @structure: pointer to the structure that you want to visit.
-  * @name: an element of the structure
-  * @mode: specify how much of the structure to print, can be
-  *   %ASN1_PRINT_NAME, %ASN1_PRINT_NAME_TYPE,
-  *   %ASN1_PRINT_NAME_TYPE_VALUE, or %ASN1_PRINT_ALL.
-  *
-  * Prints on the @out file descriptor the structure's tree starting
-  * from the @name element inside the structure @structure.
-  **/
+ * asn1_print_structure:
+ * @out: pointer to the output file (e.g. stdout).
+ * @structure: pointer to the structure that you want to visit.
+ * @name: an element of the structure
+ * @mode: specify how much of the structure to print, can be
+ *   %ASN1_PRINT_NAME, %ASN1_PRINT_NAME_TYPE,
+ *   %ASN1_PRINT_NAME_TYPE_VALUE, or %ASN1_PRINT_ALL.
+ *
+ * Prints on the @out file descriptor the structure's tree starting
+ * from the @name element inside the structure @structure.
+ **/
 void
 asn1_print_structure (FILE * out, ASN1_TYPE structure, const char *name,
                      int mode)
@@ -1067,23 +1064,22 @@ asn1_print_structure (FILE * out, ASN1_TYPE structure, 
const char *name,
 
 
 /**
-  * asn1_number_of_elements - Counts the number of elements of a structure.
-  * @element: pointer to the root of an ASN1 structure.
-  * @name: the name of a sub-structure of ROOT.
-  * @num: pointer to an integer where the result will be stored
-  *
-  * Counts the number of elements of a sub-structure called NAME with
-  * names equal to "?1","?2", ...
-  *
-  * Returns:
-  *
-  *  ASN1_SUCCESS: Creation OK.
-  *
-  *  ASN1_ELEMENT_NOT_FOUND: NAME isn't known.
-  *
-  *  ASN1_GENERIC_ERROR: Pointer num equal to NULL.
-  *
-  **/
+ * asn1_number_of_elements:
+ * @element: pointer to the root of an ASN1 structure.
+ * @name: the name of a sub-structure of ROOT.
+ * @num: pointer to an integer where the result will be stored
+ *
+ * Counts the number of elements of a sub-structure called NAME with
+ * names equal to "?1","?2", ...
+ *
+ * Returns:
+ *
+ *  %ASN1_SUCCESS: Creation OK.
+ *
+ *  %ASN1_ELEMENT_NOT_FOUND: NAME isn't known.
+ *
+ *  %ASN1_GENERIC_ERROR: Pointer num equal to NULL.
+ **/
 asn1_retCode
 asn1_number_of_elements (ASN1_TYPE element, const char *name, int *num)
 {
@@ -1112,17 +1108,16 @@ asn1_number_of_elements (ASN1_TYPE element, const char 
*name, int *num)
 
 
 /**
-  * asn1_find_structure_from_oid - Locate structure defined by a specific OID.
-  * @definitions: ASN1 definitions
-  * @oidValue: value of the OID to search (e.g. "1.2.3.4").
-  *
-  * Search the structure that is defined just after an OID definition.
-  *
-  * Returns: NULL when OIDVALUE not found, otherwise the pointer to a
-  *   constant string that contains the element name defined just
-  *   after the OID.
-  *
-  **/
+ * asn1_find_structure_from_oid:
+ * @definitions: ASN1 definitions
+ * @oidValue: value of the OID to search (e.g. "1.2.3.4").
+ *
+ * Search the structure that is defined just after an OID definition.
+ *
+ * Returns: %NULL when @oidValue not found, otherwise the pointer to a
+ *   constant string that contains the element name defined just after
+ *   the OID.
+ **/
 const char *
 asn1_find_structure_from_oid (ASN1_TYPE definitions, const char *oidValue)
 {
@@ -1176,7 +1171,7 @@ asn1_find_structure_from_oid (ASN1_TYPE definitions, 
const char *oidValue)
  *
  * Create a deep copy of a ASN1_TYPE variable.
  *
- * Return value: Return ASN1_SUCCESS on success.
+ * Return value: Return %ASN1_SUCCESS on success.
  **/
 asn1_retCode
 asn1_copy_node (ASN1_TYPE dst, const char *dst_name,


hooks/post-receive
-- 
GNU gnutls




reply via email to

[Prev in Thread] Current Thread [Next in Thread]