summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/evp/evp_pkey.c
diff options
context:
space:
mode:
authortb <>2018-08-24 20:07:42 +0000
committertb <>2018-08-24 20:07:42 +0000
commit41189be79309f39d1bf45f50b75751b6ac97529c (patch)
treea927084dd419f630a1ec6130a8df811d9d3bf37f /src/lib/libcrypto/evp/evp_pkey.c
parent7e3bb11deae929ede0edfffa60cf9dc2d6be0b51 (diff)
downloadopenbsd-41189be79309f39d1bf45f50b75751b6ac97529c.tar.gz
openbsd-41189be79309f39d1bf45f50b75751b6ac97529c.tar.bz2
openbsd-41189be79309f39d1bf45f50b75751b6ac97529c.zip
Remove EVP_PKEY2PKCS8_broken() and PKCS8_set_broken()
Provide PKCS8_pkey_add1_attr_by_NID() and PKCS8_pkey_get0_attrs(). Remove the whole broken code and simplify pkcs8_priv_key_info_st accordingly. Based on OpenSSL commit 54dbf42398e23349b59f258a3dd60387bbc5ba13 plus some const that was added later. tested in a bulk build by sthen ok jsing
Diffstat (limited to 'src/lib/libcrypto/evp/evp_pkey.c')
-rw-r--r--src/lib/libcrypto/evp/evp_pkey.c32
1 files changed, 2 insertions, 30 deletions
diff --git a/src/lib/libcrypto/evp/evp_pkey.c b/src/lib/libcrypto/evp/evp_pkey.c
index 6e0d5cc3a2..aa075d6392 100644
--- a/src/lib/libcrypto/evp/evp_pkey.c
+++ b/src/lib/libcrypto/evp/evp_pkey.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: evp_pkey.c,v 1.20 2018/05/13 06:48:00 tb Exp $ */ 1/* $OpenBSD: evp_pkey.c,v 1.21 2018/08/24 20:07:41 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 */
@@ -105,16 +105,10 @@ error:
105 return NULL; 105 return NULL;
106} 106}
107 107
108PKCS8_PRIV_KEY_INFO *
109EVP_PKEY2PKCS8(EVP_PKEY *pkey)
110{
111 return EVP_PKEY2PKCS8_broken(pkey, PKCS8_OK);
112}
113
114/* Turn a private key into a PKCS8 structure */ 108/* Turn a private key into a PKCS8 structure */
115 109
116PKCS8_PRIV_KEY_INFO * 110PKCS8_PRIV_KEY_INFO *
117EVP_PKEY2PKCS8_broken(EVP_PKEY *pkey, int broken) 111EVP_PKEY2PKCS8(EVP_PKEY *pkey)
118{ 112{
119 PKCS8_PRIV_KEY_INFO *p8; 113 PKCS8_PRIV_KEY_INFO *p8;
120 114
@@ -122,7 +116,6 @@ EVP_PKEY2PKCS8_broken(EVP_PKEY *pkey, int broken)
122 EVPerror(ERR_R_MALLOC_FAILURE); 116 EVPerror(ERR_R_MALLOC_FAILURE);
123 return NULL; 117 return NULL;
124 } 118 }
125 p8->broken = broken;
126 119
127 if (pkey->ameth) { 120 if (pkey->ameth) {
128 if (pkey->ameth->priv_encode) { 121 if (pkey->ameth->priv_encode) {
@@ -145,27 +138,6 @@ error:
145 return NULL; 138 return NULL;
146} 139}
147 140
148PKCS8_PRIV_KEY_INFO *
149PKCS8_set_broken(PKCS8_PRIV_KEY_INFO *p8, int broken)
150{
151 switch (broken) {
152 case PKCS8_OK:
153 p8->broken = PKCS8_OK;
154 return p8;
155 break;
156
157 case PKCS8_NO_OCTET:
158 p8->broken = PKCS8_NO_OCTET;
159 p8->pkey->type = V_ASN1_SEQUENCE;
160 return p8;
161 break;
162
163 default:
164 EVPerror(EVP_R_PKCS8_UNKNOWN_BROKEN_TYPE);
165 return NULL;
166 }
167}
168
169/* EVP_PKEY attribute functions */ 141/* EVP_PKEY attribute functions */
170 142
171int 143int