Remove NOPROTO definitions and error code comments.
[openssl.git] / crypto / asn1 / asn1.h
index 3dc6edaad164f89edb92458389560e181ff88c3a..7ce7eb3fe2270d404818eb32503a6afef0cf67bf 100644 (file)
@@ -64,8 +64,8 @@ extern "C" {
 #endif
 
 #include <time.h>
-#include "bn.h"
-#include "stack.h"
+#include <openssl/bn.h>
+#include <openssl/stack.h>
 
 #define V_ASN1_UNIVERSAL               0x00
 #define        V_ASN1_APPLICATION              0x40
@@ -452,7 +452,6 @@ typedef struct asn1_header_st
 #define IS_SEQUENCE    0
 #define IS_SET         1
 
-#ifndef NOPROTO
 ASN1_TYPE *    ASN1_TYPE_new(void );
 void           ASN1_TYPE_free(ASN1_TYPE *a);
 int            i2d_ASN1_TYPE(ASN1_TYPE *a,unsigned char **pp);
@@ -471,7 +470,9 @@ void                ASN1_STRING_free(ASN1_STRING *a);
 ASN1_STRING *  ASN1_STRING_dup(ASN1_STRING *a);
 ASN1_STRING *  ASN1_STRING_type_new(int type );
 int            ASN1_STRING_cmp(ASN1_STRING *a, ASN1_STRING *b);
-int            ASN1_STRING_set(ASN1_STRING *str,unsigned char *data, int len);
+  /* Since this is used to store all sorts of things, via macros, for now, make
+     its data void * */
+int            ASN1_STRING_set(ASN1_STRING *str, const void *data, int len);
 
 int            i2d_ASN1_BIT_STRING(ASN1_BIT_STRING *a,unsigned char **pp);
 ASN1_BIT_STRING *d2i_ASN1_BIT_STRING(ASN1_BIT_STRING **a,unsigned char **pp,
@@ -676,135 +677,11 @@ unsigned char *ASN1_seq_pack(STACK *safes, int (*i2d)(), unsigned char **buf,
 char *ASN1_unpack_string(ASN1_STRING *oct, char *(*d2i)());
 ASN1_STRING *ASN1_pack_string(char *obj, int (*i2d)(), ASN1_OCTET_STRING **oct);
 
-#else
-
-ASN1_TYPE *    ASN1_TYPE_new();
-void           ASN1_TYPE_free();
-int            i2d_ASN1_TYPE();
-ASN1_TYPE *    d2i_ASN1_TYPE();
-int ASN1_TYPE_get();
-void ASN1_TYPE_set();
-
-ASN1_OBJECT *  ASN1_OBJECT_new();
-void           ASN1_OBJECT_free();
-int            i2d_ASN1_OBJECT();
-ASN1_OBJECT *  d2i_ASN1_OBJECT();
-ASN1_STRING *  ASN1_STRING_new();
-void           ASN1_STRING_free();
-ASN1_STRING *  ASN1_STRING_dup();
-ASN1_STRING *  ASN1_STRING_type_new();
-int            ASN1_STRING_cmp();
-int            ASN1_STRING_set();
-int            i2d_ASN1_BIT_STRING();
-ASN1_BIT_STRING *d2i_ASN1_BIT_STRING();
-int            ASN1_BIT_STRING_set_bit();
-int            ASN1_BIT_STRING_get_bit();
-int            i2d_ASN1_BOOLEAN();
-int            d2i_ASN1_BOOLEAN();
-int            i2d_ASN1_INTEGER();
-ASN1_INTEGER *d2i_ASN1_INTEGER();
-int            i2d_ASN1_ENUMERATED();
-ASN1_INTEGER *d2i_ASN1_ENUMERATED();
-int ASN1_UTCTIME_check();
-ASN1_UTCTIME *ASN1_UTCTIME_set();
-int ASN1_UTCTIME_set_string();
-int ASN1_GENERALIZEDTIME_check();
-ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_set();
-int ASN1_GENERALIZEDTIME_set_string();
-int            i2d_ASN1_OCTET_STRING();
-ASN1_OCTET_STRING *d2i_ASN1_OCTET_STRING();
-int    i2d_ASN1_VISIBLESTRING();
-ASN1_VISIBLESTRING *d2i_ASN1_VISIBLESTRING();
-int            i2d_ASN1_UTF8STRING();
-ASN1_UTF8STRING *d2i_ASN1_UTF8STRING();
-int i2d_ASN1_PRINTABLE();
-ASN1_STRING *d2i_ASN1_PRINTABLE();
-int    i2d_DIRECTORYSTRING();
-ASN1_STRING *d2i_DIRECTORYSTRING();
-int    i2d_DISPLAYTEXT();
-ASN1_STRING *d2i_DISPLAYTEXT();
-ASN1_PRINTABLESTRING *d2i_ASN1_PRINTABLESTRING();
-ASN1_T61STRING *d2i_ASN1_T61STRING();
-int i2d_ASN1_IA5STRING();
-ASN1_IA5STRING *d2i_ASN1_IA5STRING();
-int            i2d_ASN1_UTCTIME();
-ASN1_UTCTIME * d2i_ASN1_UTCTIME();
-int            i2d_ASN1_GENERALIZEDTIME();
-ASN1_GENERALIZEDTIME * d2i_ASN1_GENERALIZEDTIME();
-int            i2d_ASN1_TIME();
-ASN1_TIME *    d2i_ASN1_TIME();
-ASN1_TIME *ASN1_TIME_set();
-int            i2d_ASN1_SET();
-STACK *                d2i_ASN1_SET();
-int a2d_ASN1_OBJECT();
-ASN1_OBJECT *ASN1_OBJECT_create();
-int ASN1_INTEGER_set();
-long ASN1_INTEGER_get();
-ASN1_INTEGER *BN_to_ASN1_INTEGER();
-BIGNUM *ASN1_INTEGER_to_BN();
-int ASN1_ENUMERATED_set();
-long ASN1_ENUMERATED_get();
-ASN1_ENUMERATED *BN_to_ASN1_ENUMERATED();
-BIGNUM *ASN1_ENUMERATED_to_BN();
-int ASN1_PRINTABLE_type();
-int i2d_ASN1_bytes();
-ASN1_STRING *d2i_ASN1_bytes();
-ASN1_STRING *d2i_ASN1_type_bytes();
-int asn1_Finish();
-int ASN1_get_object();
-int ASN1_check_infinite_end();
-void ASN1_put_object();
-int ASN1_object_size();
-char *ASN1_dup();
-#ifndef NO_FP_API
-char *ASN1_d2i_fp();
-int ASN1_i2d_fp();
-#endif
-
-char *ASN1_d2i_bio();
-int ASN1_i2d_bio();
-int ASN1_UTCTIME_print();
-int ASN1_GENERALIZEDTIME_print();
-int ASN1_TIME_print();
-int ASN1_STRING_print();
-int ASN1_parse();
-int i2a_ASN1_INTEGER();
-int a2i_ASN1_INTEGER();
-int i2a_ASN1_ENUMERATED();
-int a2i_ASN1_ENUMERATED();
-int i2a_ASN1_OBJECT();
-int i2t_ASN1_OBJECT();
-int a2i_ASN1_STRING();
-int i2a_ASN1_STRING();
-
-int i2d_ASN1_HEADER();
-ASN1_HEADER *d2i_ASN1_HEADER();
-ASN1_HEADER *ASN1_HEADER_new();
-void ASN1_HEADER_free();
-void ERR_load_ASN1_strings();
-ASN1_METHOD *X509_asn1_meth();
-ASN1_METHOD *RSAPrivateKey_asn1_meth();
-ASN1_METHOD *ASN1_IA5STRING_asn1_meth();
-ASN1_METHOD *ASN1_BIT_STRING_asn1_meth();
-
-int ASN1_UNIVERSALSTRING_to_string();
-
-int ASN1_TYPE_set_octetstring();
-int ASN1_TYPE_get_octetstring();
-int ASN1_TYPE_set_int_octetstring();
-int ASN1_TYPE_get_int_octetstring();
-
-int i2d_ASN1_BMPSTRING();
-ASN1_BMPSTRING *d2i_ASN1_BMPSTRING();
-
-STACK *ASN1_seq_unpack();
-unsigned char *ASN1_seq_pack();
-char *ASN1_unpack_string();
-ASN1_STRING *ASN1_pack_string();
-
-#endif
-
 /* BEGIN ERROR CODES */
+/* The following lines are auto generated by the script mkerr.pl. Any changes
+ * made after this point may be overwritten when the script is next run.
+ */
+
 /* Error codes for the ASN1 functions. */
 
 /* Function codes. */
@@ -864,6 +741,8 @@ ASN1_STRING *ASN1_pack_string();
 #define ASN1_F_D2I_AUTHORITY_KEYID                      238
 #define ASN1_F_D2I_BASIC_CONSTRAINTS                    227
 #define ASN1_F_D2I_DHPARAMS                             136
+#define ASN1_F_D2I_DIST_POINT                           276
+#define ASN1_F_D2I_DIST_POINT_NAME                      277
 #define ASN1_F_D2I_DSAPARAMS                            137
 #define ASN1_F_D2I_DSAPRIVATEKEY                        138
 #define ASN1_F_D2I_DSAPUBLICKEY                                 139
@@ -874,6 +753,7 @@ ASN1_STRING *ASN1_pack_string();
 #define ASN1_F_D2I_NETSCAPE_RSA_2                       142
 #define ASN1_F_D2I_NETSCAPE_SPKAC                       143
 #define ASN1_F_D2I_NETSCAPE_SPKI                        144
+#define ASN1_F_D2I_NOTICEREF                            268
 #define ASN1_F_D2I_PBE2PARAM                            262
 #define ASN1_F_D2I_PBEPARAM                             249
 #define ASN1_F_D2I_PBKDF2PARAM                          263
@@ -893,12 +773,15 @@ ASN1_STRING *ASN1_pack_string();
 #define ASN1_F_D2I_PKCS7_SIGN_ENVELOPE                  154
 #define ASN1_F_D2I_PKCS8_PRIV_KEY_INFO                  250
 #define ASN1_F_D2I_PKEY_USAGE_PERIOD                    239
+#define ASN1_F_D2I_POLICYINFO                           269
+#define ASN1_F_D2I_POLICYQUALINFO                       270
 #define ASN1_F_D2I_PRIVATEKEY                           155
 #define ASN1_F_D2I_PUBLICKEY                            156
 #define ASN1_F_D2I_RSAPRIVATEKEY                        157
 #define ASN1_F_D2I_RSAPUBLICKEY                                 158
 #define ASN1_F_D2I_SXNET                                241
 #define ASN1_F_D2I_SXNETID                              243
+#define ASN1_F_D2I_USERNOTICE                           271
 #define ASN1_F_D2I_X509                                         159
 #define ASN1_F_D2I_X509_ALGOR                           160
 #define ASN1_F_D2I_X509_ATTRIBUTE                       161
@@ -916,6 +799,8 @@ ASN1_STRING *ASN1_pack_string();
 #define ASN1_F_D2I_X509_REVOKED                                 173
 #define ASN1_F_D2I_X509_SIG                             174
 #define ASN1_F_D2I_X509_VAL                             175
+#define ASN1_F_DIST_POINT_NAME_NEW                      278
+#define ASN1_F_DIST_POINT_NEW                           279
 #define ASN1_F_GENERAL_NAME_NEW                                 231
 #define ASN1_F_I2D_ASN1_HEADER                          176
 #define ASN1_F_I2D_ASN1_TIME                            225
@@ -935,6 +820,7 @@ ASN1_STRING *ASN1_pack_string();
 #define ASN1_F_NETSCAPE_PKEY_NEW                        189
 #define ASN1_F_NETSCAPE_SPKAC_NEW                       190
 #define ASN1_F_NETSCAPE_SPKI_NEW                        191
+#define ASN1_F_NOTICEREF_NEW                            272
 #define ASN1_F_PBE2PARAM_NEW                            264
 #define ASN1_F_PBEPARAM_NEW                             251
 #define ASN1_F_PBKDF2PARAM_NEW                          265
@@ -954,8 +840,11 @@ ASN1_STRING *ASN1_pack_string();
 #define ASN1_F_PKCS7_SIGN_ENVELOPE_NEW                  201
 #define ASN1_F_PKCS8_PRIV_KEY_INFO_NEW                  252
 #define ASN1_F_PKEY_USAGE_PERIOD_NEW                    240
+#define ASN1_F_POLICYINFO_NEW                           273
+#define ASN1_F_POLICYQUALINFO_NEW                       274
 #define ASN1_F_SXNETID_NEW                              244
 #define ASN1_F_SXNET_NEW                                242
+#define ASN1_F_USERNOTICE_NEW                           275
 #define ASN1_F_X509_ALGOR_NEW                           202
 #define ASN1_F_X509_ATTRIBUTE_NEW                       203
 #define ASN1_F_X509_CINF_NEW                            204
@@ -1035,7 +924,7 @@ ASN1_STRING *ASN1_pack_string();
 #define ASN1_R_WRONG_PRINTABLE_TYPE                     148
 #define ASN1_R_WRONG_TAG                                149
 #define ASN1_R_WRONG_TYPE                               150
+
 #ifdef  __cplusplus
 }
 #endif