summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/ocsp/ocsp.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/ocsp/ocsp.h')
-rw-r--r--src/lib/libcrypto/ocsp/ocsp.h42
1 files changed, 19 insertions, 23 deletions
diff --git a/src/lib/libcrypto/ocsp/ocsp.h b/src/lib/libcrypto/ocsp/ocsp.h
index a0577a717e..fab3c03182 100644
--- a/src/lib/libcrypto/ocsp/ocsp.h
+++ b/src/lib/libcrypto/ocsp/ocsp.h
@@ -186,11 +186,11 @@ typedef struct ocsp_resp_bytes_st
186 * responseStatus OCSPResponseStatus, 186 * responseStatus OCSPResponseStatus,
187 * responseBytes [0] EXPLICIT ResponseBytes OPTIONAL } 187 * responseBytes [0] EXPLICIT ResponseBytes OPTIONAL }
188 */ 188 */
189struct ocsp_response_st 189typedef struct ocsp_response_st
190 { 190 {
191 ASN1_ENUMERATED *responseStatus; 191 ASN1_ENUMERATED *responseStatus;
192 OCSP_RESPBYTES *responseBytes; 192 OCSP_RESPBYTES *responseBytes;
193 }; 193 } OCSP_RESPONSE;
194 194
195/* ResponderID ::= CHOICE { 195/* ResponderID ::= CHOICE {
196 * byName [1] Name, 196 * byName [1] Name,
@@ -198,18 +198,14 @@ struct ocsp_response_st
198 */ 198 */
199#define V_OCSP_RESPID_NAME 0 199#define V_OCSP_RESPID_NAME 0
200#define V_OCSP_RESPID_KEY 1 200#define V_OCSP_RESPID_KEY 1
201struct ocsp_responder_id_st 201typedef struct ocsp_responder_id_st
202 { 202 {
203 int type; 203 int type;
204 union { 204 union {
205 X509_NAME* byName; 205 X509_NAME* byName;
206 ASN1_OCTET_STRING *byKey; 206 ASN1_OCTET_STRING *byKey;
207 } value; 207 } value;
208 }; 208 } OCSP_RESPID;
209
210DECLARE_STACK_OF(OCSP_RESPID)
211DECLARE_ASN1_FUNCTIONS(OCSP_RESPID)
212
213/* KeyHash ::= OCTET STRING --SHA-1 hash of responder's public key 209/* KeyHash ::= OCTET STRING --SHA-1 hash of responder's public key
214 * --(excluding the tag and length fields) 210 * --(excluding the tag and length fields)
215 */ 211 */
@@ -353,9 +349,13 @@ typedef struct ocsp_service_locator_st
353#define PEM_STRING_OCSP_REQUEST "OCSP REQUEST" 349#define PEM_STRING_OCSP_REQUEST "OCSP REQUEST"
354#define PEM_STRING_OCSP_RESPONSE "OCSP RESPONSE" 350#define PEM_STRING_OCSP_RESPONSE "OCSP RESPONSE"
355 351
356#define d2i_OCSP_REQUEST_bio(bp,p) ASN1_d2i_bio_of(OCSP_REQUEST,OCSP_REQUEST_new,d2i_OCSP_REQUEST,bp,p) 352#define d2i_OCSP_REQUEST_bio(bp,p) (OCSP_REQUEST*)ASN1_d2i_bio((char*(*)()) \
353 OCSP_REQUEST_new,(char *(*)())d2i_OCSP_REQUEST, (bp),\
354 (unsigned char **)(p))
357 355
358#define d2i_OCSP_RESPONSE_bio(bp,p) ASN1_d2i_bio_of(OCSP_RESPONSE,OCSP_RESPONSE_new,d2i_OCSP_RESPONSE,bp,p) 356#define d2i_OCSP_RESPONSE_bio(bp,p) (OCSP_RESPONSE*)ASN1_d2i_bio((char*(*)())\
357 OCSP_REQUEST_new,(char *(*)())d2i_OCSP_RESPONSE, (bp),\
358 (unsigned char **)(p))
359 359
360#define PEM_read_bio_OCSP_REQUEST(bp,x,cb) (OCSP_REQUEST *)PEM_ASN1_read_bio( \ 360#define PEM_read_bio_OCSP_REQUEST(bp,x,cb) (OCSP_REQUEST *)PEM_ASN1_read_bio( \
361 (char *(*)())d2i_OCSP_REQUEST,PEM_STRING_OCSP_REQUEST,bp,(char **)x,cb,NULL) 361 (char *(*)())d2i_OCSP_REQUEST,PEM_STRING_OCSP_REQUEST,bp,(char **)x,cb,NULL)
@@ -371,9 +371,11 @@ typedef struct ocsp_service_locator_st
371 PEM_ASN1_write_bio((int (*)())i2d_OCSP_RESPONSE,PEM_STRING_OCSP_RESPONSE,\ 371 PEM_ASN1_write_bio((int (*)())i2d_OCSP_RESPONSE,PEM_STRING_OCSP_RESPONSE,\
372 bp,(char *)o, NULL,NULL,0,NULL,NULL) 372 bp,(char *)o, NULL,NULL,0,NULL,NULL)
373 373
374#define i2d_OCSP_RESPONSE_bio(bp,o) ASN1_i2d_bio_of(OCSP_RESPONSE,i2d_OCSP_RESPONSE,bp,o) 374#define i2d_OCSP_RESPONSE_bio(bp,o) ASN1_i2d_bio(i2d_OCSP_RESPONSE,bp,\
375 (unsigned char *)o)
375 376
376#define i2d_OCSP_REQUEST_bio(bp,o) ASN1_i2d_bio_of(OCSP_REQUEST,i2d_OCSP_REQUEST,bp,o) 377#define i2d_OCSP_REQUEST_bio(bp,o) ASN1_i2d_bio(i2d_OCSP_REQUEST,bp,\
378 (unsigned char *)o)
377 379
378#define OCSP_REQUEST_sign(o,pkey,md) \ 380#define OCSP_REQUEST_sign(o,pkey,md) \
379 ASN1_item_sign(ASN1_ITEM_rptr(OCSP_REQINFO),\ 381 ASN1_item_sign(ASN1_ITEM_rptr(OCSP_REQINFO),\
@@ -394,17 +396,14 @@ typedef struct ocsp_service_locator_st
394#define ASN1_BIT_STRING_digest(data,type,md,len) \ 396#define ASN1_BIT_STRING_digest(data,type,md,len) \
395 ASN1_item_digest(ASN1_ITEM_rptr(ASN1_BIT_STRING),type,data,md,len) 397 ASN1_item_digest(ASN1_ITEM_rptr(ASN1_BIT_STRING),type,data,md,len)
396 398
397#define OCSP_CERTID_dup(cid) ASN1_dup_of(OCSP_CERTID,i2d_OCSP_CERTID,d2i_OCSP_CERTID,cid) 399#define OCSP_CERTID_dup(cid) (OCSP_CERTID*)ASN1_dup((int(*)())i2d_OCSP_CERTID,\
400 (char *(*)())d2i_OCSP_CERTID,(char *)(cid))
398 401
399#define OCSP_CERTSTATUS_dup(cs)\ 402#define OCSP_CERTSTATUS_dup(cs)\
400 (OCSP_CERTSTATUS*)ASN1_dup((int(*)())i2d_OCSP_CERTSTATUS,\ 403 (OCSP_CERTSTATUS*)ASN1_dup((int(*)())i2d_OCSP_CERTSTATUS,\
401 (char *(*)())d2i_OCSP_CERTSTATUS,(char *)(cs)) 404 (char *(*)())d2i_OCSP_CERTSTATUS,(char *)(cs))
402 405
403OCSP_RESPONSE *OCSP_sendreq_bio(BIO *b, char *path, OCSP_REQUEST *req); 406OCSP_RESPONSE *OCSP_sendreq_bio(BIO *b, char *path, OCSP_REQUEST *req);
404OCSP_REQ_CTX *OCSP_sendreq_new(BIO *io, char *path, OCSP_REQUEST *req,
405 int maxline);
406int OCSP_sendreq_nbio(OCSP_RESPONSE **presp, OCSP_REQ_CTX *rctx);
407void OCSP_REQ_CTX_free(OCSP_REQ_CTX *rctx);
408 407
409OCSP_CERTID *OCSP_cert_to_id(const EVP_MD *dgst, X509 *subject, X509 *issuer); 408OCSP_CERTID *OCSP_cert_to_id(const EVP_MD *dgst, X509 *subject, X509 *issuer);
410 409
@@ -474,10 +473,8 @@ int OCSP_basic_sign(OCSP_BASICRESP *brsp,
474 X509 *signer, EVP_PKEY *key, const EVP_MD *dgst, 473 X509 *signer, EVP_PKEY *key, const EVP_MD *dgst,
475 STACK_OF(X509) *certs, unsigned long flags); 474 STACK_OF(X509) *certs, unsigned long flags);
476 475
477ASN1_STRING *ASN1_STRING_encode(ASN1_STRING *s, i2d_of_void *i2d, 476ASN1_STRING *ASN1_STRING_encode(ASN1_STRING *s, int (*i2d)(),
478 void *data, STACK_OF(ASN1_OBJECT) *sk); 477 char *data, STACK_OF(ASN1_OBJECT) *sk);
479#define ASN1_STRING_encode_of(type,s,i2d,data,sk) \
480 ASN1_STRING_encode(s, CHECKED_I2D_OF(type, i2d), data, sk)
481 478
482X509_EXTENSION *OCSP_crlID_new(char *url, long *n, char *tim); 479X509_EXTENSION *OCSP_crlID_new(char *url, long *n, char *tim);
483 480
@@ -567,11 +564,11 @@ void ERR_load_OCSP_strings(void);
567 564
568/* Function codes. */ 565/* Function codes. */
569#define OCSP_F_ASN1_STRING_ENCODE 100 566#define OCSP_F_ASN1_STRING_ENCODE 100
567#define OCSP_F_CERT_ID_NEW 101
570#define OCSP_F_D2I_OCSP_NONCE 102 568#define OCSP_F_D2I_OCSP_NONCE 102
571#define OCSP_F_OCSP_BASIC_ADD1_STATUS 103 569#define OCSP_F_OCSP_BASIC_ADD1_STATUS 103
572#define OCSP_F_OCSP_BASIC_SIGN 104 570#define OCSP_F_OCSP_BASIC_SIGN 104
573#define OCSP_F_OCSP_BASIC_VERIFY 105 571#define OCSP_F_OCSP_BASIC_VERIFY 105
574#define OCSP_F_OCSP_CERT_ID_NEW 101
575#define OCSP_F_OCSP_CHECK_DELEGATED 106 572#define OCSP_F_OCSP_CHECK_DELEGATED 106
576#define OCSP_F_OCSP_CHECK_IDS 107 573#define OCSP_F_OCSP_CHECK_IDS 107
577#define OCSP_F_OCSP_CHECK_ISSUER 108 574#define OCSP_F_OCSP_CHECK_ISSUER 108
@@ -582,7 +579,6 @@ void ERR_load_OCSP_strings(void);
582#define OCSP_F_OCSP_REQUEST_VERIFY 116 579#define OCSP_F_OCSP_REQUEST_VERIFY 116
583#define OCSP_F_OCSP_RESPONSE_GET1_BASIC 111 580#define OCSP_F_OCSP_RESPONSE_GET1_BASIC 111
584#define OCSP_F_OCSP_SENDREQ_BIO 112 581#define OCSP_F_OCSP_SENDREQ_BIO 112
585#define OCSP_F_PARSE_HTTP_LINE1 117
586#define OCSP_F_REQUEST_VERIFY 113 582#define OCSP_F_REQUEST_VERIFY 113
587 583
588/* Reason codes. */ 584/* Reason codes. */