diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/libcrypto/Symbols.list | 39 | ||||
| -rw-r--r-- | src/lib/libcrypto/Symbols.namespace | 34 | ||||
| -rw-r--r-- | src/lib/libcrypto/evp/evp_pbe.c | 6 | ||||
| -rw-r--r-- | src/lib/libcrypto/hidden/openssl/pkcs12.h | 37 | ||||
| -rw-r--r-- | src/lib/libcrypto/pkcs12/p12_add.c | 6 | ||||
| -rw-r--r-- | src/lib/libcrypto/pkcs12/p12_asn.c | 10 | ||||
| -rw-r--r-- | src/lib/libcrypto/pkcs12/p12_decr.c | 7 | ||||
| -rw-r--r-- | src/lib/libcrypto/pkcs12/p12_key.c | 5 | ||||
| -rw-r--r-- | src/lib/libcrypto/pkcs12/p12_mutl.c | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/pkcs12/p12_p8d.c | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/pkcs12/p12_p8e.c | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/pkcs12/pkcs12.h | 71 | ||||
| -rw-r--r-- | src/lib/libcrypto/pkcs12/pkcs12_local.h | 75 |
13 files changed, 94 insertions, 205 deletions
diff --git a/src/lib/libcrypto/Symbols.list b/src/lib/libcrypto/Symbols.list index 84a38a342d..88c618de26 100644 --- a/src/lib/libcrypto/Symbols.list +++ b/src/lib/libcrypto/Symbols.list | |||
| @@ -1930,21 +1930,7 @@ PEM_write_bio_X509_AUX | |||
| 1930 | PEM_write_bio_X509_CRL | 1930 | PEM_write_bio_X509_CRL |
| 1931 | PEM_write_bio_X509_REQ | 1931 | PEM_write_bio_X509_REQ |
| 1932 | PEM_write_bio_X509_REQ_NEW | 1932 | PEM_write_bio_X509_REQ_NEW |
| 1933 | PKCS12_AUTHSAFES_it | ||
| 1934 | PKCS12_BAGS_free | ||
| 1935 | PKCS12_BAGS_it | ||
| 1936 | PKCS12_BAGS_new | ||
| 1937 | PKCS12_MAC_DATA_free | ||
| 1938 | PKCS12_MAC_DATA_it | ||
| 1939 | PKCS12_MAC_DATA_new | ||
| 1940 | PKCS12_PBE_add | 1933 | PKCS12_PBE_add |
| 1941 | PKCS12_PBE_keyivgen | ||
| 1942 | PKCS12_SAFEBAGS_it | ||
| 1943 | PKCS12_SAFEBAG_create0_p8inf | ||
| 1944 | PKCS12_SAFEBAG_create0_pkcs8 | ||
| 1945 | PKCS12_SAFEBAG_create_cert | ||
| 1946 | PKCS12_SAFEBAG_create_crl | ||
| 1947 | PKCS12_SAFEBAG_create_pkcs8_encrypt | ||
| 1948 | PKCS12_SAFEBAG_free | 1934 | PKCS12_SAFEBAG_free |
| 1949 | PKCS12_SAFEBAG_get0_attr | 1935 | PKCS12_SAFEBAG_get0_attr |
| 1950 | PKCS12_SAFEBAG_get0_attrs | 1936 | PKCS12_SAFEBAG_get0_attrs |
| @@ -1958,38 +1944,17 @@ PKCS12_SAFEBAG_get_bag_nid | |||
| 1958 | PKCS12_SAFEBAG_get_nid | 1944 | PKCS12_SAFEBAG_get_nid |
| 1959 | PKCS12_SAFEBAG_it | 1945 | PKCS12_SAFEBAG_it |
| 1960 | PKCS12_SAFEBAG_new | 1946 | PKCS12_SAFEBAG_new |
| 1961 | PKCS12_add_CSPName_asc | ||
| 1962 | PKCS12_add_cert | ||
| 1963 | PKCS12_add_friendlyname_asc | ||
| 1964 | PKCS12_add_friendlyname_uni | ||
| 1965 | PKCS12_add_key | ||
| 1966 | PKCS12_add_localkeyid | ||
| 1967 | PKCS12_add_safe | ||
| 1968 | PKCS12_add_safes | ||
| 1969 | PKCS12_create | 1947 | PKCS12_create |
| 1970 | PKCS12_decrypt_skey | 1948 | PKCS12_decrypt_skey |
| 1971 | PKCS12_free | 1949 | PKCS12_free |
| 1972 | PKCS12_gen_mac | ||
| 1973 | PKCS12_get0_mac | 1950 | PKCS12_get0_mac |
| 1974 | PKCS12_get_attr_gen | ||
| 1975 | PKCS12_get_friendlyname | 1951 | PKCS12_get_friendlyname |
| 1976 | PKCS12_init | ||
| 1977 | PKCS12_it | 1952 | PKCS12_it |
| 1978 | PKCS12_item_decrypt_d2i | ||
| 1979 | PKCS12_item_i2d_encrypt | ||
| 1980 | PKCS12_item_pack_safebag | ||
| 1981 | PKCS12_key_gen_asc | ||
| 1982 | PKCS12_key_gen_uni | ||
| 1983 | PKCS12_mac_present | 1953 | PKCS12_mac_present |
| 1984 | PKCS12_new | 1954 | PKCS12_new |
| 1985 | PKCS12_newpass | 1955 | PKCS12_newpass |
| 1986 | PKCS12_pack_authsafes | ||
| 1987 | PKCS12_pack_p7data | ||
| 1988 | PKCS12_pack_p7encdata | ||
| 1989 | PKCS12_parse | 1956 | PKCS12_parse |
| 1990 | PKCS12_pbe_crypt | ||
| 1991 | PKCS12_set_mac | 1957 | PKCS12_set_mac |
| 1992 | PKCS12_setup_mac | ||
| 1993 | PKCS12_unpack_authsafes | 1958 | PKCS12_unpack_authsafes |
| 1994 | PKCS12_unpack_p7data | 1959 | PKCS12_unpack_p7data |
| 1995 | PKCS12_unpack_p7encdata | 1960 | PKCS12_unpack_p7encdata |
| @@ -3221,8 +3186,6 @@ d2i_PBE2PARAM | |||
| 3221 | d2i_PBEPARAM | 3186 | d2i_PBEPARAM |
| 3222 | d2i_PBKDF2PARAM | 3187 | d2i_PBKDF2PARAM |
| 3223 | d2i_PKCS12 | 3188 | d2i_PKCS12 |
| 3224 | d2i_PKCS12_BAGS | ||
| 3225 | d2i_PKCS12_MAC_DATA | ||
| 3226 | d2i_PKCS12_SAFEBAG | 3189 | d2i_PKCS12_SAFEBAG |
| 3227 | d2i_PKCS12_bio | 3190 | d2i_PKCS12_bio |
| 3228 | d2i_PKCS12_fp | 3191 | d2i_PKCS12_fp |
| @@ -3418,8 +3381,6 @@ i2d_PBE2PARAM | |||
| 3418 | i2d_PBEPARAM | 3381 | i2d_PBEPARAM |
| 3419 | i2d_PBKDF2PARAM | 3382 | i2d_PBKDF2PARAM |
| 3420 | i2d_PKCS12 | 3383 | i2d_PKCS12 |
| 3421 | i2d_PKCS12_BAGS | ||
| 3422 | i2d_PKCS12_MAC_DATA | ||
| 3423 | i2d_PKCS12_SAFEBAG | 3384 | i2d_PKCS12_SAFEBAG |
| 3424 | i2d_PKCS12_bio | 3385 | i2d_PKCS12_bio |
| 3425 | i2d_PKCS12_fp | 3386 | i2d_PKCS12_fp |
diff --git a/src/lib/libcrypto/Symbols.namespace b/src/lib/libcrypto/Symbols.namespace index d63bb91c12..a540b31048 100644 --- a/src/lib/libcrypto/Symbols.namespace +++ b/src/lib/libcrypto/Symbols.namespace | |||
| @@ -136,40 +136,18 @@ _libre_PKCS12_SAFEBAG_get1_crl | |||
| 136 | _libre_PKCS8_get_attr | 136 | _libre_PKCS8_get_attr |
| 137 | _libre_PKCS12_mac_present | 137 | _libre_PKCS12_mac_present |
| 138 | _libre_PKCS12_get0_mac | 138 | _libre_PKCS12_get0_mac |
| 139 | _libre_PKCS12_SAFEBAG_create_cert | ||
| 140 | _libre_PKCS12_SAFEBAG_create_crl | ||
| 141 | _libre_PKCS12_SAFEBAG_create0_p8inf | ||
| 142 | _libre_PKCS12_SAFEBAG_create0_pkcs8 | ||
| 143 | _libre_PKCS12_SAFEBAG_create_pkcs8_encrypt | ||
| 144 | _libre_PKCS12_SAFEBAG_get0_p8inf | 139 | _libre_PKCS12_SAFEBAG_get0_p8inf |
| 145 | _libre_PKCS12_SAFEBAG_get0_pkcs8 | 140 | _libre_PKCS12_SAFEBAG_get0_pkcs8 |
| 146 | _libre_PKCS12_SAFEBAG_get0_safes | 141 | _libre_PKCS12_SAFEBAG_get0_safes |
| 147 | _libre_PKCS12_SAFEBAG_get0_type | 142 | _libre_PKCS12_SAFEBAG_get0_type |
| 148 | _libre_PKCS12_item_pack_safebag | ||
| 149 | _libre_PKCS8_decrypt | 143 | _libre_PKCS8_decrypt |
| 150 | _libre_PKCS12_decrypt_skey | 144 | _libre_PKCS12_decrypt_skey |
| 151 | _libre_PKCS8_encrypt | 145 | _libre_PKCS8_encrypt |
| 152 | _libre_PKCS12_pack_p7data | ||
| 153 | _libre_PKCS12_unpack_p7data | 146 | _libre_PKCS12_unpack_p7data |
| 154 | _libre_PKCS12_pack_p7encdata | ||
| 155 | _libre_PKCS12_unpack_p7encdata | 147 | _libre_PKCS12_unpack_p7encdata |
| 156 | _libre_PKCS12_pack_authsafes | ||
| 157 | _libre_PKCS12_unpack_authsafes | 148 | _libre_PKCS12_unpack_authsafes |
| 158 | _libre_PKCS12_add_localkeyid | ||
| 159 | _libre_PKCS12_add_friendlyname_asc | ||
| 160 | _libre_PKCS12_add_CSPName_asc | ||
| 161 | _libre_PKCS12_add_friendlyname_uni | ||
| 162 | _libre_PKCS8_add_keyusage | 149 | _libre_PKCS8_add_keyusage |
| 163 | _libre_PKCS12_get_attr_gen | ||
| 164 | _libre_PKCS12_get_friendlyname | 150 | _libre_PKCS12_get_friendlyname |
| 165 | _libre_PKCS12_pbe_crypt | ||
| 166 | _libre_PKCS12_item_decrypt_d2i | ||
| 167 | _libre_PKCS12_item_i2d_encrypt | ||
| 168 | _libre_PKCS12_init | ||
| 169 | _libre_PKCS12_key_gen_asc | ||
| 170 | _libre_PKCS12_key_gen_uni | ||
| 171 | _libre_PKCS12_PBE_keyivgen | ||
| 172 | _libre_PKCS12_gen_mac | ||
| 173 | _libre_PKCS12_verify_mac | 151 | _libre_PKCS12_verify_mac |
| 174 | _libre_PKCS12_set_mac | 152 | _libre_PKCS12_set_mac |
| 175 | _libre_PKCS12_setup_mac | 153 | _libre_PKCS12_setup_mac |
| @@ -179,25 +157,13 @@ _libre_PKCS12_new | |||
| 179 | _libre_PKCS12_free | 157 | _libre_PKCS12_free |
| 180 | _libre_d2i_PKCS12 | 158 | _libre_d2i_PKCS12 |
| 181 | _libre_i2d_PKCS12 | 159 | _libre_i2d_PKCS12 |
| 182 | _libre_PKCS12_MAC_DATA_new | ||
| 183 | _libre_PKCS12_MAC_DATA_free | ||
| 184 | _libre_d2i_PKCS12_MAC_DATA | ||
| 185 | _libre_i2d_PKCS12_MAC_DATA | ||
| 186 | _libre_PKCS12_SAFEBAG_new | 160 | _libre_PKCS12_SAFEBAG_new |
| 187 | _libre_PKCS12_SAFEBAG_free | 161 | _libre_PKCS12_SAFEBAG_free |
| 188 | _libre_d2i_PKCS12_SAFEBAG | 162 | _libre_d2i_PKCS12_SAFEBAG |
| 189 | _libre_i2d_PKCS12_SAFEBAG | 163 | _libre_i2d_PKCS12_SAFEBAG |
| 190 | _libre_PKCS12_BAGS_new | ||
| 191 | _libre_PKCS12_BAGS_free | ||
| 192 | _libre_d2i_PKCS12_BAGS | ||
| 193 | _libre_i2d_PKCS12_BAGS | ||
| 194 | _libre_PKCS12_PBE_add | 164 | _libre_PKCS12_PBE_add |
| 195 | _libre_PKCS12_parse | 165 | _libre_PKCS12_parse |
| 196 | _libre_PKCS12_create | 166 | _libre_PKCS12_create |
| 197 | _libre_PKCS12_add_cert | ||
| 198 | _libre_PKCS12_add_key | ||
| 199 | _libre_PKCS12_add_safe | ||
| 200 | _libre_PKCS12_add_safes | ||
| 201 | _libre_i2d_PKCS12_bio | 167 | _libre_i2d_PKCS12_bio |
| 202 | _libre_i2d_PKCS12_fp | 168 | _libre_i2d_PKCS12_fp |
| 203 | _libre_d2i_PKCS12_bio | 169 | _libre_d2i_PKCS12_bio |
diff --git a/src/lib/libcrypto/evp/evp_pbe.c b/src/lib/libcrypto/evp/evp_pbe.c index e33f2cb08f..3f1f1ec9a4 100644 --- a/src/lib/libcrypto/evp/evp_pbe.c +++ b/src/lib/libcrypto/evp/evp_pbe.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: evp_pbe.c,v 1.43 2024/03/02 10:06:48 tb Exp $ */ | 1 | /* $OpenBSD: evp_pbe.c,v 1.44 2024/03/02 10:15:15 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 1999. | 3 | * project 1999. |
| 4 | */ | 4 | */ |
| @@ -69,8 +69,12 @@ | |||
| 69 | 69 | ||
| 70 | #include "evp_local.h" | 70 | #include "evp_local.h" |
| 71 | #include "hmac_local.h" | 71 | #include "hmac_local.h" |
| 72 | #include "pkcs12_local.h" | ||
| 72 | 73 | ||
| 73 | /* Password based encryption (PBE) functions */ | 74 | /* Password based encryption (PBE) functions */ |
| 75 | int PKCS12_PBE_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, int passlen, | ||
| 76 | ASN1_TYPE *param, const EVP_CIPHER *cipher, const EVP_MD *md_type, | ||
| 77 | int en_de); | ||
| 74 | 78 | ||
| 75 | static const struct pbe_config { | 79 | static const struct pbe_config { |
| 76 | int pbe_nid; | 80 | int pbe_nid; |
diff --git a/src/lib/libcrypto/hidden/openssl/pkcs12.h b/src/lib/libcrypto/hidden/openssl/pkcs12.h index 9a2dffa354..4c37e73cc4 100644 --- a/src/lib/libcrypto/hidden/openssl/pkcs12.h +++ b/src/lib/libcrypto/hidden/openssl/pkcs12.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: pkcs12.h,v 1.2 2023/07/05 21:14:54 bcook Exp $ */ | 1 | /* $OpenBSD: pkcs12.h,v 1.3 2024/03/02 10:15:16 tb Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2022 Bob Beck <beck@openbsd.org> | 3 | * Copyright (c) 2022 Bob Beck <beck@openbsd.org> |
| 4 | * | 4 | * |
| @@ -34,68 +34,33 @@ LCRYPTO_USED(PKCS12_SAFEBAG_get1_crl); | |||
| 34 | LCRYPTO_USED(PKCS8_get_attr); | 34 | LCRYPTO_USED(PKCS8_get_attr); |
| 35 | LCRYPTO_USED(PKCS12_mac_present); | 35 | LCRYPTO_USED(PKCS12_mac_present); |
| 36 | LCRYPTO_USED(PKCS12_get0_mac); | 36 | LCRYPTO_USED(PKCS12_get0_mac); |
| 37 | LCRYPTO_USED(PKCS12_SAFEBAG_create_cert); | ||
| 38 | LCRYPTO_USED(PKCS12_SAFEBAG_create_crl); | ||
| 39 | LCRYPTO_USED(PKCS12_SAFEBAG_create0_p8inf); | ||
| 40 | LCRYPTO_USED(PKCS12_SAFEBAG_create0_pkcs8); | ||
| 41 | LCRYPTO_USED(PKCS12_SAFEBAG_create_pkcs8_encrypt); | ||
| 42 | LCRYPTO_USED(PKCS12_SAFEBAG_get0_p8inf); | 37 | LCRYPTO_USED(PKCS12_SAFEBAG_get0_p8inf); |
| 43 | LCRYPTO_USED(PKCS12_SAFEBAG_get0_pkcs8); | 38 | LCRYPTO_USED(PKCS12_SAFEBAG_get0_pkcs8); |
| 44 | LCRYPTO_USED(PKCS12_SAFEBAG_get0_safes); | 39 | LCRYPTO_USED(PKCS12_SAFEBAG_get0_safes); |
| 45 | LCRYPTO_USED(PKCS12_SAFEBAG_get0_type); | 40 | LCRYPTO_USED(PKCS12_SAFEBAG_get0_type); |
| 46 | LCRYPTO_USED(PKCS12_item_pack_safebag); | ||
| 47 | LCRYPTO_USED(PKCS8_decrypt); | 41 | LCRYPTO_USED(PKCS8_decrypt); |
| 48 | LCRYPTO_USED(PKCS12_decrypt_skey); | 42 | LCRYPTO_USED(PKCS12_decrypt_skey); |
| 49 | LCRYPTO_USED(PKCS8_encrypt); | 43 | LCRYPTO_USED(PKCS8_encrypt); |
| 50 | LCRYPTO_USED(PKCS12_pack_p7data); | ||
| 51 | LCRYPTO_USED(PKCS12_unpack_p7data); | 44 | LCRYPTO_USED(PKCS12_unpack_p7data); |
| 52 | LCRYPTO_USED(PKCS12_pack_p7encdata); | ||
| 53 | LCRYPTO_USED(PKCS12_unpack_p7encdata); | 45 | LCRYPTO_USED(PKCS12_unpack_p7encdata); |
| 54 | LCRYPTO_USED(PKCS12_pack_authsafes); | ||
| 55 | LCRYPTO_USED(PKCS12_unpack_authsafes); | 46 | LCRYPTO_USED(PKCS12_unpack_authsafes); |
| 56 | LCRYPTO_USED(PKCS12_add_localkeyid); | ||
| 57 | LCRYPTO_USED(PKCS12_add_friendlyname_asc); | ||
| 58 | LCRYPTO_USED(PKCS12_add_CSPName_asc); | ||
| 59 | LCRYPTO_USED(PKCS12_add_friendlyname_uni); | ||
| 60 | LCRYPTO_USED(PKCS8_add_keyusage); | 47 | LCRYPTO_USED(PKCS8_add_keyusage); |
| 61 | LCRYPTO_USED(PKCS12_get_attr_gen); | ||
| 62 | LCRYPTO_USED(PKCS12_get_friendlyname); | 48 | LCRYPTO_USED(PKCS12_get_friendlyname); |
| 63 | LCRYPTO_USED(PKCS12_pbe_crypt); | ||
| 64 | LCRYPTO_USED(PKCS12_item_decrypt_d2i); | ||
| 65 | LCRYPTO_USED(PKCS12_item_i2d_encrypt); | ||
| 66 | LCRYPTO_USED(PKCS12_init); | ||
| 67 | LCRYPTO_USED(PKCS12_key_gen_asc); | ||
| 68 | LCRYPTO_USED(PKCS12_key_gen_uni); | ||
| 69 | LCRYPTO_USED(PKCS12_PBE_keyivgen); | ||
| 70 | LCRYPTO_USED(PKCS12_gen_mac); | ||
| 71 | LCRYPTO_USED(PKCS12_verify_mac); | 49 | LCRYPTO_USED(PKCS12_verify_mac); |
| 72 | LCRYPTO_USED(PKCS12_set_mac); | 50 | LCRYPTO_USED(PKCS12_set_mac); |
| 73 | LCRYPTO_USED(PKCS12_setup_mac); | ||
| 74 | LCRYPTO_USED(OPENSSL_asc2uni); | 51 | LCRYPTO_USED(OPENSSL_asc2uni); |
| 75 | LCRYPTO_USED(OPENSSL_uni2asc); | 52 | LCRYPTO_USED(OPENSSL_uni2asc); |
| 76 | LCRYPTO_USED(PKCS12_new); | 53 | LCRYPTO_USED(PKCS12_new); |
| 77 | LCRYPTO_USED(PKCS12_free); | 54 | LCRYPTO_USED(PKCS12_free); |
| 78 | LCRYPTO_USED(d2i_PKCS12); | 55 | LCRYPTO_USED(d2i_PKCS12); |
| 79 | LCRYPTO_USED(i2d_PKCS12); | 56 | LCRYPTO_USED(i2d_PKCS12); |
| 80 | LCRYPTO_USED(PKCS12_MAC_DATA_new); | ||
| 81 | LCRYPTO_USED(PKCS12_MAC_DATA_free); | ||
| 82 | LCRYPTO_USED(d2i_PKCS12_MAC_DATA); | ||
| 83 | LCRYPTO_USED(i2d_PKCS12_MAC_DATA); | ||
| 84 | LCRYPTO_USED(PKCS12_SAFEBAG_new); | 57 | LCRYPTO_USED(PKCS12_SAFEBAG_new); |
| 85 | LCRYPTO_USED(PKCS12_SAFEBAG_free); | 58 | LCRYPTO_USED(PKCS12_SAFEBAG_free); |
| 86 | LCRYPTO_USED(d2i_PKCS12_SAFEBAG); | 59 | LCRYPTO_USED(d2i_PKCS12_SAFEBAG); |
| 87 | LCRYPTO_USED(i2d_PKCS12_SAFEBAG); | 60 | LCRYPTO_USED(i2d_PKCS12_SAFEBAG); |
| 88 | LCRYPTO_USED(PKCS12_BAGS_new); | ||
| 89 | LCRYPTO_USED(PKCS12_BAGS_free); | ||
| 90 | LCRYPTO_USED(d2i_PKCS12_BAGS); | ||
| 91 | LCRYPTO_USED(i2d_PKCS12_BAGS); | ||
| 92 | LCRYPTO_USED(PKCS12_PBE_add); | 61 | LCRYPTO_USED(PKCS12_PBE_add); |
| 93 | LCRYPTO_USED(PKCS12_parse); | 62 | LCRYPTO_USED(PKCS12_parse); |
| 94 | LCRYPTO_USED(PKCS12_create); | 63 | LCRYPTO_USED(PKCS12_create); |
| 95 | LCRYPTO_USED(PKCS12_add_cert); | ||
| 96 | LCRYPTO_USED(PKCS12_add_key); | ||
| 97 | LCRYPTO_USED(PKCS12_add_safe); | ||
| 98 | LCRYPTO_USED(PKCS12_add_safes); | ||
| 99 | LCRYPTO_USED(i2d_PKCS12_bio); | 64 | LCRYPTO_USED(i2d_PKCS12_bio); |
| 100 | LCRYPTO_USED(i2d_PKCS12_fp); | 65 | LCRYPTO_USED(i2d_PKCS12_fp); |
| 101 | LCRYPTO_USED(d2i_PKCS12_bio); | 66 | LCRYPTO_USED(d2i_PKCS12_bio); |
diff --git a/src/lib/libcrypto/pkcs12/p12_add.c b/src/lib/libcrypto/pkcs12/p12_add.c index 8ce1fede74..dd72c99985 100644 --- a/src/lib/libcrypto/pkcs12/p12_add.c +++ b/src/lib/libcrypto/pkcs12/p12_add.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: p12_add.c,v 1.23 2024/01/25 13:44:08 tb Exp $ */ | 1 | /* $OpenBSD: p12_add.c,v 1.24 2024/03/02 10:15:16 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 1999. | 3 | * project 1999. |
| 4 | */ | 4 | */ |
| @@ -90,7 +90,6 @@ PKCS12_item_pack_safebag(void *obj, const ASN1_ITEM *it, int nid1, int nid2) | |||
| 90 | safebag->type = OBJ_nid2obj(nid2); | 90 | safebag->type = OBJ_nid2obj(nid2); |
| 91 | return safebag; | 91 | return safebag; |
| 92 | } | 92 | } |
| 93 | LCRYPTO_ALIAS(PKCS12_item_pack_safebag); | ||
| 94 | 93 | ||
| 95 | /* Turn a stack of SAFEBAGS into a PKCS#7 data Contentinfo */ | 94 | /* Turn a stack of SAFEBAGS into a PKCS#7 data Contentinfo */ |
| 96 | PKCS7 * | 95 | PKCS7 * |
| @@ -118,7 +117,6 @@ err: | |||
| 118 | PKCS7_free(p7); | 117 | PKCS7_free(p7); |
| 119 | return NULL; | 118 | return NULL; |
| 120 | } | 119 | } |
| 121 | LCRYPTO_ALIAS(PKCS12_pack_p7data); | ||
| 122 | 120 | ||
| 123 | /* Unpack SAFEBAGS from PKCS#7 data ContentInfo */ | 121 | /* Unpack SAFEBAGS from PKCS#7 data ContentInfo */ |
| 124 | STACK_OF(PKCS12_SAFEBAG) * | 122 | STACK_OF(PKCS12_SAFEBAG) * |
| @@ -181,7 +179,6 @@ err: | |||
| 181 | PKCS7_free(p7); | 179 | PKCS7_free(p7); |
| 182 | return NULL; | 180 | return NULL; |
| 183 | } | 181 | } |
| 184 | LCRYPTO_ALIAS(PKCS12_pack_p7encdata); | ||
| 185 | 182 | ||
| 186 | STACK_OF(PKCS12_SAFEBAG) * | 183 | STACK_OF(PKCS12_SAFEBAG) * |
| 187 | PKCS12_unpack_p7encdata(PKCS7 *p7, const char *pass, int passlen) | 184 | PKCS12_unpack_p7encdata(PKCS7 *p7, const char *pass, int passlen) |
| @@ -214,7 +211,6 @@ PKCS12_pack_authsafes(PKCS12 *p12, STACK_OF(PKCS7) *safes) | |||
| 214 | return 1; | 211 | return 1; |
| 215 | return 0; | 212 | return 0; |
| 216 | } | 213 | } |
| 217 | LCRYPTO_ALIAS(PKCS12_pack_authsafes); | ||
| 218 | 214 | ||
| 219 | STACK_OF(PKCS7) * | 215 | STACK_OF(PKCS7) * |
| 220 | PKCS12_unpack_authsafes(const PKCS12 *p12) | 216 | PKCS12_unpack_authsafes(const PKCS12 *p12) |
diff --git a/src/lib/libcrypto/pkcs12/p12_asn.c b/src/lib/libcrypto/pkcs12/p12_asn.c index a9decccb5b..e6078050be 100644 --- a/src/lib/libcrypto/pkcs12/p12_asn.c +++ b/src/lib/libcrypto/pkcs12/p12_asn.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: p12_asn.c,v 1.14 2023/02/16 08:38:17 tb Exp $ */ | 1 | /* $OpenBSD: p12_asn.c,v 1.15 2024/03/02 10:15:16 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 1999. | 3 | * project 1999. |
| 4 | */ | 4 | */ |
| @@ -170,28 +170,24 @@ d2i_PKCS12_MAC_DATA(PKCS12_MAC_DATA **a, const unsigned char **in, long len) | |||
| 170 | return (PKCS12_MAC_DATA *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | 170 | return (PKCS12_MAC_DATA *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, |
| 171 | &PKCS12_MAC_DATA_it); | 171 | &PKCS12_MAC_DATA_it); |
| 172 | } | 172 | } |
| 173 | LCRYPTO_ALIAS(d2i_PKCS12_MAC_DATA); | ||
| 174 | 173 | ||
| 175 | int | 174 | int |
| 176 | i2d_PKCS12_MAC_DATA(PKCS12_MAC_DATA *a, unsigned char **out) | 175 | i2d_PKCS12_MAC_DATA(PKCS12_MAC_DATA *a, unsigned char **out) |
| 177 | { | 176 | { |
| 178 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &PKCS12_MAC_DATA_it); | 177 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &PKCS12_MAC_DATA_it); |
| 179 | } | 178 | } |
| 180 | LCRYPTO_ALIAS(i2d_PKCS12_MAC_DATA); | ||
| 181 | 179 | ||
| 182 | PKCS12_MAC_DATA * | 180 | PKCS12_MAC_DATA * |
| 183 | PKCS12_MAC_DATA_new(void) | 181 | PKCS12_MAC_DATA_new(void) |
| 184 | { | 182 | { |
| 185 | return (PKCS12_MAC_DATA *)ASN1_item_new(&PKCS12_MAC_DATA_it); | 183 | return (PKCS12_MAC_DATA *)ASN1_item_new(&PKCS12_MAC_DATA_it); |
| 186 | } | 184 | } |
| 187 | LCRYPTO_ALIAS(PKCS12_MAC_DATA_new); | ||
| 188 | 185 | ||
| 189 | void | 186 | void |
| 190 | PKCS12_MAC_DATA_free(PKCS12_MAC_DATA *a) | 187 | PKCS12_MAC_DATA_free(PKCS12_MAC_DATA *a) |
| 191 | { | 188 | { |
| 192 | ASN1_item_free((ASN1_VALUE *)a, &PKCS12_MAC_DATA_it); | 189 | ASN1_item_free((ASN1_VALUE *)a, &PKCS12_MAC_DATA_it); |
| 193 | } | 190 | } |
| 194 | LCRYPTO_ALIAS(PKCS12_MAC_DATA_free); | ||
| 195 | 191 | ||
| 196 | static const ASN1_TEMPLATE bag_default_tt = { | 192 | static const ASN1_TEMPLATE bag_default_tt = { |
| 197 | .flags = ASN1_TFLG_EXPLICIT, | 193 | .flags = ASN1_TFLG_EXPLICIT, |
| @@ -280,28 +276,24 @@ d2i_PKCS12_BAGS(PKCS12_BAGS **a, const unsigned char **in, long len) | |||
| 280 | return (PKCS12_BAGS *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | 276 | return (PKCS12_BAGS *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, |
| 281 | &PKCS12_BAGS_it); | 277 | &PKCS12_BAGS_it); |
| 282 | } | 278 | } |
| 283 | LCRYPTO_ALIAS(d2i_PKCS12_BAGS); | ||
| 284 | 279 | ||
| 285 | int | 280 | int |
| 286 | i2d_PKCS12_BAGS(PKCS12_BAGS *a, unsigned char **out) | 281 | i2d_PKCS12_BAGS(PKCS12_BAGS *a, unsigned char **out) |
| 287 | { | 282 | { |
| 288 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &PKCS12_BAGS_it); | 283 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &PKCS12_BAGS_it); |
| 289 | } | 284 | } |
| 290 | LCRYPTO_ALIAS(i2d_PKCS12_BAGS); | ||
| 291 | 285 | ||
| 292 | PKCS12_BAGS * | 286 | PKCS12_BAGS * |
| 293 | PKCS12_BAGS_new(void) | 287 | PKCS12_BAGS_new(void) |
| 294 | { | 288 | { |
| 295 | return (PKCS12_BAGS *)ASN1_item_new(&PKCS12_BAGS_it); | 289 | return (PKCS12_BAGS *)ASN1_item_new(&PKCS12_BAGS_it); |
| 296 | } | 290 | } |
| 297 | LCRYPTO_ALIAS(PKCS12_BAGS_new); | ||
| 298 | 291 | ||
| 299 | void | 292 | void |
| 300 | PKCS12_BAGS_free(PKCS12_BAGS *a) | 293 | PKCS12_BAGS_free(PKCS12_BAGS *a) |
| 301 | { | 294 | { |
| 302 | ASN1_item_free((ASN1_VALUE *)a, &PKCS12_BAGS_it); | 295 | ASN1_item_free((ASN1_VALUE *)a, &PKCS12_BAGS_it); |
| 303 | } | 296 | } |
| 304 | LCRYPTO_ALIAS(PKCS12_BAGS_free); | ||
| 305 | 297 | ||
| 306 | static const ASN1_TEMPLATE safebag_default_tt = { | 298 | static const ASN1_TEMPLATE safebag_default_tt = { |
| 307 | .flags = ASN1_TFLG_EXPLICIT, | 299 | .flags = ASN1_TFLG_EXPLICIT, |
diff --git a/src/lib/libcrypto/pkcs12/p12_decr.c b/src/lib/libcrypto/pkcs12/p12_decr.c index 04818acd13..907d4e52a6 100644 --- a/src/lib/libcrypto/pkcs12/p12_decr.c +++ b/src/lib/libcrypto/pkcs12/p12_decr.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: p12_decr.c,v 1.25 2024/02/18 15:44:10 tb Exp $ */ | 1 | /* $OpenBSD: p12_decr.c,v 1.26 2024/03/02 10:15:16 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 1999. | 3 | * project 1999. |
| 4 | */ | 4 | */ |
| @@ -116,7 +116,6 @@ err: | |||
| 116 | return out; | 116 | return out; |
| 117 | 117 | ||
| 118 | } | 118 | } |
| 119 | LCRYPTO_ALIAS(PKCS12_pbe_crypt); | ||
| 120 | 119 | ||
| 121 | /* Decrypt an OCTET STRING and decode ASN1 structure | 120 | /* Decrypt an OCTET STRING and decode ASN1 structure |
| 122 | * if zbuf set zero buffer after use. | 121 | * if zbuf set zero buffer after use. |
| @@ -145,7 +144,6 @@ PKCS12_item_decrypt_d2i(const X509_ALGOR *algor, const ASN1_ITEM *it, | |||
| 145 | free(out); | 144 | free(out); |
| 146 | return ret; | 145 | return ret; |
| 147 | } | 146 | } |
| 148 | LCRYPTO_ALIAS(PKCS12_item_decrypt_d2i); | ||
| 149 | 147 | ||
| 150 | /* Encode ASN1 structure and encrypt, return OCTET STRING | 148 | /* Encode ASN1 structure and encrypt, return OCTET STRING |
| 151 | * if zbuf set zero encoding. | 149 | * if zbuf set zero encoding. |
| @@ -184,6 +182,3 @@ err: | |||
| 184 | ASN1_OCTET_STRING_free(oct); | 182 | ASN1_OCTET_STRING_free(oct); |
| 185 | return NULL; | 183 | return NULL; |
| 186 | } | 184 | } |
| 187 | LCRYPTO_ALIAS(PKCS12_item_i2d_encrypt); | ||
| 188 | |||
| 189 | IMPLEMENT_PKCS12_STACK_OF(PKCS7) | ||
diff --git a/src/lib/libcrypto/pkcs12/p12_key.c b/src/lib/libcrypto/pkcs12/p12_key.c index 8812f1c06a..78e7d0450e 100644 --- a/src/lib/libcrypto/pkcs12/p12_key.c +++ b/src/lib/libcrypto/pkcs12/p12_key.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: p12_key.c,v 1.34 2023/02/16 08:38:17 tb Exp $ */ | 1 | /* $OpenBSD: p12_key.c,v 1.35 2024/03/02 10:15:16 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 1999. | 3 | * project 1999. |
| 4 | */ | 4 | */ |
| @@ -64,6 +64,7 @@ | |||
| 64 | #include <openssl/pkcs12.h> | 64 | #include <openssl/pkcs12.h> |
| 65 | 65 | ||
| 66 | #include "evp_local.h" | 66 | #include "evp_local.h" |
| 67 | #include "pkcs12_local.h" | ||
| 67 | 68 | ||
| 68 | /* PKCS12 compatible key/IV generation */ | 69 | /* PKCS12 compatible key/IV generation */ |
| 69 | #ifndef min | 70 | #ifndef min |
| @@ -93,7 +94,6 @@ PKCS12_key_gen_asc(const char *pass, int passlen, unsigned char *salt, | |||
| 93 | freezero(unipass, uniplen); | 94 | freezero(unipass, uniplen); |
| 94 | return ret; | 95 | return ret; |
| 95 | } | 96 | } |
| 96 | LCRYPTO_ALIAS(PKCS12_key_gen_asc); | ||
| 97 | 97 | ||
| 98 | int | 98 | int |
| 99 | PKCS12_key_gen_uni(unsigned char *pass, int passlen, unsigned char *salt, | 99 | PKCS12_key_gen_uni(unsigned char *pass, int passlen, unsigned char *salt, |
| @@ -194,4 +194,3 @@ PKCS12_key_gen_uni(unsigned char *pass, int passlen, unsigned char *salt, | |||
| 194 | 194 | ||
| 195 | return ret; | 195 | return ret; |
| 196 | } | 196 | } |
| 197 | LCRYPTO_ALIAS(PKCS12_key_gen_uni); | ||
diff --git a/src/lib/libcrypto/pkcs12/p12_mutl.c b/src/lib/libcrypto/pkcs12/p12_mutl.c index c71ed735ea..2a728294af 100644 --- a/src/lib/libcrypto/pkcs12/p12_mutl.c +++ b/src/lib/libcrypto/pkcs12/p12_mutl.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: p12_mutl.c,v 1.36 2024/01/25 13:44:08 tb Exp $ */ | 1 | /* $OpenBSD: p12_mutl.c,v 1.37 2024/03/02 10:15:16 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 1999. | 3 | * project 1999. |
| 4 | */ | 4 | */ |
| @@ -263,5 +263,4 @@ PKCS12_setup_mac(PKCS12 *p12, int iter, unsigned char *salt, int saltlen, | |||
| 263 | 263 | ||
| 264 | return 1; | 264 | return 1; |
| 265 | } | 265 | } |
| 266 | LCRYPTO_ALIAS(PKCS12_setup_mac); | ||
| 267 | #endif | 266 | #endif |
diff --git a/src/lib/libcrypto/pkcs12/p12_p8d.c b/src/lib/libcrypto/pkcs12/p12_p8d.c index dd5e8d9875..d4874e3b73 100644 --- a/src/lib/libcrypto/pkcs12/p12_p8d.c +++ b/src/lib/libcrypto/pkcs12/p12_p8d.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: p12_p8d.c,v 1.11 2023/02/16 08:38:17 tb Exp $ */ | 1 | /* $OpenBSD: p12_p8d.c,v 1.12 2024/03/02 10:15:16 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 2001. | 3 | * project 2001. |
| 4 | */ | 4 | */ |
| @@ -60,6 +60,7 @@ | |||
| 60 | 60 | ||
| 61 | #include <openssl/pkcs12.h> | 61 | #include <openssl/pkcs12.h> |
| 62 | 62 | ||
| 63 | #include "pkcs12_local.h" | ||
| 63 | #include "x509_local.h" | 64 | #include "x509_local.h" |
| 64 | 65 | ||
| 65 | PKCS8_PRIV_KEY_INFO * | 66 | PKCS8_PRIV_KEY_INFO * |
diff --git a/src/lib/libcrypto/pkcs12/p12_p8e.c b/src/lib/libcrypto/pkcs12/p12_p8e.c index 87c4be56a3..bf61593266 100644 --- a/src/lib/libcrypto/pkcs12/p12_p8e.c +++ b/src/lib/libcrypto/pkcs12/p12_p8e.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: p12_p8e.c,v 1.12 2023/02/16 08:38:17 tb Exp $ */ | 1 | /* $OpenBSD: p12_p8e.c,v 1.13 2024/03/02 10:15:16 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 2001. | 3 | * project 2001. |
| 4 | */ | 4 | */ |
| @@ -61,6 +61,7 @@ | |||
| 61 | #include <openssl/err.h> | 61 | #include <openssl/err.h> |
| 62 | #include <openssl/pkcs12.h> | 62 | #include <openssl/pkcs12.h> |
| 63 | 63 | ||
| 64 | #include "pkcs12_local.h" | ||
| 64 | #include "x509_local.h" | 65 | #include "x509_local.h" |
| 65 | 66 | ||
| 66 | X509_SIG * | 67 | X509_SIG * |
diff --git a/src/lib/libcrypto/pkcs12/pkcs12.h b/src/lib/libcrypto/pkcs12/pkcs12.h index 44dbb38153..962403976d 100644 --- a/src/lib/libcrypto/pkcs12/pkcs12.h +++ b/src/lib/libcrypto/pkcs12/pkcs12.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: pkcs12.h,v 1.27 2022/09/11 17:30:13 tb Exp $ */ | 1 | /* $OpenBSD: pkcs12.h,v 1.28 2024/03/02 10:15:16 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 1999. | 3 | * project 1999. |
| 4 | */ | 4 | */ |
| @@ -161,22 +161,12 @@ void PKCS12_get0_mac(const ASN1_OCTET_STRING **pmac, const X509_ALGOR **pmacalg, | |||
| 161 | const ASN1_OCTET_STRING **psalt, const ASN1_INTEGER **piter, | 161 | const ASN1_OCTET_STRING **psalt, const ASN1_INTEGER **piter, |
| 162 | const PKCS12 *p12); | 162 | const PKCS12 *p12); |
| 163 | 163 | ||
| 164 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_create_cert(X509 *x509); | ||
| 165 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_create_crl(X509_CRL *crl); | ||
| 166 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_create0_p8inf(PKCS8_PRIV_KEY_INFO *p8); | ||
| 167 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_create0_pkcs8(X509_SIG *p8); | ||
| 168 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_create_pkcs8_encrypt(int pbe_nid, | ||
| 169 | const char *pass, int passlen, unsigned char *salt, int saltlen, int iter, | ||
| 170 | PKCS8_PRIV_KEY_INFO *p8); | ||
| 171 | |||
| 172 | const PKCS8_PRIV_KEY_INFO *PKCS12_SAFEBAG_get0_p8inf(const PKCS12_SAFEBAG *bag); | 164 | const PKCS8_PRIV_KEY_INFO *PKCS12_SAFEBAG_get0_p8inf(const PKCS12_SAFEBAG *bag); |
| 173 | const X509_SIG *PKCS12_SAFEBAG_get0_pkcs8(const PKCS12_SAFEBAG *bag); | 165 | const X509_SIG *PKCS12_SAFEBAG_get0_pkcs8(const PKCS12_SAFEBAG *bag); |
| 174 | const STACK_OF(PKCS12_SAFEBAG) * | 166 | const STACK_OF(PKCS12_SAFEBAG) * |
| 175 | PKCS12_SAFEBAG_get0_safes(const PKCS12_SAFEBAG *bag); | 167 | PKCS12_SAFEBAG_get0_safes(const PKCS12_SAFEBAG *bag); |
| 176 | const ASN1_OBJECT *PKCS12_SAFEBAG_get0_type(const PKCS12_SAFEBAG *bag); | 168 | const ASN1_OBJECT *PKCS12_SAFEBAG_get0_type(const PKCS12_SAFEBAG *bag); |
| 177 | 169 | ||
| 178 | PKCS12_SAFEBAG *PKCS12_item_pack_safebag(void *obj, const ASN1_ITEM *it, | ||
| 179 | int nid1, int nid2); | ||
| 180 | PKCS8_PRIV_KEY_INFO *PKCS8_decrypt(const X509_SIG *p8, const char *pass, | 170 | PKCS8_PRIV_KEY_INFO *PKCS8_decrypt(const X509_SIG *p8, const char *pass, |
| 181 | int passlen); | 171 | int passlen); |
| 182 | PKCS8_PRIV_KEY_INFO *PKCS12_decrypt_skey(const PKCS12_SAFEBAG *bag, | 172 | PKCS8_PRIV_KEY_INFO *PKCS12_decrypt_skey(const PKCS12_SAFEBAG *bag, |
| @@ -184,53 +174,19 @@ PKCS8_PRIV_KEY_INFO *PKCS12_decrypt_skey(const PKCS12_SAFEBAG *bag, | |||
| 184 | X509_SIG *PKCS8_encrypt(int pbe_nid, const EVP_CIPHER *cipher, | 174 | X509_SIG *PKCS8_encrypt(int pbe_nid, const EVP_CIPHER *cipher, |
| 185 | const char *pass, int passlen, unsigned char *salt, int saltlen, int iter, | 175 | const char *pass, int passlen, unsigned char *salt, int saltlen, int iter, |
| 186 | PKCS8_PRIV_KEY_INFO *p8); | 176 | PKCS8_PRIV_KEY_INFO *p8); |
| 187 | PKCS7 *PKCS12_pack_p7data(STACK_OF(PKCS12_SAFEBAG) *sk); | 177 | |
| 188 | STACK_OF(PKCS12_SAFEBAG) *PKCS12_unpack_p7data(PKCS7 *p7); | 178 | STACK_OF(PKCS12_SAFEBAG) *PKCS12_unpack_p7data(PKCS7 *p7); |
| 189 | PKCS7 *PKCS12_pack_p7encdata(int pbe_nid, const char *pass, int passlen, | ||
| 190 | unsigned char *salt, int saltlen, int iter, STACK_OF(PKCS12_SAFEBAG) *bags); | ||
| 191 | STACK_OF(PKCS12_SAFEBAG) *PKCS12_unpack_p7encdata(PKCS7 *p7, const char *pass, | 179 | STACK_OF(PKCS12_SAFEBAG) *PKCS12_unpack_p7encdata(PKCS7 *p7, const char *pass, |
| 192 | int passlen); | 180 | int passlen); |
| 193 | |||
| 194 | int PKCS12_pack_authsafes(PKCS12 *p12, STACK_OF(PKCS7) *safes); | ||
| 195 | STACK_OF(PKCS7) *PKCS12_unpack_authsafes(const PKCS12 *p12); | 181 | STACK_OF(PKCS7) *PKCS12_unpack_authsafes(const PKCS12 *p12); |
| 196 | 182 | ||
| 197 | int PKCS12_add_localkeyid(PKCS12_SAFEBAG *bag, unsigned char *name, | ||
| 198 | int namelen); | ||
| 199 | int PKCS12_add_friendlyname_asc(PKCS12_SAFEBAG *bag, const char *name, | ||
| 200 | int namelen); | ||
| 201 | int PKCS12_add_CSPName_asc(PKCS12_SAFEBAG *bag, const char *name, | ||
| 202 | int namelen); | ||
| 203 | int PKCS12_add_friendlyname_uni(PKCS12_SAFEBAG *bag, const unsigned char *name, | ||
| 204 | int namelen); | ||
| 205 | int PKCS8_add_keyusage(PKCS8_PRIV_KEY_INFO *p8, int usage); | 183 | int PKCS8_add_keyusage(PKCS8_PRIV_KEY_INFO *p8, int usage); |
| 206 | ASN1_TYPE *PKCS12_get_attr_gen(const STACK_OF(X509_ATTRIBUTE) *attrs, | ||
| 207 | int attr_nid); | ||
| 208 | char *PKCS12_get_friendlyname(PKCS12_SAFEBAG *bag); | 184 | char *PKCS12_get_friendlyname(PKCS12_SAFEBAG *bag); |
| 209 | unsigned char *PKCS12_pbe_crypt(const X509_ALGOR *algor, const char *pass, | ||
| 210 | int passlen, const unsigned char *in, int inlen, unsigned char **data, | ||
| 211 | int *datalen, int en_de); | ||
| 212 | void *PKCS12_item_decrypt_d2i(const X509_ALGOR *algor, const ASN1_ITEM *it, | ||
| 213 | const char *pass, int passlen, const ASN1_OCTET_STRING *oct, int zbuf); | ||
| 214 | ASN1_OCTET_STRING *PKCS12_item_i2d_encrypt(X509_ALGOR *algor, | ||
| 215 | const ASN1_ITEM *it, const char *pass, int passlen, void *obj, int zbuf); | ||
| 216 | PKCS12 *PKCS12_init(int mode); | ||
| 217 | int PKCS12_key_gen_asc(const char *pass, int passlen, unsigned char *salt, | ||
| 218 | int saltlen, int id, int iter, int n, unsigned char *out, | ||
| 219 | const EVP_MD *md_type); | ||
| 220 | int PKCS12_key_gen_uni(unsigned char *pass, int passlen, unsigned char *salt, | ||
| 221 | int saltlen, int id, int iter, int n, unsigned char *out, | ||
| 222 | const EVP_MD *md_type); | ||
| 223 | int PKCS12_PBE_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, int passlen, | ||
| 224 | ASN1_TYPE *param, const EVP_CIPHER *cipher, const EVP_MD *md_type, | ||
| 225 | int en_de); | ||
| 226 | int PKCS12_gen_mac(PKCS12 *p12, const char *pass, int passlen, | ||
| 227 | unsigned char *mac, unsigned int *maclen); | ||
| 228 | int PKCS12_verify_mac(PKCS12 *p12, const char *pass, int passlen); | 185 | int PKCS12_verify_mac(PKCS12 *p12, const char *pass, int passlen); |
| 229 | int PKCS12_set_mac(PKCS12 *p12, const char *pass, int passlen, | 186 | int PKCS12_set_mac(PKCS12 *p12, const char *pass, int passlen, |
| 230 | unsigned char *salt, int saltlen, int iter, | 187 | unsigned char *salt, int saltlen, int iter, |
| 231 | const EVP_MD *md_type); | 188 | const EVP_MD *md_type); |
| 232 | int PKCS12_setup_mac(PKCS12 *p12, int iter, unsigned char *salt, | 189 | |
| 233 | int saltlen, const EVP_MD *md_type); | ||
| 234 | unsigned char *OPENSSL_asc2uni(const char *asc, int asclen, | 190 | unsigned char *OPENSSL_asc2uni(const char *asc, int asclen, |
| 235 | unsigned char **uni, int *unilen); | 191 | unsigned char **uni, int *unilen); |
| 236 | char *OPENSSL_uni2asc(const unsigned char *uni, int unilen); | 192 | char *OPENSSL_uni2asc(const unsigned char *uni, int unilen); |
| @@ -240,24 +196,12 @@ void PKCS12_free(PKCS12 *a); | |||
| 240 | PKCS12 *d2i_PKCS12(PKCS12 **a, const unsigned char **in, long len); | 196 | PKCS12 *d2i_PKCS12(PKCS12 **a, const unsigned char **in, long len); |
| 241 | int i2d_PKCS12(PKCS12 *a, unsigned char **out); | 197 | int i2d_PKCS12(PKCS12 *a, unsigned char **out); |
| 242 | extern const ASN1_ITEM PKCS12_it; | 198 | extern const ASN1_ITEM PKCS12_it; |
| 243 | PKCS12_MAC_DATA *PKCS12_MAC_DATA_new(void); | 199 | |
| 244 | void PKCS12_MAC_DATA_free(PKCS12_MAC_DATA *a); | ||
| 245 | PKCS12_MAC_DATA *d2i_PKCS12_MAC_DATA(PKCS12_MAC_DATA **a, const unsigned char **in, long len); | ||
| 246 | int i2d_PKCS12_MAC_DATA(PKCS12_MAC_DATA *a, unsigned char **out); | ||
| 247 | extern const ASN1_ITEM PKCS12_MAC_DATA_it; | ||
| 248 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_new(void); | 200 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_new(void); |
| 249 | void PKCS12_SAFEBAG_free(PKCS12_SAFEBAG *a); | 201 | void PKCS12_SAFEBAG_free(PKCS12_SAFEBAG *a); |
| 250 | PKCS12_SAFEBAG *d2i_PKCS12_SAFEBAG(PKCS12_SAFEBAG **a, const unsigned char **in, long len); | 202 | PKCS12_SAFEBAG *d2i_PKCS12_SAFEBAG(PKCS12_SAFEBAG **a, const unsigned char **in, long len); |
| 251 | int i2d_PKCS12_SAFEBAG(PKCS12_SAFEBAG *a, unsigned char **out); | 203 | int i2d_PKCS12_SAFEBAG(PKCS12_SAFEBAG *a, unsigned char **out); |
| 252 | extern const ASN1_ITEM PKCS12_SAFEBAG_it; | 204 | extern const ASN1_ITEM PKCS12_SAFEBAG_it; |
| 253 | PKCS12_BAGS *PKCS12_BAGS_new(void); | ||
| 254 | void PKCS12_BAGS_free(PKCS12_BAGS *a); | ||
| 255 | PKCS12_BAGS *d2i_PKCS12_BAGS(PKCS12_BAGS **a, const unsigned char **in, long len); | ||
| 256 | int i2d_PKCS12_BAGS(PKCS12_BAGS *a, unsigned char **out); | ||
| 257 | extern const ASN1_ITEM PKCS12_BAGS_it; | ||
| 258 | |||
| 259 | extern const ASN1_ITEM PKCS12_SAFEBAGS_it; | ||
| 260 | extern const ASN1_ITEM PKCS12_AUTHSAFES_it; | ||
| 261 | 205 | ||
| 262 | void PKCS12_PBE_add(void); | 206 | void PKCS12_PBE_add(void); |
| 263 | int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert, | 207 | int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert, |
| @@ -266,13 +210,6 @@ PKCS12 *PKCS12_create(const char *pass, const char *name, EVP_PKEY *pkey, | |||
| 266 | X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert, int iter, | 210 | X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert, int iter, |
| 267 | int mac_iter, int keytype); | 211 | int mac_iter, int keytype); |
| 268 | 212 | ||
| 269 | PKCS12_SAFEBAG *PKCS12_add_cert(STACK_OF(PKCS12_SAFEBAG) **pbags, X509 *cert); | ||
| 270 | PKCS12_SAFEBAG *PKCS12_add_key(STACK_OF(PKCS12_SAFEBAG) **pbags, EVP_PKEY *key, | ||
| 271 | int key_usage, int iter, int key_nid, const char *pass); | ||
| 272 | int PKCS12_add_safe(STACK_OF(PKCS7) **psafes, STACK_OF(PKCS12_SAFEBAG) *bags, | ||
| 273 | int safe_nid, int iter, const char *pass); | ||
| 274 | PKCS12 *PKCS12_add_safes(STACK_OF(PKCS7) *safes, int p7_nid); | ||
| 275 | |||
| 276 | int i2d_PKCS12_bio(BIO *bp, PKCS12 *p12); | 213 | int i2d_PKCS12_bio(BIO *bp, PKCS12 *p12); |
| 277 | int i2d_PKCS12_fp(FILE *fp, PKCS12 *p12); | 214 | int i2d_PKCS12_fp(FILE *fp, PKCS12 *p12); |
| 278 | PKCS12 *d2i_PKCS12_bio(BIO *bp, PKCS12 **p12); | 215 | PKCS12 *d2i_PKCS12_bio(BIO *bp, PKCS12 **p12); |
diff --git a/src/lib/libcrypto/pkcs12/pkcs12_local.h b/src/lib/libcrypto/pkcs12/pkcs12_local.h index 8d82d2f462..dfdcdce1f9 100644 --- a/src/lib/libcrypto/pkcs12/pkcs12_local.h +++ b/src/lib/libcrypto/pkcs12/pkcs12_local.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: pkcs12_local.h,v 1.4 2024/01/25 13:44:08 tb Exp $ */ | 1 | /* $OpenBSD: pkcs12_local.h,v 1.5 2024/03/02 10:15:16 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 1999. | 3 | * project 1999. |
| 4 | */ | 4 | */ |
| @@ -96,6 +96,79 @@ struct pkcs12_bag_st { | |||
| 96 | } value; | 96 | } value; |
| 97 | }; | 97 | }; |
| 98 | 98 | ||
| 99 | extern const ASN1_ITEM PKCS12_SAFEBAGS_it; | ||
| 100 | extern const ASN1_ITEM PKCS12_AUTHSAFES_it; | ||
| 101 | |||
| 102 | PKCS12_BAGS *PKCS12_BAGS_new(void); | ||
| 103 | void PKCS12_BAGS_free(PKCS12_BAGS *a); | ||
| 104 | PKCS12_BAGS *d2i_PKCS12_BAGS(PKCS12_BAGS **a, const unsigned char **in, long len); | ||
| 105 | int i2d_PKCS12_BAGS(PKCS12_BAGS *a, unsigned char **out); | ||
| 106 | extern const ASN1_ITEM PKCS12_BAGS_it; | ||
| 107 | |||
| 108 | PKCS12_MAC_DATA *PKCS12_MAC_DATA_new(void); | ||
| 109 | void PKCS12_MAC_DATA_free(PKCS12_MAC_DATA *a); | ||
| 110 | PKCS12_MAC_DATA *d2i_PKCS12_MAC_DATA(PKCS12_MAC_DATA **a, const unsigned char **in, long len); | ||
| 111 | int i2d_PKCS12_MAC_DATA(PKCS12_MAC_DATA *a, unsigned char **out); | ||
| 112 | extern const ASN1_ITEM PKCS12_MAC_DATA_it; | ||
| 113 | |||
| 114 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_create0_p8inf(PKCS8_PRIV_KEY_INFO *p8); | ||
| 115 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_create0_pkcs8(X509_SIG *p8); | ||
| 116 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_create_cert(X509 *x509); | ||
| 117 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_create_crl(X509_CRL *crl); | ||
| 118 | PKCS12_SAFEBAG *PKCS12_SAFEBAG_create_pkcs8_encrypt(int pbe_nid, | ||
| 119 | const char *pass, int passlen, unsigned char *salt, int saltlen, int iter, | ||
| 120 | PKCS8_PRIV_KEY_INFO *p8); | ||
| 121 | |||
| 122 | PKCS12_SAFEBAG *PKCS12_add_cert(STACK_OF(PKCS12_SAFEBAG) **pbags, X509 *cert); | ||
| 123 | PKCS12_SAFEBAG *PKCS12_add_key(STACK_OF(PKCS12_SAFEBAG) **pbags, EVP_PKEY *key, | ||
| 124 | int key_usage, int iter, int key_nid, const char *pass); | ||
| 125 | int PKCS12_add_safe(STACK_OF(PKCS7) **psafes, STACK_OF(PKCS12_SAFEBAG) *bags, | ||
| 126 | int safe_nid, int iter, const char *pass); | ||
| 127 | PKCS12 *PKCS12_add_safes(STACK_OF(PKCS7) *safes, int p7_nid); | ||
| 128 | |||
| 129 | int PKCS12_add_CSPName_asc(PKCS12_SAFEBAG *bag, const char *name, | ||
| 130 | int namelen); | ||
| 131 | int PKCS12_add_friendlyname_asc(PKCS12_SAFEBAG *bag, const char *name, | ||
| 132 | int namelen); | ||
| 133 | int PKCS12_add_friendlyname_uni(PKCS12_SAFEBAG *bag, const unsigned char *name, | ||
| 134 | int namelen); | ||
| 135 | int PKCS12_add_localkeyid(PKCS12_SAFEBAG *bag, unsigned char *name, | ||
| 136 | int namelen); | ||
| 137 | |||
| 138 | int PKCS12_gen_mac(PKCS12 *p12, const char *pass, int passlen, | ||
| 139 | unsigned char *mac, unsigned int *maclen); | ||
| 140 | |||
| 141 | ASN1_TYPE *PKCS12_get_attr_gen(const STACK_OF(X509_ATTRIBUTE) *attrs, | ||
| 142 | int attr_nid); | ||
| 143 | |||
| 144 | PKCS12 *PKCS12_init(int mode); | ||
| 145 | |||
| 146 | void *PKCS12_item_decrypt_d2i(const X509_ALGOR *algor, const ASN1_ITEM *it, | ||
| 147 | const char *pass, int passlen, const ASN1_OCTET_STRING *oct, int zbuf); | ||
| 148 | ASN1_OCTET_STRING *PKCS12_item_i2d_encrypt(X509_ALGOR *algor, | ||
| 149 | const ASN1_ITEM *it, const char *pass, int passlen, void *obj, int zbuf); | ||
| 150 | PKCS12_SAFEBAG *PKCS12_item_pack_safebag(void *obj, const ASN1_ITEM *it, | ||
| 151 | int nid1, int nid2); | ||
| 152 | |||
| 153 | int PKCS12_key_gen_asc(const char *pass, int passlen, unsigned char *salt, | ||
| 154 | int saltlen, int id, int iter, int n, unsigned char *out, | ||
| 155 | const EVP_MD *md_type); | ||
| 156 | int PKCS12_key_gen_uni(unsigned char *pass, int passlen, unsigned char *salt, | ||
| 157 | int saltlen, int id, int iter, int n, unsigned char *out, | ||
| 158 | const EVP_MD *md_type); | ||
| 159 | |||
| 160 | int PKCS12_pack_authsafes(PKCS12 *p12, STACK_OF(PKCS7) *safes); | ||
| 161 | PKCS7 *PKCS12_pack_p7data(STACK_OF(PKCS12_SAFEBAG) *sk); | ||
| 162 | PKCS7 *PKCS12_pack_p7encdata(int pbe_nid, const char *pass, int passlen, | ||
| 163 | unsigned char *salt, int saltlen, int iter, STACK_OF(PKCS12_SAFEBAG) *bags); | ||
| 164 | |||
| 165 | unsigned char *PKCS12_pbe_crypt(const X509_ALGOR *algor, const char *pass, | ||
| 166 | int passlen, const unsigned char *in, int inlen, unsigned char **data, | ||
| 167 | int *datalen, int en_de); | ||
| 168 | |||
| 169 | int PKCS12_setup_mac(PKCS12 *p12, int iter, unsigned char *salt, | ||
| 170 | int saltlen, const EVP_MD *md_type); | ||
| 171 | |||
| 99 | /* XXX - should go into pkcs7_local.h. */ | 172 | /* XXX - should go into pkcs7_local.h. */ |
| 100 | ASN1_OCTET_STRING *PKCS7_get_octet_string(PKCS7 *p7); | 173 | ASN1_OCTET_STRING *PKCS7_get_octet_string(PKCS7 *p7); |
| 101 | 174 | ||
