summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Josefsson <simon@josefsson.org>2009-05-20 12:14:38 +0200
committerSimon Josefsson <simon@josefsson.org>2009-05-20 12:14:38 +0200
commit6f285a47724bd999011579f9f33168745ec689e1 (patch)
tree594dd53443924dffeb6a1123a4a80ce9984906f6
parenta4de6f1eca5192677d76de977ece51c9dae058e0 (diff)
downloadgnutls-6f285a47724bd999011579f9f33168745ec689e1.tar.gz
Use libtasn1 2.2.
-rw-r--r--NEWS4
-rw-r--r--doc/reference/Makefile.am3
-rw-r--r--lib/minitasn1/libtasn1.h224
-rw-r--r--lib/minitasn1/parser_aux.c2
4 files changed, 134 insertions, 99 deletions
diff --git a/NEWS b/NEWS
index ea90372adf..cccfa95aaa 100644
--- a/NEWS
+++ b/NEWS
@@ -14,6 +14,10 @@ Missing sa_family_t and vsnprintf on IRIX. Reported by "Tom
G. Christensen" <tgc@jupiterrise.com> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3571>.
+** minitasn1: Internal copy updated to libtasn1 v2.2.
+GnuTLS should work fine with libtasn1 v1.x and that is still
+supported.
+
** API and ABI modifications:
No changes since last version.
diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am
index 34fb20b145..78e806419f 100644
--- a/doc/reference/Makefile.am
+++ b/doc/reference/Makefile.am
@@ -29,7 +29,8 @@ SCANGOBJ_OPTIONS=
# Extra options to supply to gtkdoc-scan.
# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
-SCAN_OPTIONS=--deprecated-guards=ASN1_DISABLE_DEPRECATED
+SCAN_OPTIONS=--ignore-decorators=ASN1_API \
+ --deprecated-guards=ASN1_DISABLE_DEPRECATED
# Extra options to supply to gtkdoc-mkdb.
# e.g. MKDB_OPTIONS=--sgml-mode --output-format=xml
diff --git a/lib/minitasn1/libtasn1.h b/lib/minitasn1/libtasn1.h
index 5e30e33db9..666027cc7b 100644
--- a/lib/minitasn1/libtasn1.h
+++ b/lib/minitasn1/libtasn1.h
@@ -45,7 +45,7 @@ extern "C"
{
#endif
-#define ASN1_VERSION "2.1"
+#define ASN1_VERSION "2.2"
typedef int asn1_retCode; /* type returned by libtasn1 functions */
@@ -109,7 +109,7 @@ extern "C"
/* that represent an ASN.1 DEFINITION. */
/******************************************************/
-#if !defined(ASN1_BUILDING)
+#if !defined ASN1_BUILDING
/* This structure is also in internal.h, but then contains more
fields. You cannot make any modifications to these fields
without breaking ABI. */
@@ -159,110 +159,138 @@ extern "C"
/* Functions definitions */
/***********************************/
- asn1_retCode asn1_parser2tree (const char *file_name,
- ASN1_TYPE * definitions,
- char *errorDescription) ASN1_API;
-
- asn1_retCode asn1_parser2array (const char *inputFileName,
- const char *outputFileName,
- const char *vectorName,
- char *errorDescription) ASN1_API;
-
- asn1_retCode asn1_array2tree (const ASN1_ARRAY_TYPE * array,
- ASN1_TYPE * definitions,
- char *errorDescription) ASN1_API;
-
- void asn1_print_structure (FILE * out, ASN1_TYPE structure,
- const char *name, int mode) ASN1_API;
-
- asn1_retCode asn1_create_element (ASN1_TYPE definitions,
- const char *source_name,
- ASN1_TYPE * element) ASN1_API;
-
- asn1_retCode asn1_delete_structure (ASN1_TYPE * structure) ASN1_API;
-
- asn1_retCode asn1_delete_element (ASN1_TYPE structure,
- const char *element_name) ASN1_API;
-
- asn1_retCode asn1_write_value (ASN1_TYPE node_root, const char *name,
- const void *ivalue, int len) ASN1_API;
-
- asn1_retCode asn1_read_value (ASN1_TYPE root, const char *name,
- void *ivalue, int *len) ASN1_API;
-
- asn1_retCode asn1_number_of_elements (ASN1_TYPE element, const char *name,
- int *num) ASN1_API;
-
- asn1_retCode asn1_der_coding (ASN1_TYPE element, const char *name,
- void *ider, int *len,
- char *ErrorDescription) ASN1_API;
-
- asn1_retCode asn1_der_decoding (ASN1_TYPE * element, const void *ider,
- int len, char *errorDescription) ASN1_API;
-
- asn1_retCode asn1_der_decoding_element (ASN1_TYPE * structure,
- const char *elementName,
- const void *ider, int len,
- char *errorDescription) ASN1_API;
-
- asn1_retCode asn1_der_decoding_startEnd (ASN1_TYPE element,
- const void *ider, int len,
- const char *name_element,
- int *start, int *end) ASN1_API;
-
- asn1_retCode asn1_expand_any_defined_by (ASN1_TYPE definitions,
- ASN1_TYPE * element) ASN1_API;
-
- asn1_retCode asn1_expand_octet_string (ASN1_TYPE definitions,
- ASN1_TYPE * element,
- const char *octetName,
- const char *objectName) ASN1_API;
-
- asn1_retCode asn1_read_tag (ASN1_TYPE root, const char *name,
- int *tagValue, int *classValue) ASN1_API;
-
- const char *asn1_find_structure_from_oid (ASN1_TYPE definitions,
- const char *oidValue) ASN1_API;
-
- const char *asn1_check_version (const char *req_version) ASN1_API;
-
- const char *asn1_strerror (asn1_retCode error) ASN1_API;
- void asn1_perror (asn1_retCode error) ASN1_API;
+ ASN1_API asn1_retCode
+ asn1_parser2tree (const char *file_name,
+ ASN1_TYPE * definitions,
+ char *errorDescription);
+
+ ASN1_API asn1_retCode
+ asn1_parser2array (const char *inputFileName,
+ const char *outputFileName,
+ const char *vectorName,
+ char *errorDescription);
+
+ ASN1_API asn1_retCode
+ asn1_array2tree (const ASN1_ARRAY_TYPE * array,
+ ASN1_TYPE * definitions,
+ char *errorDescription);
+
+ ASN1_API void
+ asn1_print_structure (FILE * out, ASN1_TYPE structure,
+ const char *name, int mode);
+
+ ASN1_API asn1_retCode
+ asn1_create_element (ASN1_TYPE definitions,
+ const char *source_name,
+ ASN1_TYPE * element);
+
+ ASN1_API asn1_retCode
+ asn1_delete_structure (ASN1_TYPE * structure);
+
+ ASN1_API asn1_retCode
+ asn1_delete_element (ASN1_TYPE structure,
+ const char *element_name);
+
+ ASN1_API asn1_retCode
+ asn1_write_value (ASN1_TYPE node_root, const char *name,
+ const void *ivalue, int len);
+
+ ASN1_API asn1_retCode
+ asn1_read_value (ASN1_TYPE root, const char *name,
+ void *ivalue, int *len);
+
+ ASN1_API asn1_retCode
+ asn1_number_of_elements (ASN1_TYPE element, const char *name, int *num);
+
+ ASN1_API asn1_retCode
+ asn1_der_coding (ASN1_TYPE element, const char *name,
+ void *ider, int *len,
+ char *ErrorDescription);
+
+ ASN1_API asn1_retCode
+ asn1_der_decoding (ASN1_TYPE * element, const void *ider,
+ int len, char *errorDescription);
+
+ ASN1_API asn1_retCode
+ asn1_der_decoding_element (ASN1_TYPE * structure,
+ const char *elementName,
+ const void *ider, int len,
+ char *errorDescription);
+
+ ASN1_API asn1_retCode
+ asn1_der_decoding_startEnd (ASN1_TYPE element,
+ const void *ider, int len,
+ const char *name_element,
+ int *start, int *end);
+
+ ASN1_API asn1_retCode
+ asn1_expand_any_defined_by (ASN1_TYPE definitions,
+ ASN1_TYPE * element);
+
+ ASN1_API asn1_retCode
+ asn1_expand_octet_string (ASN1_TYPE definitions,
+ ASN1_TYPE * element,
+ const char *octetName,
+ const char *objectName);
+
+ ASN1_API asn1_retCode
+ asn1_read_tag (ASN1_TYPE root, const char *name,
+ int *tagValue, int *classValue);
+
+ ASN1_API const char *
+ asn1_find_structure_from_oid (ASN1_TYPE definitions,
+ const char *oidValue);
+
+ ASN1_API const char *
+ asn1_check_version (const char *req_version);
+
+ ASN1_API const char *
+ asn1_strerror (asn1_retCode error);
+
+ ASN1_API void
+ asn1_perror (asn1_retCode error);
/* DER utility functions. */
- int asn1_get_tag_der (const unsigned char *der, int der_len,
- unsigned char *cls, int *len,
- unsigned long *tag) ASN1_API;
+ ASN1_API int
+ asn1_get_tag_der (const unsigned char *der, int der_len,
+ unsigned char *cls, int *len,
+ unsigned long *tag);
+
+ ASN1_API void
+ asn1_octet_der (const unsigned char *str, int str_len,
+ unsigned char *der, int *der_len);
- void asn1_octet_der (const unsigned char *str, int str_len,
- unsigned char *der, int *der_len) ASN1_API;
+ ASN1_API asn1_retCode
+ asn1_get_octet_der (const unsigned char *der, int der_len,
+ int *ret_len, unsigned char *str,
+ int str_size, int *str_len);
- asn1_retCode asn1_get_octet_der (const unsigned char *der, int der_len,
- int *ret_len, unsigned char *str,
- int str_size, int *str_len) ASN1_API;
+ ASN1_API void asn1_bit_der (const unsigned char *str, int bit_len,
+ unsigned char *der, int *der_len);
- void asn1_bit_der (const unsigned char *str, int bit_len,
- unsigned char *der, int *der_len) ASN1_API;
+ ASN1_API asn1_retCode
+ asn1_get_bit_der (const unsigned char *der, int der_len,
+ int *ret_len, unsigned char *str,
+ int str_size, int *bit_len);
- asn1_retCode asn1_get_bit_der (const unsigned char *der, int der_len,
- int *ret_len, unsigned char *str,
- int str_size, int *bit_len) ASN1_API;
+ ASN1_API signed long
+ asn1_get_length_der (const unsigned char *der, int der_len, int *len);
- signed long asn1_get_length_der (const unsigned char *der, int der_len,
- int *len) ASN1_API;
- signed long asn1_get_length_ber (const unsigned char *ber, int ber_len,
- int *len) ASN1_API;
+ ASN1_API signed long
+ asn1_get_length_ber (const unsigned char *ber, int ber_len, int *len);
- void asn1_length_der (unsigned long int len, unsigned char *ans,
- int *ans_len) ASN1_API;
+ ASN1_API void
+ asn1_length_der (unsigned long int len, unsigned char *ans, int *ans_len);
/* Other utility functions. */
- ASN1_TYPE asn1_find_node (ASN1_TYPE pointer, const char *name) ASN1_API;
+ ASN1_API ASN1_TYPE
+ asn1_find_node (ASN1_TYPE pointer, const char *name);
- asn1_retCode asn1_copy_node (ASN1_TYPE dst, const char *dst_name,
- ASN1_TYPE src, const char *src_name) ASN1_API;
+ ASN1_API asn1_retCode
+ asn1_copy_node (ASN1_TYPE dst, const char *dst_name,
+ ASN1_TYPE src, const char *src_name);
/* Deprecated stuff. */
@@ -286,12 +314,14 @@ extern "C"
#endif
/* Use asn1_strerror instead. */
- const char *libtasn1_strerror (asn1_retCode error)
- __attribute__ ((deprecated)) ASN1_API;
+ ASN1_API const char *
+ libtasn1_strerror (asn1_retCode error)
+ __attribute__ ((deprecated));
/* Use asn1_perror instead. */
- void libtasn1_perror (asn1_retCode error)
- __attribute__ ((deprecated)) ASN1_API;
+ ASN1_API void
+ libtasn1_perror (asn1_retCode error)
+ __attribute__ ((deprecated));
#endif
diff --git a/lib/minitasn1/parser_aux.c b/lib/minitasn1/parser_aux.c
index 554551dc28..98af5d6da8 100644
--- a/lib/minitasn1/parser_aux.c
+++ b/lib/minitasn1/parser_aux.c
@@ -1142,7 +1142,7 @@ parse_version_string (const char *s, int *major, int *minor, int *micro)
* asn1_check_version - check for library version
* @req_version: Required version number, or NULL.
*
- * Check that the the version of the library is at minimum the
+ * Check that the version of the library is at minimum the
* requested one and return the version string; return %NULL if the
* condition is not satisfied. If a %NULL is passed to this function,
* no check is done, but the version string is simply returned.