X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Fdatabase.h;h=b438187d8be3b66c1df7a3afb68fa3b4924556a1;hb=7a72391242e316a16992e0874a118999486afb87;hp=a80b73ed69f2703f9292329d90dd9a068f4b9ab8;hpb=858fcca3a53da84a306f55d1811bf119bf8d862f;p=cassiopeia.git diff --git a/src/database.h b/src/database.h index a80b73e..b438187 100644 --- a/src/database.h +++ b/src/database.h @@ -4,6 +4,11 @@ #include #include +struct Profile { + std::string cert; + std::string key; +}; + struct Job { std::string id; std::string target; @@ -17,15 +22,30 @@ struct SAN { std::string type; }; +struct AVA { + std::string name; + std::string value; +}; + struct TBSCertificate { - std::string CN; - std::string subj; std::string md; std::string profile; std::string csr; std::string csr_type; std::string csr_content; std::vector> SANs; + std::vector> AVAs; +}; + + +struct SignedCertificate { + std::string certificate; + std::string serial; + uint32_t before; + uint32_t after; + std::string pkHash; + std::string certHash; + std::string crt_name; }; class JobProvider { @@ -33,4 +53,5 @@ public: virtual std::shared_ptr fetchJob() = 0; virtual bool finishJob( std::shared_ptr job ) = 0; virtual std::shared_ptr fetchTBSCert( std::shared_ptr job ) = 0; + virtual void writeBack( std::shared_ptr job, std::shared_ptr res ) = 0; };