1616
1717namespace Botan {
1818
19- struct CRL_Data {
19+ class CRL_Data final {
20+ public:
21+ CRL_Data (const X509_DN& issuer,
22+ const X509_Time& this_update,
23+ const X509_Time& next_update,
24+ const std::vector<CRL_Entry>& revoked) :
25+ m_issuer (issuer), m_this_update(this_update), m_next_update(next_update), m_entries(revoked) {}
26+
27+ CRL_Data () = default ;
28+
29+ // NOLINTBEGIN(*non-private-member-variables-in-classes)
2030 X509_DN m_issuer;
2131 size_t m_version{};
2232 X509_Time m_this_update;
@@ -28,6 +38,7 @@ struct CRL_Data {
2838 size_t m_crl_number = 0 ;
2939 std::vector<uint8_t > m_auth_key_id;
3040 std::vector<std::string> m_idp_urls;
41+ // NOLINTEND(*non-private-member-variables-in-classes)
3142};
3243
3344std::string X509_CRL::PEM_label () const {
@@ -58,11 +69,7 @@ X509_CRL::X509_CRL(const X509_DN& issuer,
5869 const X509_Time& this_update,
5970 const X509_Time& next_update,
6071 const std::vector<CRL_Entry>& revoked) {
61- m_data = std::make_shared<CRL_Data>();
62- m_data->m_issuer = issuer;
63- m_data->m_this_update = this_update;
64- m_data->m_next_update = next_update;
65- m_data->m_entries = revoked;
72+ m_data = std::make_shared<CRL_Data>(issuer, this_update, next_update, revoked);
6673}
6774
6875/* *
0 commit comments