diff options
Diffstat (limited to 'src/lib/libcrypto/ocsp/ocsp.h')
-rw-r--r-- | src/lib/libcrypto/ocsp/ocsp.h | 42 |
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 | */ |
189 | struct ocsp_response_st | 189 | typedef 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 |
201 | struct ocsp_responder_id_st | 201 | typedef 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 | |||
210 | DECLARE_STACK_OF(OCSP_RESPID) | ||
211 | DECLARE_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 | ||
403 | OCSP_RESPONSE *OCSP_sendreq_bio(BIO *b, char *path, OCSP_REQUEST *req); | 406 | OCSP_RESPONSE *OCSP_sendreq_bio(BIO *b, char *path, OCSP_REQUEST *req); |
404 | OCSP_REQ_CTX *OCSP_sendreq_new(BIO *io, char *path, OCSP_REQUEST *req, | ||
405 | int maxline); | ||
406 | int OCSP_sendreq_nbio(OCSP_RESPONSE **presp, OCSP_REQ_CTX *rctx); | ||
407 | void OCSP_REQ_CTX_free(OCSP_REQ_CTX *rctx); | ||
408 | 407 | ||
409 | OCSP_CERTID *OCSP_cert_to_id(const EVP_MD *dgst, X509 *subject, X509 *issuer); | 408 | OCSP_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 | ||
477 | ASN1_STRING *ASN1_STRING_encode(ASN1_STRING *s, i2d_of_void *i2d, | 476 | ASN1_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 | ||
482 | X509_EXTENSION *OCSP_crlID_new(char *url, long *n, char *tim); | 479 | X509_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. */ |