4#include "Stroika/Foundation/StroikaPreComp.h"
6#if qStroika_HasComponent_OpenSSL
7#include "Stroika/Foundation/Cryptography/Providers/OpenSSL/Certificate.h"
9#include "Stroika/Foundation/Execution/RequiredComponentMissingException.h"
14#include "Certificate.h"
18using namespace Stroika::Foundation::Cryptography;
19#if !qStroika_HasComponent_OpenSSL
28String Cryptography::PKI::Certificate::SubjectInfo::ToString ()
const
32 sb <<
"country: "sv << fCountry;
33 sb <<
", organization: "sv << fOrganization;
34 sb <<
", commonName: "sv << fCommonName;
44auto Cryptography::PKI::Certificate::Ptr::ToString () const ->
String
46 if (*
this ==
nullptr) {
51 sb <<
"subject: "sv << this->GetSubject ();
52 sb <<
", valid-dates: "sv << this->GetValidDates ();
62auto Cryptography::PKI::Certificate::New (
const SelfSignedCertParams& params) -> tuple<Cryptography::PKI::PrivateKey::Ptr, Ptr>
64#if qStroika_HasComponent_OpenSSL
65 return Cryptography::Providers::OpenSSL::Certificate::New (params);
67 Throw (RequiredComponentMissingException{
"SSL providing service"sv});
Similar to String, but intended to more efficiently construct a String. Mutable type (String is large...
String is like std::u32string, except it is much easier to use, often much more space efficient,...
void Throw(T &&e2Throw)
identical to builtin C++ 'throw' except that it does helpful, type dependent DbgTrace() messages firs...