Home | History | Annotate | Line # | Download | only in internal
      1 /*
      2  * Copyright 2019-2024 The OpenSSL Project Authors. All Rights Reserved.
      3  *
      4  * Licensed under the Apache License 2.0 (the "License").  You may not use
      5  * this file except in compliance with the License.  You can obtain a copy
      6  * in the file LICENSE in the source distribution or at
      7  * https://www.openssl.org/source/license.html
      8  */
      9 #ifndef OSSL_CRYPTO_CRMF_H
     10 #define OSSL_CRYPTO_CRMF_H
     11 #pragma once
     12 
     13 #include <openssl/crmf.h>
     14 
     15 struct ossl_crmf_attributetypeandvalue_st {
     16     ASN1_OBJECT *type;
     17     union {
     18         /* NID_id_regCtrl_regToken */
     19         ASN1_UTF8STRING *regToken;
     20 
     21         /* NID_id_regCtrl_authenticator */
     22         ASN1_UTF8STRING *authenticator;
     23 
     24         /* NID_id_regCtrl_pkiPublicationInfo */
     25         OSSL_CRMF_PKIPUBLICATIONINFO *pkiPublicationInfo;
     26 
     27         /* NID_id_regCtrl_oldCertID */
     28         OSSL_CRMF_CERTID *oldCertID;
     29 
     30         /* NID_id_regCtrl_protocolEncrKey */
     31         X509_PUBKEY *protocolEncrKey;
     32 
     33         /* NID_id_regCtrl_algId */
     34         X509_ALGOR *algId;
     35 
     36         /* NID_id_regCtrl_rsaKeyLen */
     37         ASN1_INTEGER *rsaKeyLen;
     38 
     39         /* NID_id_regInfo_utf8Pairs */
     40         ASN1_UTF8STRING *utf8Pairs;
     41 
     42         /* NID_id_regInfo_certReq */
     43         OSSL_CRMF_CERTREQUEST *certReq;
     44 
     45         ASN1_TYPE *other;
     46     } value;
     47 } /* OSSL_CRMF_ATTRIBUTETYPEANDVALUE */;
     48 DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_ATTRIBUTETYPEANDVALUE)
     49 DECLARE_ASN1_DUP_FUNCTION(OSSL_CRMF_ATTRIBUTETYPEANDVALUE)
     50 
     51 #endif /* OSSL_CRYPTO_CRMF_H */
     52