Lines Matching refs:sct
80 sct_ctx_update(EVP_MD_CTX *ctx, const SCT_CTX *sctx, const SCT *sct) in sct_ctx_update() argument
89 if (sct->entry_type == CT_LOG_ENTRY_TYPE_NOT_SET) in sct_ctx_update()
91 if (sct->entry_type == CT_LOG_ENTRY_TYPE_PRECERT && sctx->ihash == NULL) in sct_ctx_update()
100 if (!CBB_add_u8(&cbb, sct->version)) in sct_ctx_update()
104 if (!CBB_add_u64(&cbb, sct->timestamp)) in sct_ctx_update()
106 if (!CBB_add_u16(&cbb, sct->entry_type)) in sct_ctx_update()
109 if (sct->entry_type == CT_LOG_ENTRY_TYPE_PRECERT) { in sct_ctx_update()
116 if (sct->entry_type == CT_LOG_ENTRY_TYPE_PRECERT) { in sct_ctx_update()
130 if (sct->ext_len > 0) { in sct_ctx_update()
131 if (!CBB_add_bytes(&extensions, sct->ext, sct->ext_len)) in sct_ctx_update()
151 SCT_CTX_verify(const SCT_CTX *sctx, const SCT *sct) in SCT_CTX_verify() argument
156 if (!SCT_is_complete(sct) || sctx->pkey == NULL || in SCT_CTX_verify()
157 sct->entry_type == CT_LOG_ENTRY_TYPE_NOT_SET || in SCT_CTX_verify()
158 (sct->entry_type == CT_LOG_ENTRY_TYPE_PRECERT && in SCT_CTX_verify()
163 if (sct->version != SCT_VERSION_V1) { in SCT_CTX_verify()
167 if (sct->log_id_len != sctx->pkeyhashlen || in SCT_CTX_verify()
168 memcmp(sct->log_id, sctx->pkeyhash, sctx->pkeyhashlen) != 0) { in SCT_CTX_verify()
172 if (sct->timestamp > sctx->epoch_time_in_ms) { in SCT_CTX_verify()
183 if (!sct_ctx_update(ctx, sctx, sct)) in SCT_CTX_verify()
188 if ((ret = EVP_DigestVerifyFinal(ctx, sct->sig, sct->sig_len)) == 0) in SCT_CTX_verify()