Lines Matching refs:sctx
25 SCT_CTX *sctx = OPENSSL_zalloc(sizeof(*sctx));
27 if (sctx == NULL) {
32 sctx->libctx = libctx;
34 sctx->propq = OPENSSL_strdup(propq);
35 if (sctx->propq == NULL) {
37 OPENSSL_free(sctx);
42 return sctx;
45 void SCT_CTX_free(SCT_CTX *sctx)
47 if (sctx == NULL)
49 EVP_PKEY_free(sctx->pkey);
50 OPENSSL_free(sctx->pkeyhash);
51 OPENSSL_free(sctx->ihash);
52 OPENSSL_free(sctx->certder);
53 OPENSSL_free(sctx->preder);
54 OPENSSL_free(sctx->propq);
55 OPENSSL_free(sctx);
122 int SCT_CTX_set1_cert(SCT_CTX *sctx, X509 *cert, X509 *presigner)
188 OPENSSL_free(sctx->certder);
189 sctx->certder = certder;
190 sctx->certderlen = certderlen;
192 OPENSSL_free(sctx->preder);
193 sctx->preder = preder;
194 sctx->prederlen = prederlen;
204 __owur static int ct_public_key_hash(SCT_CTX *sctx, X509_PUBKEY *pkey,
211 EVP_MD *sha256 = EVP_MD_fetch(sctx->libctx, "SHA2-256", sctx->propq);
248 int SCT_CTX_set1_issuer(SCT_CTX *sctx, const X509 *issuer)
250 return SCT_CTX_set1_issuer_pubkey(sctx, X509_get_X509_PUBKEY(issuer));
253 int SCT_CTX_set1_issuer_pubkey(SCT_CTX *sctx, X509_PUBKEY *pubkey)
255 return ct_public_key_hash(sctx, pubkey, &sctx->ihash, &sctx->ihashlen);
258 int SCT_CTX_set1_pubkey(SCT_CTX *sctx, X509_PUBKEY *pubkey)
265 if (!ct_public_key_hash(sctx, pubkey, &sctx->pkeyhash, &sctx->pkeyhashlen)) {
270 EVP_PKEY_free(sctx->pkey);
271 sctx->pkey = pkey;
275 void SCT_CTX_set_time(SCT_CTX *sctx, uint64_t time_in_ms)
277 sctx->epoch_time_in_ms = time_in_ms;