LeviLamina
Loading...
Searching...
No Matches
Certificate.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/certificates/UnverifiedCertificate.h"
5
6// auto generated forward declare list
7// clang-format off
10class WebToken;
11namespace Json { class Value; }
12// clang-format on
13
15public:
16 // member variables
17 // NOLINTBEGIN
18 ::UnverifiedCertificate mUnverifiedCertificate;
19 ::std::unique_ptr<::Certificate> mParentCertificate;
20 bool mIsValid;
21 bool mIsSelfSigned;
22 // NOLINTEND
23
24public:
25 // prevent constructor by default
26 Certificate& operator=(Certificate const&);
27
28public:
29 // member functions
30 // NOLINTBEGIN
31 MCAPI Certificate(::Certificate const& other);
32
33 MCAPI int64 getExpirationDate() const;
34
35 MCAPI ::std::string getIdentityPublicKey() const;
36
37 MCAPI int64 getNotBeforeDate() const;
38
39 MCAPI bool isCertificateAuthority() const;
40
41 MCAPI bool validate(int64 currentTime, bool isSelfSigned, bool checkExpired);
42
43 MCAPI ~Certificate();
44 // NOLINTEND
45
46public:
47 // static functions
48 // NOLINTBEGIN
49 MCAPI static ::std::unique_ptr<::WebToken> createWebToken(
50 ::PrivateKeyManager& signer,
51 int64 notBeforeDate,
52 int64 expirationDate,
53 ::std::string const& identityPublicKey,
54 bool extraData,
55 ::Json::Value const* isCertificateAuthority
56 );
57
58 MCAPI static ::std::unique_ptr<::Certificate> createWrappedCertificate(
59 ::PrivateKeyManager& signer,
60 int64 notBeforeDate,
61 int64 expirationDate,
62 ::std::string const& identityPublicKey,
63 bool extraData,
64 ::Json::Value const* parentCertificate,
65 ::std::unique_ptr<::Certificate> isCertificateAuthority
66 );
67 // NOLINTEND
68
69public:
70 // constructor thunks
71 // NOLINTBEGIN
72 MCAPI void* $ctor(::Certificate const& other);
73 // NOLINTEND
74
75public:
76 // destructor thunk
77 // NOLINTBEGIN
78 MCAPI void $dtor();
79 // NOLINTEND
80};
Definition Certificate.h:14
Definition Value.h:16
Definition PrivateKeyManager.h:9
Definition UnverifiedCertificate.h:13
Definition WebToken.h:14