diff --git a/crypto/asn1/asn1_lib.c b/crypto/asn1/asn1_lib.c index 1fc2c060..22b441c1 100644 --- a/crypto/asn1/asn1_lib.c +++ b/crypto/asn1/asn1_lib.c @@ -63,8 +63,46 @@ #include #include + +/* Used in asn1_mac.h. + * TODO(davidben): Remove this once asn1_mac.h is gone or trimmed. */ OPENSSL_DECLARE_ERROR_REASON(ASN1, MALLOC_FAILURE); +/* Cross-module errors from crypto/x509/i2d_pr.c */ +OPENSSL_DECLARE_ERROR_FUNCTION(ASN1, i2d_PrivateKey); +OPENSSL_DECLARE_ERROR_REASON(ASN1, UNSUPPORTED_PUBLIC_KEY_TYPE); + +/* Cross-module errors from crypto/x509/asn1_gen.c. + * TODO(davidben): Remove these once asn1_gen.c is gone. */ +OPENSSL_DECLARE_ERROR_FUNCTION(ASN1, ASN1_generate_v3); +OPENSSL_DECLARE_ERROR_FUNCTION(ASN1, asn1_cb); +OPENSSL_DECLARE_ERROR_FUNCTION(ASN1, parse_tagging); +OPENSSL_DECLARE_ERROR_FUNCTION(ASN1, append_exp); +OPENSSL_DECLARE_ERROR_FUNCTION(ASN1, asn1_str2type); +OPENSSL_DECLARE_ERROR_FUNCTION(ASN1, bitstr_cb); +OPENSSL_DECLARE_ERROR_REASON(ASN1, DEPTH_EXCEEDED); +OPENSSL_DECLARE_ERROR_REASON(ASN1, ILLEGAL_BITSTRING_FORMAT); +OPENSSL_DECLARE_ERROR_REASON(ASN1, ILLEGAL_BOOLEAN); +OPENSSL_DECLARE_ERROR_REASON(ASN1, ILLEGAL_FORMAT); +OPENSSL_DECLARE_ERROR_REASON(ASN1, ILLEGAL_HEX); +OPENSSL_DECLARE_ERROR_REASON(ASN1, ILLEGAL_IMPLICIT_TAG); +OPENSSL_DECLARE_ERROR_REASON(ASN1, ILLEGAL_INTEGER); +OPENSSL_DECLARE_ERROR_REASON(ASN1, ILLEGAL_NESTED_TAGGING); +OPENSSL_DECLARE_ERROR_REASON(ASN1, ILLEGAL_NULL_VALUE); +OPENSSL_DECLARE_ERROR_REASON(ASN1, ILLEGAL_OBJECT); +OPENSSL_DECLARE_ERROR_REASON(ASN1, ILLEGAL_TIME_VALUE); +OPENSSL_DECLARE_ERROR_REASON(ASN1, INTEGER_NOT_ASCII_FORMAT); +OPENSSL_DECLARE_ERROR_REASON(ASN1, INVALID_MODIFIER); +OPENSSL_DECLARE_ERROR_REASON(ASN1, INVALID_NUMBER); +OPENSSL_DECLARE_ERROR_REASON(ASN1, LIST_ERROR); +OPENSSL_DECLARE_ERROR_REASON(ASN1, MISSING_VALUE); +OPENSSL_DECLARE_ERROR_REASON(ASN1, NOT_ASCII_FORMAT); +OPENSSL_DECLARE_ERROR_REASON(ASN1, OBJECT_NOT_ASCII_FORMAT); +OPENSSL_DECLARE_ERROR_REASON(ASN1, SEQUENCE_OR_SET_NEEDS_CONFIG); +OPENSSL_DECLARE_ERROR_REASON(ASN1, TIME_NOT_ASCII_FORMAT); +OPENSSL_DECLARE_ERROR_REASON(ASN1, UNKNOWN_FORMAT); +OPENSSL_DECLARE_ERROR_REASON(ASN1, UNKNOWN_TAG); +OPENSSL_DECLARE_ERROR_REASON(ASN1, UNSUPPORTED_TYPE); static int asn1_get_length(const unsigned char **pp,int *inf,long *rl,int max); static void asn1_put_length(unsigned char **pp, int length); diff --git a/crypto/err/asn1.errordata b/crypto/err/asn1.errordata index bbe0e246..ac0ab299 100644 --- a/crypto/err/asn1.errordata +++ b/crypto/err/asn1.errordata @@ -13,6 +13,7 @@ ASN1,function,132,ASN1_TIME_adj ASN1,function,137,ASN1_UTCTIME_adj ASN1,function,103,ASN1_d2i_fp ASN1,function,101,ASN1_dup +ASN1,function,161,ASN1_generate_v3 ASN1,function,158,ASN1_get_object ASN1,function,145,ASN1_i2d_bio ASN1,function,153,ASN1_i2d_fp @@ -36,6 +37,8 @@ ASN1,function,123,a2d_ASN1_OBJECT ASN1,function,160,a2i_ASN1_ENUMERATED ASN1,function,114,a2i_ASN1_INTEGER ASN1,function,102,a2i_ASN1_STRING +ASN1,function,162,append_exp +ASN1,function,163,asn1_cb ASN1,function,152,asn1_check_tlen ASN1,function,156,asn1_collate_primitive ASN1,function,115,asn1_collect @@ -45,8 +48,10 @@ ASN1,function,107,asn1_do_adb ASN1,function,109,asn1_ex_c2i ASN1,function,149,asn1_find_end ASN1,function,105,asn1_item_ex_combine_new +ASN1,function,164,asn1_str2type ASN1,function,100,asn1_template_ex_d2i ASN1,function,141,asn1_template_noexp_d2i +ASN1,function,165,bitstr_cb ASN1,function,142,c2i_ASN1_BIT_STRING ASN1,function,110,c2i_ASN1_INTEGER ASN1,function,118,c2i_ASN1_OBJECT @@ -58,7 +63,9 @@ ASN1,function,147,d2i_ASN1_UTCTIME ASN1,function,159,d2i_ASN1_bytes ASN1,function,113,d2i_ASN1_type_bytes ASN1,function,131,i2d_ASN1_TIME +ASN1,function,166,i2d_PrivateKey ASN1,function,121,long_c2i +ASN1,function,167,parse_tagging ASN1,reason,101,ADDING_OBJECT ASN1,reason,158,ASN1_LENGTH_MISMATCH ASN1,reason,123,ASN1_PARSE_ERROR diff --git a/crypto/err/err_data.h b/crypto/err/err_data.h index 89617068..f5fa9dd7 100644 --- a/crypto/err/err_data.h +++ b/crypto/err/err_data.h @@ -53,595 +53,602 @@ OPENSSL_COMPILE_ASSERT(ERR_LIB_HKDF == 32, library_values_changed_32); OPENSSL_COMPILE_ASSERT(ERR_NUM_LIBS == 33, library_values_changed_num); static const uint32_t kFunctionValues[] = { - 0xc320582, - 0xc328669, - 0xc33059f, - 0xc3386a1, - 0xc34065d, - 0xc348670, - 0xc350678, - 0xc358696, - 0xc3605e2, - 0xc3685d1, - 0xc370555, - 0xc378621, - 0xc380578, - 0xc38858c, - 0xc390593, - 0xc3985f2, - 0xc3a060c, - 0xc3a856b, - 0xc3b068e, - 0xc3b8649, - 0xc3c0560, - 0xc3c8630, - 0xc3d05a6, - 0xc3d85bc, - 0xc3e0686, - 0x10321930, - 0x103298a2, - 0x103318b7, - 0x10339972, - 0x10341832, - 0x10349967, - 0x103519c8, - 0x103599e4, - 0x10361851, - 0x1036999c, - 0x10371812, - 0x103799a3, - 0x103817e2, - 0x10389917, - 0x1039188b, - 0x103997d2, - 0x103a186e, - 0x103a978c, - 0x103b17bc, - 0x103b9994, - 0x103c19db, - 0x103c9803, - 0x103d18d9, - 0x103d995e, - 0x103e17a3, - 0x103e998c, - 0x103f18f8, - 0x103f9947, - 0x104017f5, - 0x104099b6, - 0x143209e6, - 0x143289d9, - 0x143309cd, - 0x143389bf, - 0x183213d0, - 0x18329236, - 0x18331269, - 0x1833934f, - 0x183411ae, - 0x1834920a, - 0x183513ff, - 0x183593e0, - 0x18361112, - 0x183691a0, - 0x183712ec, - 0x1837914a, - 0x18381313, - 0x183892c0, - 0x183911c1, - 0x183990eb, - 0x183a115c, - 0x183a92af, - 0x183b127b, - 0x183b9219, - 0x183c132f, - 0x183c90fc, - 0x183d135c, - 0x183d93ef, - 0x183e140f, - 0x183e9135, - 0x183f11d1, - 0x183f90bd, - 0x18401245, - 0x1840928d, - 0x184111f7, - 0x18419256, - 0x18421181, - 0x18429320, - 0x1843133e, - 0x1843904a, - 0x18441097, - 0x18449086, - 0x1845106d, - 0x1845918e, - 0x184610ad, - 0x1846916c, - 0x18471229, - 0x184792ff, - 0x1848139a, - 0x1848929e, - 0x184910d2, - 0x1849938c, - 0x184a11e6, - 0x184a92de, - 0x184b141e, - 0x184b9123, - 0x184c137b, - 0x184c936a, - 0x184d12d1, - 0x184d9028, - 0x184e1010, - 0x184e93aa, - 0x184f105c, - 0x1c3206ae, - 0x1c3286d1, - 0x1c3306c5, - 0x1c3386ba, - 0x20321451, - 0x20329432, - 0x2033143d, - 0x20339445, - 0x24321543, - 0x243295fe, - 0x24331589, - 0x243395f0, - 0x24341522, - 0x24349510, - 0x2435146b, - 0x2435945d, - 0x243614ef, - 0x2436949f, - 0x24371559, - 0x24379507, - 0x243814b2, - 0x243894c9, - 0x2439147d, - 0x243995b6, - 0x243a15ce, - 0x243a9571, - 0x243b1593, - 0x243b948c, - 0x243c14e1, - 0x243c95a8, - 0x243d15e5, - 0x243d9536, - 0x28320a39, - 0x28328a49, - 0x28330a2e, - 0x28338a1f, - 0x28340a3e, + 0xc3205db, + 0xc3286c2, + 0xc3305f8, + 0xc3386fa, + 0xc3406b6, + 0xc3486c9, + 0xc3506d1, + 0xc3586ef, + 0xc36063b, + 0xc36862a, + 0xc3705ae, + 0xc37867a, + 0xc3805d1, + 0xc3885e5, + 0xc3905ec, + 0xc39864b, + 0xc3a0665, + 0xc3a85c4, + 0xc3b06e7, + 0xc3b86a2, + 0xc3c05b9, + 0xc3c8689, + 0xc3d05ff, + 0xc3d8615, + 0xc3e06df, + 0x10321989, + 0x103298fb, + 0x10331910, + 0x103399cb, + 0x1034188b, + 0x103499c0, + 0x10351a21, + 0x10359a3d, + 0x103618aa, + 0x103699f5, + 0x1037186b, + 0x103799fc, + 0x1038183b, + 0x10389970, + 0x103918e4, + 0x1039982b, + 0x103a18c7, + 0x103a97e5, + 0x103b1815, + 0x103b99ed, + 0x103c1a34, + 0x103c985c, + 0x103d1932, + 0x103d99b7, + 0x103e17fc, + 0x103e99e5, + 0x103f1951, + 0x103f99a0, + 0x1040184e, + 0x10409a0f, + 0x14320a3f, + 0x14328a32, + 0x14330a26, + 0x14338a18, + 0x18321429, + 0x1832928f, + 0x183312c2, + 0x183393a8, + 0x18341207, + 0x18349263, + 0x18351458, + 0x18359439, + 0x1836116b, + 0x183691f9, + 0x18371345, + 0x183791a3, + 0x1838136c, + 0x18389319, + 0x1839121a, + 0x18399144, + 0x183a11b5, + 0x183a9308, + 0x183b12d4, + 0x183b9272, + 0x183c1388, + 0x183c9155, + 0x183d13b5, + 0x183d9448, + 0x183e1468, + 0x183e918e, + 0x183f122a, + 0x183f9116, + 0x1840129e, + 0x184092e6, + 0x18411250, + 0x184192af, + 0x184211da, + 0x18429379, + 0x18431397, + 0x184390a3, + 0x184410f0, + 0x184490df, + 0x184510c6, + 0x184591e7, + 0x18461106, + 0x184691c5, + 0x18471282, + 0x18479358, + 0x184813f3, + 0x184892f7, + 0x1849112b, + 0x184993e5, + 0x184a123f, + 0x184a9337, + 0x184b1477, + 0x184b917c, + 0x184c13d4, + 0x184c93c3, + 0x184d132a, + 0x184d9081, + 0x184e1069, + 0x184e9403, + 0x184f10b5, + 0x1c320707, + 0x1c32872a, + 0x1c33071e, + 0x1c338713, + 0x203214aa, + 0x2032948b, + 0x20331496, + 0x2033949e, + 0x2432159c, + 0x24329657, + 0x243315e2, + 0x24339649, + 0x2434157b, + 0x24349569, + 0x243514c4, + 0x243594b6, + 0x24361548, + 0x243694f8, + 0x243715b2, + 0x24379560, + 0x2438150b, + 0x24389522, + 0x243914d6, + 0x2439960f, + 0x243a1627, + 0x243a95ca, + 0x243b15ec, + 0x243b94e5, + 0x243c153a, + 0x243c9601, + 0x243d163e, + 0x243d958f, + 0x28320a92, + 0x28328aa2, + 0x28330a87, + 0x28338a78, + 0x28340a97, 0x2c322ffb, - 0x2c32ac7a, - 0x2c332ead, - 0x2c33ae40, - 0x2c342c97, - 0x2c34af4b, - 0x2c352e81, - 0x2c35ac44, - 0x2c362f41, - 0x2c36add8, - 0x2c372d98, - 0x2c37af04, - 0x2c382b68, - 0x2c38af33, - 0x2c392fbc, - 0x2c39ab44, + 0x2c32acc2, + 0x2c332ef5, + 0x2c33ae88, + 0x2c342cdf, + 0x2c34af68, + 0x2c352ec9, + 0x2c35ac8c, + 0x2c360385, + 0x2c36ae20, + 0x2c372de0, + 0x2c37af4c, + 0x2c382bb0, + 0x2c38834a, + 0x2c392fca, + 0x2c39ab8c, 0x2c3a2fd9, - 0x2c3aaf65, - 0x2c3b2b33, - 0x2c3baf73, - 0x2c3c2ec0, - 0x2c3cac12, - 0x2c3d2d2d, - 0x2c3dac68, - 0x2c3e2da9, - 0x2c3eaf13, - 0x2c3f2ba4, - 0x2c3fabbb, - 0x2c402c2b, - 0x2c40adc4, - 0x2c412b72, - 0x2c41ad3f, + 0x2c3aaf82, + 0x2c3b010c, + 0x2c3baf90, + 0x2c3c2f08, + 0x2c3cac5a, + 0x2c3d2d75, + 0x2c3dacb0, + 0x2c3e2df1, + 0x2c3eaf5b, + 0x2c3f2bec, + 0x2c3fac03, + 0x2c402c73, + 0x2c40ae0c, + 0x2c412bba, + 0x2c41ad87, 0x2c422fea, - 0x2c42ad4f, - 0x2c432e0a, - 0x2c43afcb, - 0x2c442f58, - 0x2c44ab27, - 0x2c452e99, - 0x2c45abf5, - 0x2c462d6d, - 0x2c46ad5d, - 0x2c472f7c, - 0x2c47ad19, - 0x2c482ef3, - 0x2c48ae4f, - 0x2c492f20, - 0x2c49af9f, - 0x2c4a2cb4, - 0x2c4aadeb, - 0x2c4b2b8b, - 0x2c4baed1, - 0x2c4c2ce0, - 0x2c4cacfe, - 0x2c4d2f2b, - 0x2c4daee2, - 0x2c4e2c5a, - 0x2c4eafad, - 0x2c4f2d7d, - 0x2c4fae1e, - 0x2c502e66, - 0x2c50ab57, - 0x2c512bd8, - 0x2c51af90, - 0x2c522e31, - 0x2c52acc2, - 0x30320326, + 0x2c42ad97, + 0x2c432e52, + 0x2c43845e, + 0x2c442f75, + 0x2c44ab80, + 0x2c452ee1, + 0x2c45ac3d, + 0x2c462db5, + 0x2c46ada5, + 0x2c472f99, + 0x2c47ad61, + 0x2c482f3b, + 0x2c48ae97, + 0x2c49029c, + 0x2c49afbc, + 0x2c4a2cfc, + 0x2c4aae33, + 0x2c4b2bd3, + 0x2c4baf19, + 0x2c4c2d28, + 0x2c4cad46, + 0x2c4d02a7, + 0x2c4daf2a, + 0x2c4e2ca2, + 0x2c4e8446, + 0x2c4f2dc5, + 0x2c4fae66, + 0x2c502eae, + 0x2c50ab9f, + 0x2c512c20, + 0x2c51afad, + 0x2c522e79, + 0x2c52ad0a, + 0x30320358, 0x30328103, - 0x3033027b, + 0x3033028c, 0x303380f7, - 0x303403a6, - 0x3034830d, - 0x303501eb, - 0x303582e7, - 0x303602d5, - 0x303682f3, - 0x30370367, + 0x303403e2, + 0x30348331, + 0x303501fc, + 0x3035830b, + 0x303602f9, + 0x30368317, + 0x303703a3, 0x3037808f, - 0x30380197, - 0x303883e8, - 0x3039026a, - 0x303982b2, - 0x303a0146, + 0x303801a8, + 0x30388424, + 0x3039027b, + 0x303982d6, + 0x303a0157, 0x303a8018, - 0x303b0378, - 0x303b81fd, - 0x303c03b6, - 0x303c840a, - 0x303d01cd, - 0x303d8246, + 0x303b03b4, + 0x303b820e, + 0x303c03f2, + 0x303c8455, + 0x303d01de, + 0x303d8257, 0x303e00c3, 0x303e805b, - 0x303f0233, - 0x303f8210, + 0x303f0244, + 0x303f8221, 0x3040002c, - 0x30408154, + 0x30408165, 0x3041006c, - 0x304183fc, + 0x30418438, 0x304200d8, 0x30428000, - 0x304301db, - 0x30438188, + 0x304301ec, + 0x30438199, 0x304400b3, 0x304480e6, - 0x304501a8, - 0x30458395, + 0x304501b9, + 0x304583d1, 0x3046007f, - 0x3046833b, - 0x30470353, - 0x3047821d, - 0x304802bf, - 0x3048811c, - 0x30490165, - 0x304983c8, + 0x3046836d, + 0x3047038f, + 0x3047822e, + 0x304802e3, + 0x3048812d, + 0x30490176, + 0x30498404, 0x304a009d, - 0x304a82ff, - 0x304b0135, - 0x304b8388, - 0x304c028b, - 0x304c8129, - 0x304d0177, + 0x304a8323, + 0x304b0146, + 0x304b83c4, + 0x304c02af, + 0x304c813a, + 0x304d0188, 0x304d8042, - 0x304e029b, - 0x304e81bc, - 0x304f010c, - 0x304f83d9, - 0x30500256, - 0x34320951, - 0x34328979, - 0x3433096c, - 0x34338961, - 0x38320982, - 0x38328995, - 0x383309b1, - 0x3833899f, - 0x3c320f18, - 0x3c328cb8, - 0x3c330ed8, - 0x3c338dde, - 0x3c340d94, - 0x3c348ad5, - 0x3c350cd1, - 0x3c358a89, - 0x3c360eb4, - 0x3c368e7e, - 0x3c370c1f, - 0x3c378d1d, - 0x3c380bb3, - 0x3c388f5f, - 0x3c390f28, - 0x3c398a50, - 0x3c3a0b1d, - 0x3c3a8cea, - 0x3c3b0b45, - 0x3c3b8b76, - 0x3c3c0e09, - 0x3c3c8e34, - 0x3c3d0f81, - 0x3c3d8aa4, - 0x3c3e0f34, - 0x3c3e8bd5, - 0x3c3f0b86, - 0x3c3f8b52, - 0x3c400eef, - 0x3c408f91, - 0x3c410d00, - 0x3c418ec1, - 0x3c420b38, - 0x3c428e99, - 0x3c430f4c, - 0x3c438ab5, - 0x3c440bc8, - 0x3c448be8, - 0x3c450b2a, - 0x3c458b9e, - 0x3c460d76, - 0x3c468f70, - 0x3c470c96, - 0x3c478d33, - 0x3c480c47, - 0x3c488c60, - 0x3c490c76, - 0x3c498dc6, - 0x3c4a0a75, - 0x3c4a8d4f, - 0x3c4b0c83, - 0x3c4b8ca7, - 0x3c4c0dae, - 0x3c4c8bfb, - 0x3c4d0ae7, - 0x3c4d8ac1, - 0x3c4e0e55, - 0x3c4e8b10, - 0x3c4f0a5e, - 0x40321dbf, - 0x4032a037, - 0x40332705, - 0x40339d45, - 0x40341cf1, - 0x4034a6bb, - 0x40351fc7, - 0x4035a1c4, - 0x40361d7b, - 0x40372966, - 0x40379b4b, - 0x40382006, - 0x4038a10f, - 0x40392187, - 0x40399e45, - 0x403a29c3, - 0x403aa87c, - 0x403b2973, - 0x403ba355, - 0x403c2ab5, - 0x403c9f3a, - 0x403d28e2, - 0x403da386, - 0x403e2487, - 0x403ea558, - 0x403f1e08, - 0x403fa663, - 0x4040219f, - 0x40409f66, - 0x40411dd7, - 0x4041aae6, - 0x40422687, - 0x4042a1df, - 0x40431c03, - 0x4043a627, - 0x40442078, - 0x4044a2a8, - 0x4045225b, - 0x40459e9b, - 0x4046258f, - 0x4046a603, - 0x40472304, - 0x4047a6e5, - 0x4048283c, - 0x40489c67, - 0x404921b6, - 0x4049a345, - 0x404a1ae1, - 0x404a9e5e, - 0x404b9cc8, - 0x404c1fd7, - 0x404c99ff, - 0x404d2231, - 0x404da071, - 0x404e1a19, - 0x404ea083, - 0x404f1e23, - 0x404fa990, - 0x40502017, - 0x4050a672, - 0x40511bee, - 0x4051aa19, - 0x405229d9, - 0x4052a939, - 0x405323ee, - 0x40539f83, - 0x40542a04, - 0x4054a090, - 0x40551d87, - 0x4055a7f9, - 0x40561e31, - 0x40569afb, - 0x4057294b, - 0x4057a0f9, - 0x40581e77, - 0x4058a246, - 0x4059278e, - 0x4059a5e2, - 0x405a22be, - 0x405a9f1f, - 0x405b23d2, - 0x405bab12, - 0x405c1d1e, - 0x405c9c8b, - 0x405d240a, - 0x405da569, - 0x405e26ad, - 0x405ea150, - 0x405f20c8, - 0x405f9e91, - 0x406027e7, - 0x4060a959, - 0x40611b1a, - 0x40619b39, - 0x406227a4, - 0x40629d60, - 0x406325a3, - 0x4063a4f6, - 0x40642059, - 0x4064a315, - 0x40651b63, - 0x4065a57c, - 0x40662739, - 0x4066a127, - 0x40671a25, - 0x4067a420, - 0x40681da7, - 0x40689b80, - 0x40691bde, - 0x40699eab, - 0x406a2901, - 0x406aa470, - 0x406b1ded, - 0x406ba1ac, - 0x406c2540, - 0x406ca8bf, - 0x406d239c, - 0x406da4df, - 0x406e1c44, - 0x406ea6c8, - 0x406f2371, - 0x406fa169, - 0x40701f10, - 0x40709f4e, - 0x40712a99, - 0x40719a5b, - 0x40721d29, - 0x4072a453, - 0x407326a0, - 0x40739ff1, - 0x4074280e, - 0x4074a7cd, - 0x40752aef, - 0x407599ef, - 0x40762720, - 0x40769f9a, - 0x407720a3, - 0x4077aad7, - 0x407823fe, - 0x4078a7b8, - 0x40792816, - 0x4079a529, - 0x407a1a7a, - 0x407a9ce8, - 0x407b24c2, - 0x407b9cb7, - 0x407c29a7, - 0x407ca642, - 0x407d2052, - 0x407d9d94, - 0x407e1ba3, - 0x407e9a92, - 0x407f1d35, - 0x407f9bc0, - 0x4080291d, - 0x4080a104, - 0x40812859, - 0x4081a11b, - 0x4082228c, - 0x40829aa9, - 0x40831fac, - 0x40839ca1, - 0x40841f2d, - 0x4084a331, - 0x40851d0a, - 0x4085a5c7, - 0x408620b1, - 0x40869ac5, - 0x408722db, - 0x4087a219, - 0x40882514, - 0x40889ce0, - 0x408928a2, - 0x4089a278, - 0x408a243e, - 0x408a9a3d, - 0x408b2a50, - 0x408baa32, - 0x408c29f1, - 0x408caa70, - 0x408d21fa, - 0x408da0df, - 0x408e213a, - 0x408ea76a, - 0x408f2750, - 0x408f9ec4, - 0x40902061, - 0x40909ed4, - 0x40911ef5, - 0x4091a4a5, - 0x40921c1f, - 0x40929c39, - 0x40931cab, - 0x4093a3b9, - 0x409422ed, - 0x4094aa90, - 0x409523e5, - 0x40959f74, - 0x40961cfa, - 0x443204fe, - 0x443284cb, - 0x44330516, - 0x44338436, - 0x44340541, - 0x4434842e, - 0x443504d4, - 0x44358443, - 0x4436054b, - 0x4436852c, - 0x44370522, - 0x44378537, - 0x44380413, - 0x443884db, - 0x4439050c, - 0x44398425, - 0x443a048e, - 0x443a84aa, - 0x443b0453, - 0x443b846e, - 0x4c3216d5, - 0x4c329615, - 0x4c331606, - 0x4c3396a1, - 0x4c341705, - 0x4c34970f, - 0x4c351693, - 0x4c359765, - 0x4c36173f, - 0x4c369778, - 0x4c3716f5, - 0x4c379727, - 0x4c381681, - 0x4c3896b6, - 0x4c391752, - 0x4c3996c7, - 0x4c3a16e3, - 0x4c3a9674, - 0x4c3b163d, - 0x4c3b9658, - 0x4c3c1624, + 0x304e02bf, + 0x304e81cd, + 0x304f011d, + 0x304f8415, + 0x30500267, + 0x3050810c, + 0x3051029c, + 0x305182a7, + 0x3052034a, + 0x30528385, + 0x30530446, + 0x3053845e, + 0x343209aa, + 0x343289d2, + 0x343309c5, + 0x343389ba, + 0x383209db, + 0x383289ee, + 0x38330a0a, + 0x383389f8, + 0x3c320f71, + 0x3c328d11, + 0x3c330f31, + 0x3c338e37, + 0x3c340ded, + 0x3c348b2e, + 0x3c350d2a, + 0x3c358ae2, + 0x3c360f0d, + 0x3c368ed7, + 0x3c370c78, + 0x3c378d76, + 0x3c380c0c, + 0x3c388fb8, + 0x3c390f81, + 0x3c398aa9, + 0x3c3a0b76, + 0x3c3a8d43, + 0x3c3b0b9e, + 0x3c3b8bcf, + 0x3c3c0e62, + 0x3c3c8e8d, + 0x3c3d0fda, + 0x3c3d8afd, + 0x3c3e0f8d, + 0x3c3e8c2e, + 0x3c3f0bdf, + 0x3c3f8bab, + 0x3c400f48, + 0x3c408fea, + 0x3c410d59, + 0x3c418f1a, + 0x3c420b91, + 0x3c428ef2, + 0x3c430fa5, + 0x3c438b0e, + 0x3c440c21, + 0x3c448c41, + 0x3c450b83, + 0x3c458bf7, + 0x3c460dcf, + 0x3c468fc9, + 0x3c470cef, + 0x3c478d8c, + 0x3c480ca0, + 0x3c488cb9, + 0x3c490ccf, + 0x3c498e1f, + 0x3c4a0ace, + 0x3c4a8da8, + 0x3c4b0cdc, + 0x3c4b8d00, + 0x3c4c0e07, + 0x3c4c8c54, + 0x3c4d0b40, + 0x3c4d8b1a, + 0x3c4e0eae, + 0x3c4e8b69, + 0x3c4f0ab7, + 0x40321e18, + 0x4032a090, + 0x4033275e, + 0x40339d9e, + 0x40341d4a, + 0x4034a714, + 0x40352020, + 0x4035a21d, + 0x40361dd4, + 0x403729bf, + 0x40379ba4, + 0x4038205f, + 0x4038a168, + 0x403921e0, + 0x40399e9e, + 0x403a2a1c, + 0x403aa8d5, + 0x403b29cc, + 0x403ba3ae, + 0x403c2b0e, + 0x403c9f93, + 0x403d293b, + 0x403da3df, + 0x403e24e0, + 0x403ea5b1, + 0x403f1e61, + 0x403fa6bc, + 0x404021f8, + 0x40409fbf, + 0x40411e30, + 0x4041ab3f, + 0x404226e0, + 0x4042a238, + 0x40431c5c, + 0x4043a680, + 0x404420d1, + 0x4044a301, + 0x404522b4, + 0x40459ef4, + 0x404625e8, + 0x4046a65c, + 0x4047235d, + 0x4047a73e, + 0x40482895, + 0x40489cc0, + 0x4049220f, + 0x4049a39e, + 0x404a1b3a, + 0x404a9eb7, + 0x404b9d21, + 0x404c2030, + 0x404c9a58, + 0x404d228a, + 0x404da0ca, + 0x404e1a72, + 0x404ea0dc, + 0x404f1e7c, + 0x404fa9e9, + 0x40502070, + 0x4050a6cb, + 0x40511c47, + 0x4051aa72, + 0x40522a32, + 0x4052a992, + 0x40532447, + 0x40539fdc, + 0x40542a5d, + 0x4054a0e9, + 0x40551de0, + 0x4055a852, + 0x40561e8a, + 0x40569b54, + 0x405729a4, + 0x4057a152, + 0x40581ed0, + 0x4058a29f, + 0x405927e7, + 0x4059a63b, + 0x405a2317, + 0x405a9f78, + 0x405b242b, + 0x405bab6b, + 0x405c1d77, + 0x405c9ce4, + 0x405d2463, + 0x405da5c2, + 0x405e2706, + 0x405ea1a9, + 0x405f2121, + 0x405f9eea, + 0x40602840, + 0x4060a9b2, + 0x40611b73, + 0x40619b92, + 0x406227fd, + 0x40629db9, + 0x406325fc, + 0x4063a54f, + 0x406420b2, + 0x4064a36e, + 0x40651bbc, + 0x4065a5d5, + 0x40662792, + 0x4066a180, + 0x40671a7e, + 0x4067a479, + 0x40681e00, + 0x40689bd9, + 0x40691c37, + 0x40699f04, + 0x406a295a, + 0x406aa4c9, + 0x406b1e46, + 0x406ba205, + 0x406c2599, + 0x406ca918, + 0x406d23f5, + 0x406da538, + 0x406e1c9d, + 0x406ea721, + 0x406f23ca, + 0x406fa1c2, + 0x40701f69, + 0x40709fa7, + 0x40712af2, + 0x40719ab4, + 0x40721d82, + 0x4072a4ac, + 0x407326f9, + 0x4073a04a, + 0x40742867, + 0x4074a826, + 0x40752b48, + 0x40759a48, + 0x40762779, + 0x40769ff3, + 0x407720fc, + 0x4077ab30, + 0x40782457, + 0x4078a811, + 0x4079286f, + 0x4079a582, + 0x407a1ad3, + 0x407a9d41, + 0x407b251b, + 0x407b9d10, + 0x407c2a00, + 0x407ca69b, + 0x407d20ab, + 0x407d9ded, + 0x407e1bfc, + 0x407e9aeb, + 0x407f1d8e, + 0x407f9c19, + 0x40802976, + 0x4080a15d, + 0x408128b2, + 0x4081a174, + 0x408222e5, + 0x40829b02, + 0x40832005, + 0x40839cfa, + 0x40841f86, + 0x4084a38a, + 0x40851d63, + 0x4085a620, + 0x4086210a, + 0x40869b1e, + 0x40872334, + 0x4087a272, + 0x4088256d, + 0x40889d39, + 0x408928fb, + 0x4089a2d1, + 0x408a2497, + 0x408a9a96, + 0x408b2aa9, + 0x408baa8b, + 0x408c2a4a, + 0x408caac9, + 0x408d2253, + 0x408da138, + 0x408e2193, + 0x408ea7c3, + 0x408f27a9, + 0x408f9f1d, + 0x409020ba, + 0x40909f2d, + 0x40911f4e, + 0x4091a4fe, + 0x40921c78, + 0x40929c92, + 0x40931d04, + 0x4093a412, + 0x40942346, + 0x4094aae9, + 0x4095243e, + 0x40959fcd, + 0x40961d53, + 0x44320557, + 0x44328524, + 0x4433056f, + 0x4433848f, + 0x4434059a, + 0x44348487, + 0x4435052d, + 0x4435849c, + 0x443605a4, + 0x44368585, + 0x4437057b, + 0x44378590, + 0x4438046c, + 0x44388534, + 0x44390565, + 0x4439847e, + 0x443a04e7, + 0x443a8503, + 0x443b04ac, + 0x443b84c7, + 0x4c32172e, + 0x4c32966e, + 0x4c33165f, + 0x4c3396fa, + 0x4c34175e, + 0x4c349768, + 0x4c3516ec, + 0x4c3597be, + 0x4c361798, + 0x4c3697d1, + 0x4c37174e, + 0x4c379780, + 0x4c3816da, + 0x4c38970f, + 0x4c3917ab, + 0x4c399720, + 0x4c3a173c, + 0x4c3a96cd, + 0x4c3b1696, + 0x4c3b96b1, + 0x4c3c167d, 0x50323180, 0x5032b2f0, 0x50333119, @@ -699,47 +706,47 @@ static const uint32_t kFunctionValues[] = { 0x504d300c, 0x504db1f3, 0x504e308d, - 0x68320ff2, - 0x68328fc3, - 0x68330fe1, - 0x68338fb2, - 0x68340fd3, - 0x68348fff, - 0x6c320fa1, - 0x743209fa, - 0x74328a0c, - 0x7832075a, - 0x78328780, - 0x7833076c, - 0x78338728, - 0x78340935, - 0x78348942, - 0x78350714, - 0x783586f0, - 0x783606de, - 0x78368702, - 0x783707b8, - 0x783787a6, - 0x78380794, - 0x7838880f, - 0x7839082b, - 0x78398847, - 0x783a0863, - 0x783a888f, - 0x783b0879, - 0x783b87f8, - 0x783c07ca, - 0x783c87e1, - 0x783d073c, - 0x783d890b, - 0x783e0919, - 0x783e8927, - 0x783f08ef, - 0x783f88d1, - 0x784008e0, - 0x784088c2, - 0x784108a5, - 0x8032142d, + 0x6832104b, + 0x6832901c, + 0x6833103a, + 0x6833900b, + 0x6834102c, + 0x68349058, + 0x6c320ffa, + 0x74320a53, + 0x74328a65, + 0x783207b3, + 0x783287d9, + 0x783307c5, + 0x78338781, + 0x7834098e, + 0x7834899b, + 0x7835076d, + 0x78358749, + 0x78360737, + 0x7836875b, + 0x78370811, + 0x783787ff, + 0x783807ed, + 0x78388868, + 0x78390884, + 0x783988a0, + 0x783a08bc, + 0x783a88e8, + 0x783b08d2, + 0x783b8851, + 0x783c0823, + 0x783c883a, + 0x783d0795, + 0x783d8964, + 0x783e0972, + 0x783e8980, + 0x783f0948, + 0x783f892a, + 0x78400939, + 0x7840891b, + 0x784108fe, + 0x80321486, }; static const char kFunctionStringData[] = @@ -758,6 +765,7 @@ static const char kFunctionStringData[] = "ASN1_UTCTIME_adj\0" "ASN1_d2i_fp\0" "ASN1_dup\0" + "ASN1_generate_v3\0" "ASN1_get_object\0" "ASN1_i2d_bio\0" "ASN1_i2d_fp\0" @@ -781,6 +789,8 @@ static const char kFunctionStringData[] = "a2i_ASN1_ENUMERATED\0" "a2i_ASN1_INTEGER\0" "a2i_ASN1_STRING\0" + "append_exp\0" + "asn1_cb\0" "asn1_check_tlen\0" "asn1_collate_primitive\0" "asn1_collect\0" @@ -790,8 +800,10 @@ static const char kFunctionStringData[] = "asn1_ex_c2i\0" "asn1_find_end\0" "asn1_item_ex_combine_new\0" + "asn1_str2type\0" "asn1_template_ex_d2i\0" "asn1_template_noexp_d2i\0" + "bitstr_cb\0" "c2i_ASN1_BIT_STRING\0" "c2i_ASN1_INTEGER\0" "c2i_ASN1_OBJECT\0" @@ -803,7 +815,9 @@ static const char kFunctionStringData[] = "d2i_ASN1_bytes\0" "d2i_ASN1_type_bytes\0" "i2d_ASN1_TIME\0" + "i2d_PrivateKey\0" "long_c2i\0" + "parse_tagging\0" "BIO_callback_ctrl\0" "BIO_ctrl\0" "BIO_new\0" @@ -1308,7 +1322,6 @@ static const char kFunctionStringData[] = "tls1_send_server_supplemental_data\0" "tls1_setup_key_block\0" "ASN1_digest\0" - "ASN1_generate_v3\0" "ASN1_item_sign_ctx\0" "ASN1_item_verify\0" "ASN1_sign\0" @@ -1356,10 +1369,6 @@ static const char kFunctionStringData[] = "X509at_add1_attr\0" "X509v3_add_ext\0" "add_cert_dir\0" - "append_exp\0" - "asn1_cb\0" - "asn1_str2type\0" - "bitstr_cb\0" "by_file_ctrl\0" "check_policy\0" "d2i_X509_PKEY\0" @@ -1367,9 +1376,7 @@ static const char kFunctionStringData[] = "get_cert_by_subject\0" "i2d_DSA_PUBKEY\0" "i2d_EC_PUBKEY\0" - "i2d_PrivateKey\0" "i2d_RSA_PUBKEY\0" - "parse_tagging\0" "x509_name_encode\0" "x509_name_ex_d2i\0" "x509_name_ex_new\0" diff --git a/crypto/x509/asn1_gen.c b/crypto/x509/asn1_gen.c index 750701e4..9ffd937b 100644 --- a/crypto/x509/asn1_gen.c +++ b/crypto/x509/asn1_gen.c @@ -65,6 +65,9 @@ #include +/* Although this file is in crypto/x509 for layering purposes, it emits errors + * from the ASN.1 module for OpenSSL compatibility. */ + #define ASN1_GEN_FLAG 0x10000 #define ASN1_GEN_FLAG_IMP (ASN1_GEN_FLAG|1) #define ASN1_GEN_FLAG_EXP (ASN1_GEN_FLAG|2) @@ -165,7 +168,7 @@ ASN1_TYPE *ASN1_generate_v3(char *str, X509V3_CTX *cnf) { if (!cnf) { - OPENSSL_PUT_ERROR(X509, ASN1_generate_v3, ASN1_R_SEQUENCE_OR_SET_NEEDS_CONFIG); + OPENSSL_PUT_ERROR(ASN1, ASN1_generate_v3, ASN1_R_SEQUENCE_OR_SET_NEEDS_CONFIG); return NULL; } ret = asn1_multi(asn1_tags.utype, asn1_tags.str, cnf); @@ -308,7 +311,7 @@ static int asn1_cb(const char *elem, int len, void *bitstr) if (utype == -1) { - OPENSSL_PUT_ERROR(X509, asn1_cb, ASN1_R_UNKNOWN_TAG); + OPENSSL_PUT_ERROR(ASN1, asn1_cb, ASN1_R_UNKNOWN_TAG); ERR_add_error_data(2, "tag=", elem); return -1; } @@ -321,7 +324,7 @@ static int asn1_cb(const char *elem, int len, void *bitstr) /* If no value and not end of string, error */ if (!vstart && elem[len]) { - OPENSSL_PUT_ERROR(X509, asn1_cb, ASN1_R_MISSING_VALUE); + OPENSSL_PUT_ERROR(ASN1, asn1_cb, ASN1_R_MISSING_VALUE); return -1; } return 0; @@ -334,7 +337,7 @@ static int asn1_cb(const char *elem, int len, void *bitstr) /* Check for illegal multiple IMPLICIT tagging */ if (arg->imp_tag != -1) { - OPENSSL_PUT_ERROR(X509, asn1_cb, ASN1_R_ILLEGAL_NESTED_TAGGING); + OPENSSL_PUT_ERROR(ASN1, asn1_cb, ASN1_R_ILLEGAL_NESTED_TAGGING); return -1; } if (!parse_tagging(vstart, vlen, &arg->imp_tag, &arg->imp_class)) @@ -380,7 +383,7 @@ static int asn1_cb(const char *elem, int len, void *bitstr) arg->format = ASN1_GEN_FORMAT_BITLIST; else { - OPENSSL_PUT_ERROR(X509, asn1_cb, ASN1_R_UNKNOWN_FORMAT); + OPENSSL_PUT_ERROR(ASN1, asn1_cb, ASN1_R_UNKNOWN_FORMAT); return -1; } break; @@ -404,7 +407,7 @@ static int parse_tagging(const char *vstart, int vlen, int *ptag, int *pclass) return 0; if (tag_num < 0) { - OPENSSL_PUT_ERROR(X509, parse_tagging, ASN1_R_INVALID_NUMBER); + OPENSSL_PUT_ERROR(ASN1, parse_tagging, ASN1_R_INVALID_NUMBER); return 0; } *ptag = tag_num; @@ -437,7 +440,7 @@ static int parse_tagging(const char *vstart, int vlen, int *ptag, int *pclass) default: erch[0] = *eptr; erch[1] = 0; - OPENSSL_PUT_ERROR(X509, parse_tagging, ASN1_R_INVALID_MODIFIER); + OPENSSL_PUT_ERROR(ASN1, parse_tagging, ASN1_R_INVALID_MODIFIER); ERR_add_error_data(2, "Char=", erch); return 0; break; @@ -523,13 +526,13 @@ static int append_exp(tag_exp_arg *arg, int exp_tag, int exp_class, int exp_cons /* Can only have IMPLICIT if permitted */ if ((arg->imp_tag != -1) && !imp_ok) { - OPENSSL_PUT_ERROR(X509, append_exp, ASN1_R_ILLEGAL_IMPLICIT_TAG); + OPENSSL_PUT_ERROR(ASN1, append_exp, ASN1_R_ILLEGAL_IMPLICIT_TAG); return 0; } if (arg->exp_count == ASN1_FLAG_EXP_MAX) { - OPENSSL_PUT_ERROR(X509, append_exp, ASN1_R_DEPTH_EXCEEDED); + OPENSSL_PUT_ERROR(ASN1, append_exp, ASN1_R_DEPTH_EXCEEDED); return 0; } @@ -647,7 +650,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) if (!(atmp = ASN1_TYPE_new())) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ERR_R_MALLOC_FAILURE); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ERR_R_MALLOC_FAILURE); return NULL; } @@ -660,7 +663,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) case V_ASN1_NULL: if (str && *str) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_ILLEGAL_NULL_VALUE); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_ILLEGAL_NULL_VALUE); goto bad_form; } break; @@ -668,7 +671,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) case V_ASN1_BOOLEAN: if (format != ASN1_GEN_FORMAT_ASCII) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_NOT_ASCII_FORMAT); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_NOT_ASCII_FORMAT); goto bad_form; } vtmp.name = NULL; @@ -676,7 +679,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) vtmp.value = (char *)str; if (!X509V3_get_value_bool(&vtmp, &atmp->value.boolean)) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_ILLEGAL_BOOLEAN); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_ILLEGAL_BOOLEAN); goto bad_str; } break; @@ -685,12 +688,12 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) case V_ASN1_ENUMERATED: if (format != ASN1_GEN_FORMAT_ASCII) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_INTEGER_NOT_ASCII_FORMAT); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_INTEGER_NOT_ASCII_FORMAT); goto bad_form; } if (!(atmp->value.integer = s2i_ASN1_INTEGER(NULL, (char *)str))) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_ILLEGAL_INTEGER); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_ILLEGAL_INTEGER); goto bad_str; } break; @@ -698,12 +701,12 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) case V_ASN1_OBJECT: if (format != ASN1_GEN_FORMAT_ASCII) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_OBJECT_NOT_ASCII_FORMAT); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_OBJECT_NOT_ASCII_FORMAT); goto bad_form; } if (!(atmp->value.object = OBJ_txt2obj(str, 0))) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_ILLEGAL_OBJECT); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_ILLEGAL_OBJECT); goto bad_str; } break; @@ -712,23 +715,23 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) case V_ASN1_GENERALIZEDTIME: if (format != ASN1_GEN_FORMAT_ASCII) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_TIME_NOT_ASCII_FORMAT); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_TIME_NOT_ASCII_FORMAT); goto bad_form; } if (!(atmp->value.asn1_string = ASN1_STRING_new())) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ERR_R_MALLOC_FAILURE); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ERR_R_MALLOC_FAILURE); goto bad_str; } if (!ASN1_STRING_set(atmp->value.asn1_string, str, -1)) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ERR_R_MALLOC_FAILURE); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ERR_R_MALLOC_FAILURE); goto bad_str; } atmp->value.asn1_string->type = utype; if (!ASN1_TIME_check(atmp->value.asn1_string)) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_ILLEGAL_TIME_VALUE); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_ILLEGAL_TIME_VALUE); goto bad_str; } @@ -750,7 +753,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) format = MBSTRING_UTF8; else { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_ILLEGAL_FORMAT); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_ILLEGAL_FORMAT); goto bad_form; } @@ -758,7 +761,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) if (ASN1_mbstring_copy(&atmp->value.asn1_string, (unsigned char *)str, -1, format, ASN1_tag2bit(utype)) <= 0) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ERR_R_MALLOC_FAILURE); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ERR_R_MALLOC_FAILURE); goto bad_str; } @@ -771,7 +774,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) if (!(atmp->value.asn1_string = ASN1_STRING_new())) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ERR_R_MALLOC_FAILURE); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ERR_R_MALLOC_FAILURE); goto bad_form; } @@ -780,7 +783,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) if (!(rdata = string_to_hex((char *)str, &rdlen))) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_ILLEGAL_HEX); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_ILLEGAL_HEX); goto bad_str; } @@ -795,7 +798,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) { if (!CONF_parse_list(str, ',', 1, bitstr_cb, atmp->value.bit_string)) { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_LIST_ERROR); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_LIST_ERROR); goto bad_str; } no_unused = 0; @@ -803,7 +806,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) } else { - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_ILLEGAL_BITSTRING_FORMAT); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_ILLEGAL_BITSTRING_FORMAT); goto bad_form; } @@ -819,7 +822,7 @@ static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype) break; default: - OPENSSL_PUT_ERROR(X509, asn1_str2type, ASN1_R_UNSUPPORTED_TYPE); + OPENSSL_PUT_ERROR(ASN1, asn1_str2type, ASN1_R_UNSUPPORTED_TYPE); goto bad_str; break; } @@ -849,12 +852,12 @@ static int bitstr_cb(const char *elem, int len, void *bitstr) return 0; if (bitnum < 0) { - OPENSSL_PUT_ERROR(X509, bitstr_cb, ASN1_R_INVALID_NUMBER); + OPENSSL_PUT_ERROR(ASN1, bitstr_cb, ASN1_R_INVALID_NUMBER); return 0; } if (!ASN1_BIT_STRING_set_bit(bitstr, bitnum, 1)) { - OPENSSL_PUT_ERROR(X509, bitstr_cb, ERR_R_MALLOC_FAILURE); + OPENSSL_PUT_ERROR(ASN1, bitstr_cb, ERR_R_MALLOC_FAILURE); return 0; } return 1; diff --git a/crypto/x509/i2d_pr.c b/crypto/x509/i2d_pr.c index 88965657..443ca53f 100644 --- a/crypto/x509/i2d_pr.c +++ b/crypto/x509/i2d_pr.c @@ -57,8 +57,7 @@ #include -#include - +#include #include #include @@ -77,7 +76,9 @@ int i2d_PrivateKey(const EVP_PKEY *a, unsigned char **pp) PKCS8_PRIV_KEY_INFO_free(p8); return ret; } - OPENSSL_PUT_ERROR(X509, i2d_PrivateKey, ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE); + /* Although this file is in crypto/x509 for layering reasons, it emits + * an error code from ASN1 for OpenSSL compatibility. */ + OPENSSL_PUT_ERROR(ASN1, i2d_PrivateKey, ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE); return -1; } diff --git a/include/openssl/asn1.h b/include/openssl/asn1.h index 941b156f..100cec8c 100644 --- a/include/openssl/asn1.h +++ b/include/openssl/asn1.h @@ -1139,6 +1139,13 @@ OPENSSL_EXPORT int BIO_asn1_get_suffix(BIO *b, asn1_ps_func **psuffix, asn1_ps_f #define ASN1_F_ASN1_get_object 158 #define ASN1_F_d2i_ASN1_bytes 159 #define ASN1_F_a2i_ASN1_ENUMERATED 160 +#define ASN1_F_ASN1_generate_v3 161 +#define ASN1_F_append_exp 162 +#define ASN1_F_asn1_cb 163 +#define ASN1_F_asn1_str2type 164 +#define ASN1_F_bitstr_cb 165 +#define ASN1_F_i2d_PrivateKey 166 +#define ASN1_F_parse_tagging 167 #define ASN1_R_ASN1_SIG_PARSE_ERROR 100 #define ASN1_R_ADDING_OBJECT 101 #define ASN1_R_MIME_NO_CONTENT_TYPE 102 diff --git a/util/make_errors.go b/util/make_errors.go index d1e5438d..48d9ad4f 100644 --- a/util/make_errors.go +++ b/util/make_errors.go @@ -366,8 +366,7 @@ func addFunctionsAndReasons(functions, reasons map[string]int, filename, prefix } defer file.Close() - prefix += "_" - reasonPrefix := prefix + "R_" + reasonPrefix := prefix + "_R_" var currentFunction string scanner := bufio.NewScanner(file) @@ -394,8 +393,9 @@ func addFunctionsAndReasons(functions, reasons map[string]int, filename, prefix } } - if strings.Contains(line, "OPENSSL_PUT_ERROR(") { - functionToken := prefix + "F_" + currentFunction + // Do not include cross-module error lines. + if strings.Contains(line, "OPENSSL_PUT_ERROR(" + prefix + ",") { + functionToken := prefix + "_F_" + currentFunction if _, ok := functions[functionToken]; !ok { functions[functionToken] = -1 } @@ -405,7 +405,7 @@ func addFunctionsAndReasons(functions, reasons map[string]int, filename, prefix handleDeclareMacro(line, "_F_", "OPENSSL_DECLARE_ERROR_FUNCTION(", functions) for len(line) > 0 { - i := strings.Index(line, prefix) + i := strings.Index(line, prefix + "_") if i == -1 { break }