OCSP basic response verify. Very incomplete
[openssl.git] / crypto / ocsp / ocsp.h
index 7d45e9fb10ed37ad32438df70939c62277fccec3..1db672d08a806ef54f4af58d84c4a5c4d9a900b1 100644 (file)
@@ -77,6 +77,8 @@ extern "C" {
 #define OCSP_DEFAULT_NONCE_LENGTH      16
 
 #define OCSP_NOCERTS                   0x1
+#define OCSP_NOINTERN                  0x2
+#define OCSP_NOSIGS                    0x4
 
 /*   CertID ::= SEQUENCE {
  *       hashAlgorithm            AlgorithmIdentifier,
@@ -417,6 +419,19 @@ int OCSP_request_sign(OCSP_REQUEST   *req,
 int OCSP_response_status(OCSP_RESPONSE *resp);
 OCSP_BASICRESP *OCSP_response_get1_basic(OCSP_RESPONSE *resp);
 
+int OCSP_resp_count(OCSP_BASICRESP *bs);
+OCSP_SINGLERESP *OCSP_resp_get0(OCSP_BASICRESP *bs, int idx);
+int OCSP_resp_find(OCSP_BASICRESP *bs, OCSP_CERTID *id, int last);
+int OCSP_single_get0_status(OCSP_SINGLERESP *single, int *reason,
+                               ASN1_GENERALIZEDTIME **revtime,
+                               ASN1_GENERALIZEDTIME **thisupd,
+                               ASN1_GENERALIZEDTIME **nextupd);
+int OCSP_resp_find_status(OCSP_BASICRESP *bs, OCSP_CERTID *id, int *status,
+                               int *reason,
+                               ASN1_GENERALIZEDTIME **revtime,
+                               ASN1_GENERALIZEDTIME **thisupd,
+                               ASN1_GENERALIZEDTIME **nextupd);
+
 int OCSP_request_verify(OCSP_REQUEST *req, EVP_PKEY *pkey);
 
 int OCSP_id_cmp(OCSP_CERTID *a, OCSP_CERTID *b);
@@ -518,6 +533,8 @@ DECLARE_ASN1_FUNCTIONS(OCSP_SERVICELOC)
 
 int OCSP_REQUEST_print(BIO *bp, OCSP_REQUEST* a, unsigned long flags);
 
+int OCSP_basic_verify(OCSP_BASICRESP *bs, STACK_OF(X509) *certs,
+                               X509_STORE *st, unsigned long flags);
 
 void ERR_load_OCSP_strings(void);
 
@@ -535,6 +552,7 @@ void ERR_load_OCSP_strings(void);
 #define OCSP_F_CERT_ID_NEW                              102
 #define OCSP_F_CERT_STATUS_NEW                          103
 #define OCSP_F_D2I_OCSP_NONCE                           109
+#define OCSP_F_OCSP_BASIC_VERIFY                        113
 #define OCSP_F_OCSP_CHECK_NONCE                                 112
 #define OCSP_F_OCSP_RESPONSE_GET1_BASIC                         111
 #define OCSP_F_OCSP_SENDREQ_BIO                                 110
@@ -564,6 +582,8 @@ void ERR_load_OCSP_strings(void);
 #define OCSP_R_SERVER_RESPONSE_ERROR                    117
 #define OCSP_R_SERVER_RESPONSE_PARSE_ERROR              118
 #define OCSP_R_SERVER_WRITE_ERROR                       119
+#define OCSP_R_SIGNATURE_FAILURE                        124
+#define OCSP_R_SIGNER_CERTIFICATE_NOT_FOUND             125
 #define OCSP_R_UNEXPECTED_NONCE_IN_RESPONSE             123
 #define OCSP_R_UNKNOWN_NID                              107
 #define OCSP_R_UNSUPPORTED_OPTION                       113