summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/x509/x509.h
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/x509/x509.h
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/x509/x509.h')
-rw-r--r--src/lib/libcrypto/x509/x509.h21
1 files changed, 8 insertions, 13 deletions
diff --git a/src/lib/libcrypto/x509/x509.h b/src/lib/libcrypto/x509/x509.h
index 25af8314b2..6c1f8eb6e9 100644
--- a/src/lib/libcrypto/x509/x509.h
+++ b/src/lib/libcrypto/x509/x509.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: x509.h,v 1.71 2018/08/24 19:59:32 tb Exp $ */ 1/* $OpenBSD: x509.h,v 1.72 2018/08/24 20:07:42 tb 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 *
@@ -561,19 +561,12 @@ X509_ALGOR *prf;
561 561
562/* PKCS#8 private key info structure */ 562/* PKCS#8 private key info structure */
563 563
564struct pkcs8_priv_key_info_st 564struct pkcs8_priv_key_info_st {
565 {
566 int broken; /* Flag for various broken formats */
567#define PKCS8_OK 0
568#define PKCS8_NO_OCTET 1
569#define PKCS8_EMBEDDED_PARAM 2
570#define PKCS8_NS_DB 3
571#define PKCS8_NEG_PRIVKEY 4
572 ASN1_INTEGER *version; 565 ASN1_INTEGER *version;
573 X509_ALGOR *pkeyalg; 566 X509_ALGOR *pkeyalg;
574 ASN1_TYPE *pkey; /* Should be OCTET STRING but some are broken */ 567 ASN1_OCTET_STRING *pkey;
575 STACK_OF(X509_ATTRIBUTE) *attributes; 568 STACK_OF(X509_ATTRIBUTE) *attributes;
576 }; 569};
577 570
578#ifdef __cplusplus 571#ifdef __cplusplus
579} 572}
@@ -1296,8 +1289,6 @@ extern const ASN1_ITEM PKCS8_PRIV_KEY_INFO_it;
1296 1289
1297EVP_PKEY *EVP_PKCS82PKEY(PKCS8_PRIV_KEY_INFO *p8); 1290EVP_PKEY *EVP_PKCS82PKEY(PKCS8_PRIV_KEY_INFO *p8);
1298PKCS8_PRIV_KEY_INFO *EVP_PKEY2PKCS8(EVP_PKEY *pkey); 1291PKCS8_PRIV_KEY_INFO *EVP_PKEY2PKCS8(EVP_PKEY *pkey);
1299PKCS8_PRIV_KEY_INFO *EVP_PKEY2PKCS8_broken(EVP_PKEY *pkey, int broken);
1300PKCS8_PRIV_KEY_INFO *PKCS8_set_broken(PKCS8_PRIV_KEY_INFO *p8, int broken);
1301 1292
1302int PKCS8_pkey_set0(PKCS8_PRIV_KEY_INFO *priv, ASN1_OBJECT *aobj, 1293int PKCS8_pkey_set0(PKCS8_PRIV_KEY_INFO *priv, ASN1_OBJECT *aobj,
1303 int version, int ptype, void *pval, 1294 int version, int ptype, void *pval,
@@ -1307,6 +1298,10 @@ int PKCS8_pkey_get0(ASN1_OBJECT **ppkalg,
1307 X509_ALGOR **pa, 1298 X509_ALGOR **pa,
1308 PKCS8_PRIV_KEY_INFO *p8); 1299 PKCS8_PRIV_KEY_INFO *p8);
1309 1300
1301const STACK_OF(X509_ATTRIBUTE) *PKCS8_pkey_get0_attrs(const PKCS8_PRIV_KEY_INFO *p8);
1302int PKCS8_pkey_add1_attr_by_NID(PKCS8_PRIV_KEY_INFO *p8, int nid, int type,
1303 const unsigned char *bytes, int len);
1304
1310int X509_PUBKEY_set0_param(X509_PUBKEY *pub, ASN1_OBJECT *aobj, 1305int X509_PUBKEY_set0_param(X509_PUBKEY *pub, ASN1_OBJECT *aobj,
1311 int ptype, void *pval, 1306 int ptype, void *pval,
1312 unsigned char *penc, int penclen); 1307 unsigned char *penc, int penclen);