summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjsing <>2016-12-27 09:12:19 +0000
committerjsing <>2016-12-27 09:12:19 +0000
commit5a8dbd7846287a88775fe3a5efaf24cab9778d53 (patch)
treeb222062fe341f86024725ac79b65ac3b4b6efe0f
parent8eabf8626f7ad62a998c0324120e545baeca0df1 (diff)
downloadopenbsd-5a8dbd7846287a88775fe3a5efaf24cab9778d53.tar.gz
openbsd-5a8dbd7846287a88775fe3a5efaf24cab9778d53.tar.bz2
openbsd-5a8dbd7846287a88775fe3a5efaf24cab9778d53.zip
Expand DECLARE_ASN1_* macros. No change in preprocessor output, excluding
line numbering and new lines.
-rw-r--r--src/lib/libcrypto/asn1/asn1.h112
1 files changed, 92 insertions, 20 deletions
diff --git a/src/lib/libcrypto/asn1/asn1.h b/src/lib/libcrypto/asn1/asn1.h
index 72fdc72881..d744b64665 100644
--- a/src/lib/libcrypto/asn1/asn1.h
+++ b/src/lib/libcrypto/asn1/asn1.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: asn1.h,v 1.35 2016/11/04 18:07:23 beck Exp $ */ 1/* $OpenBSD: asn1.h,v 1.36 2016/12/27 09:12:19 jsing Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -520,8 +520,12 @@ DECLARE_ASN1_SET_OF(ASN1_TYPE)
520 520
521typedef STACK_OF(ASN1_TYPE) ASN1_SEQUENCE_ANY; 521typedef STACK_OF(ASN1_TYPE) ASN1_SEQUENCE_ANY;
522 522
523DECLARE_ASN1_ENCODE_FUNCTIONS_const(ASN1_SEQUENCE_ANY, ASN1_SEQUENCE_ANY) 523ASN1_SEQUENCE_ANY *d2i_ASN1_SEQUENCE_ANY(ASN1_SEQUENCE_ANY **a, const unsigned char **in, long len);
524DECLARE_ASN1_ENCODE_FUNCTIONS_const(ASN1_SEQUENCE_ANY, ASN1_SET_ANY) 524int i2d_ASN1_SEQUENCE_ANY(const ASN1_SEQUENCE_ANY *a, unsigned char **out);
525extern const ASN1_ITEM ASN1_SEQUENCE_ANY_it;
526ASN1_SEQUENCE_ANY *d2i_ASN1_SET_ANY(ASN1_SEQUENCE_ANY **a, const unsigned char **in, long len);
527int i2d_ASN1_SET_ANY(const ASN1_SEQUENCE_ANY *a, unsigned char **out);
528extern const ASN1_ITEM ASN1_SET_ANY_it;
525 529
526typedef struct NETSCAPE_X509_st { 530typedef struct NETSCAPE_X509_st {
527 ASN1_OCTET_STRING *header; 531 ASN1_OCTET_STRING *header;
@@ -775,7 +779,11 @@ void ASN1_STRING_length_set(ASN1_STRING *x, int n);
775int ASN1_STRING_type(ASN1_STRING *x); 779int ASN1_STRING_type(ASN1_STRING *x);
776unsigned char * ASN1_STRING_data(ASN1_STRING *x); 780unsigned char * ASN1_STRING_data(ASN1_STRING *x);
777 781
778DECLARE_ASN1_FUNCTIONS(ASN1_BIT_STRING) 782ASN1_BIT_STRING *ASN1_BIT_STRING_new(void);
783void ASN1_BIT_STRING_free(ASN1_BIT_STRING *a);
784ASN1_BIT_STRING *d2i_ASN1_BIT_STRING(ASN1_BIT_STRING **a, const unsigned char **in, long len);
785int i2d_ASN1_BIT_STRING(ASN1_BIT_STRING *a, unsigned char **out);
786extern const ASN1_ITEM ASN1_BIT_STRING_it;
779int i2c_ASN1_BIT_STRING(ASN1_BIT_STRING *a, unsigned char **pp); 787int i2c_ASN1_BIT_STRING(ASN1_BIT_STRING *a, unsigned char **pp);
780ASN1_BIT_STRING *c2i_ASN1_BIT_STRING(ASN1_BIT_STRING **a, 788ASN1_BIT_STRING *c2i_ASN1_BIT_STRING(ASN1_BIT_STRING **a,
781 const unsigned char **pp, long length); 789 const unsigned char **pp, long length);
@@ -796,7 +804,11 @@ int ASN1_BIT_STRING_set_asc(ASN1_BIT_STRING *bs, char *name, int value,
796int i2d_ASN1_BOOLEAN(int a, unsigned char **pp); 804int i2d_ASN1_BOOLEAN(int a, unsigned char **pp);
797int d2i_ASN1_BOOLEAN(int *a, const unsigned char **pp, long length); 805int d2i_ASN1_BOOLEAN(int *a, const unsigned char **pp, long length);
798 806
799DECLARE_ASN1_FUNCTIONS(ASN1_INTEGER) 807ASN1_INTEGER *ASN1_INTEGER_new(void);
808void ASN1_INTEGER_free(ASN1_INTEGER *a);
809ASN1_INTEGER *d2i_ASN1_INTEGER(ASN1_INTEGER **a, const unsigned char **in, long len);
810int i2d_ASN1_INTEGER(ASN1_INTEGER *a, unsigned char **out);
811extern const ASN1_ITEM ASN1_INTEGER_it;
800int i2c_ASN1_INTEGER(ASN1_INTEGER *a, unsigned char **pp); 812int i2c_ASN1_INTEGER(ASN1_INTEGER *a, unsigned char **pp);
801ASN1_INTEGER *c2i_ASN1_INTEGER(ASN1_INTEGER **a, const unsigned char **pp, 813ASN1_INTEGER *c2i_ASN1_INTEGER(ASN1_INTEGER **a, const unsigned char **pp,
802 long length); 814 long length);
@@ -805,7 +817,11 @@ ASN1_INTEGER *d2i_ASN1_UINTEGER(ASN1_INTEGER **a, const unsigned char **pp,
805ASN1_INTEGER * ASN1_INTEGER_dup(const ASN1_INTEGER *x); 817ASN1_INTEGER * ASN1_INTEGER_dup(const ASN1_INTEGER *x);
806int ASN1_INTEGER_cmp(const ASN1_INTEGER *x, const ASN1_INTEGER *y); 818int ASN1_INTEGER_cmp(const ASN1_INTEGER *x, const ASN1_INTEGER *y);
807 819
808DECLARE_ASN1_FUNCTIONS(ASN1_ENUMERATED) 820ASN1_ENUMERATED *ASN1_ENUMERATED_new(void);
821void ASN1_ENUMERATED_free(ASN1_ENUMERATED *a);
822ASN1_ENUMERATED *d2i_ASN1_ENUMERATED(ASN1_ENUMERATED **a, const unsigned char **in, long len);
823int i2d_ASN1_ENUMERATED(ASN1_ENUMERATED *a, unsigned char **out);
824extern const ASN1_ITEM ASN1_ENUMERATED_it;
809 825
810int ASN1_UTCTIME_check(ASN1_UTCTIME *a); 826int ASN1_UTCTIME_check(ASN1_UTCTIME *a);
811ASN1_UTCTIME *ASN1_UTCTIME_set(ASN1_UTCTIME *s, time_t t); 827ASN1_UTCTIME *ASN1_UTCTIME_set(ASN1_UTCTIME *s, time_t t);
@@ -822,30 +838,82 @@ ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_adj(ASN1_GENERALIZEDTIME *s,
822 time_t t, int offset_day, long offset_sec); 838 time_t t, int offset_day, long offset_sec);
823int ASN1_GENERALIZEDTIME_set_string(ASN1_GENERALIZEDTIME *s, const char *str); 839int ASN1_GENERALIZEDTIME_set_string(ASN1_GENERALIZEDTIME *s, const char *str);
824 840
825DECLARE_ASN1_FUNCTIONS(ASN1_OCTET_STRING) 841ASN1_OCTET_STRING *ASN1_OCTET_STRING_new(void);
842void ASN1_OCTET_STRING_free(ASN1_OCTET_STRING *a);
843ASN1_OCTET_STRING *d2i_ASN1_OCTET_STRING(ASN1_OCTET_STRING **a, const unsigned char **in, long len);
844int i2d_ASN1_OCTET_STRING(ASN1_OCTET_STRING *a, unsigned char **out);
845extern const ASN1_ITEM ASN1_OCTET_STRING_it;
826ASN1_OCTET_STRING *ASN1_OCTET_STRING_dup(const ASN1_OCTET_STRING *a); 846ASN1_OCTET_STRING *ASN1_OCTET_STRING_dup(const ASN1_OCTET_STRING *a);
827int ASN1_OCTET_STRING_cmp(const ASN1_OCTET_STRING *a, 847int ASN1_OCTET_STRING_cmp(const ASN1_OCTET_STRING *a,
828 const ASN1_OCTET_STRING *b); 848 const ASN1_OCTET_STRING *b);
829int ASN1_OCTET_STRING_set(ASN1_OCTET_STRING *str, const unsigned char *data, 849int ASN1_OCTET_STRING_set(ASN1_OCTET_STRING *str, const unsigned char *data,
830 int len); 850 int len);
831 851
832DECLARE_ASN1_FUNCTIONS(ASN1_VISIBLESTRING) 852ASN1_VISIBLESTRING *ASN1_VISIBLESTRING_new(void);
833DECLARE_ASN1_FUNCTIONS(ASN1_UNIVERSALSTRING) 853void ASN1_VISIBLESTRING_free(ASN1_VISIBLESTRING *a);
834DECLARE_ASN1_FUNCTIONS(ASN1_UTF8STRING) 854ASN1_VISIBLESTRING *d2i_ASN1_VISIBLESTRING(ASN1_VISIBLESTRING **a, const unsigned char **in, long len);
835DECLARE_ASN1_FUNCTIONS(ASN1_NULL) 855int i2d_ASN1_VISIBLESTRING(ASN1_VISIBLESTRING *a, unsigned char **out);
836DECLARE_ASN1_FUNCTIONS(ASN1_BMPSTRING) 856extern const ASN1_ITEM ASN1_VISIBLESTRING_it;
857ASN1_UNIVERSALSTRING *ASN1_UNIVERSALSTRING_new(void);
858void ASN1_UNIVERSALSTRING_free(ASN1_UNIVERSALSTRING *a);
859ASN1_UNIVERSALSTRING *d2i_ASN1_UNIVERSALSTRING(ASN1_UNIVERSALSTRING **a, const unsigned char **in, long len);
860int i2d_ASN1_UNIVERSALSTRING(ASN1_UNIVERSALSTRING *a, unsigned char **out);
861extern const ASN1_ITEM ASN1_UNIVERSALSTRING_it;
862ASN1_UTF8STRING *ASN1_UTF8STRING_new(void);
863void ASN1_UTF8STRING_free(ASN1_UTF8STRING *a);
864ASN1_UTF8STRING *d2i_ASN1_UTF8STRING(ASN1_UTF8STRING **a, const unsigned char **in, long len);
865int i2d_ASN1_UTF8STRING(ASN1_UTF8STRING *a, unsigned char **out);
866extern const ASN1_ITEM ASN1_UTF8STRING_it;
867ASN1_NULL *ASN1_NULL_new(void);
868void ASN1_NULL_free(ASN1_NULL *a);
869ASN1_NULL *d2i_ASN1_NULL(ASN1_NULL **a, const unsigned char **in, long len);
870int i2d_ASN1_NULL(ASN1_NULL *a, unsigned char **out);
871extern const ASN1_ITEM ASN1_NULL_it;
872ASN1_BMPSTRING *ASN1_BMPSTRING_new(void);
873void ASN1_BMPSTRING_free(ASN1_BMPSTRING *a);
874ASN1_BMPSTRING *d2i_ASN1_BMPSTRING(ASN1_BMPSTRING **a, const unsigned char **in, long len);
875int i2d_ASN1_BMPSTRING(ASN1_BMPSTRING *a, unsigned char **out);
876extern const ASN1_ITEM ASN1_BMPSTRING_it;
837 877
838DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, ASN1_PRINTABLE) 878DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, ASN1_PRINTABLE)
839 879
840DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, DIRECTORYSTRING) 880DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, DIRECTORYSTRING)
841DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, DISPLAYTEXT) 881DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, DISPLAYTEXT)
842DECLARE_ASN1_FUNCTIONS(ASN1_PRINTABLESTRING) 882ASN1_PRINTABLESTRING *ASN1_PRINTABLESTRING_new(void);
843DECLARE_ASN1_FUNCTIONS(ASN1_T61STRING) 883void ASN1_PRINTABLESTRING_free(ASN1_PRINTABLESTRING *a);
844DECLARE_ASN1_FUNCTIONS(ASN1_IA5STRING) 884ASN1_PRINTABLESTRING *d2i_ASN1_PRINTABLESTRING(ASN1_PRINTABLESTRING **a, const unsigned char **in, long len);
845DECLARE_ASN1_FUNCTIONS(ASN1_GENERALSTRING) 885int i2d_ASN1_PRINTABLESTRING(ASN1_PRINTABLESTRING *a, unsigned char **out);
846DECLARE_ASN1_FUNCTIONS(ASN1_UTCTIME) 886extern const ASN1_ITEM ASN1_PRINTABLESTRING_it;
847DECLARE_ASN1_FUNCTIONS(ASN1_GENERALIZEDTIME) 887ASN1_T61STRING *ASN1_T61STRING_new(void);
848DECLARE_ASN1_FUNCTIONS(ASN1_TIME) 888void ASN1_T61STRING_free(ASN1_T61STRING *a);
889ASN1_T61STRING *d2i_ASN1_T61STRING(ASN1_T61STRING **a, const unsigned char **in, long len);
890int i2d_ASN1_T61STRING(ASN1_T61STRING *a, unsigned char **out);
891extern const ASN1_ITEM ASN1_T61STRING_it;
892ASN1_IA5STRING *ASN1_IA5STRING_new(void);
893void ASN1_IA5STRING_free(ASN1_IA5STRING *a);
894ASN1_IA5STRING *d2i_ASN1_IA5STRING(ASN1_IA5STRING **a, const unsigned char **in, long len);
895int i2d_ASN1_IA5STRING(ASN1_IA5STRING *a, unsigned char **out);
896extern const ASN1_ITEM ASN1_IA5STRING_it;
897ASN1_GENERALSTRING *ASN1_GENERALSTRING_new(void);
898void ASN1_GENERALSTRING_free(ASN1_GENERALSTRING *a);
899ASN1_GENERALSTRING *d2i_ASN1_GENERALSTRING(ASN1_GENERALSTRING **a, const unsigned char **in, long len);
900int i2d_ASN1_GENERALSTRING(ASN1_GENERALSTRING *a, unsigned char **out);
901extern const ASN1_ITEM ASN1_GENERALSTRING_it;
902ASN1_UTCTIME *ASN1_UTCTIME_new(void);
903void ASN1_UTCTIME_free(ASN1_UTCTIME *a);
904ASN1_UTCTIME *d2i_ASN1_UTCTIME(ASN1_UTCTIME **a, const unsigned char **in, long len);
905int i2d_ASN1_UTCTIME(ASN1_UTCTIME *a, unsigned char **out);
906extern const ASN1_ITEM ASN1_UTCTIME_it;
907ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_new(void);
908void ASN1_GENERALIZEDTIME_free(ASN1_GENERALIZEDTIME *a);
909ASN1_GENERALIZEDTIME *d2i_ASN1_GENERALIZEDTIME(ASN1_GENERALIZEDTIME **a, const unsigned char **in, long len);
910int i2d_ASN1_GENERALIZEDTIME(ASN1_GENERALIZEDTIME *a, unsigned char **out);
911extern const ASN1_ITEM ASN1_GENERALIZEDTIME_it;
912ASN1_TIME *ASN1_TIME_new(void);
913void ASN1_TIME_free(ASN1_TIME *a);
914ASN1_TIME *d2i_ASN1_TIME(ASN1_TIME **a, const unsigned char **in, long len);
915int i2d_ASN1_TIME(ASN1_TIME *a, unsigned char **out);
916extern const ASN1_ITEM ASN1_TIME_it;
849 917
850DECLARE_ASN1_ITEM(ASN1_OCTET_STRING_NDEF) 918DECLARE_ASN1_ITEM(ASN1_OCTET_STRING_NDEF)
851 919
@@ -1002,7 +1070,11 @@ const char *ASN1_tag2str(int tag);
1002 1070
1003/* Used to load and write netscape format cert */ 1071/* Used to load and write netscape format cert */
1004 1072
1005DECLARE_ASN1_FUNCTIONS(NETSCAPE_X509) 1073NETSCAPE_X509 *NETSCAPE_X509_new(void);
1074void NETSCAPE_X509_free(NETSCAPE_X509 *a);
1075NETSCAPE_X509 *d2i_NETSCAPE_X509(NETSCAPE_X509 **a, const unsigned char **in, long len);
1076int i2d_NETSCAPE_X509(NETSCAPE_X509 *a, unsigned char **out);
1077extern const ASN1_ITEM NETSCAPE_X509_it;
1006 1078
1007int ASN1_UNIVERSALSTRING_to_string(ASN1_UNIVERSALSTRING *s); 1079int ASN1_UNIVERSALSTRING_to_string(ASN1_UNIVERSALSTRING *s);
1008 1080