request = create_request(ctx, cert, &certID, s, pool);
if (request) {
- response = modssl_dispatch_ocsp_request(ruri, request, c, pool);
+ response = modssl_dispatch_ocsp_request(ruri,
+ mySrvFromConn(c)->timeout,
+ request, c, pool);
}
if (!request || !response) {
* responder at the given URI. Returns the decoded OCSP response
* object, or NULL on error (in which case, errors will have been
* logged). Pool 'p' is used for temporary allocations. */
-OCSP_RESPONSE *modssl_dispatch_ocsp_request(const apr_uri_t *uri,
+OCSP_RESPONSE *modssl_dispatch_ocsp_request(const apr_uri_t *uri,
+ apr_interval_time_t timeout,
OCSP_REQUEST *request,
conn_rec *c, apr_pool_t *p);
#endif
* responder at given server given by URI. Returns socket object or
* NULL on error. */
static apr_socket_t *send_request(BIO *request, const apr_uri_t *uri,
+ apr_interval_time_t timeout,
conn_rec *c, apr_pool_t *p)
{
apr_status_t rv;
rv = apr_socket_create(&sd, sa->family, SOCK_STREAM, APR_PROTO_TCP, p);
if (rv == APR_SUCCESS) {
/* Inherit the default I/O timeout. */
- apr_socket_timeout_set(sd, mySrvFromConn(c)->timeout);
+ apr_socket_timeout_set(sd, timeout);
rv = apr_socket_connect(sd, sa);
if (rv == APR_SUCCESS) {
return response;
}
-OCSP_RESPONSE *modssl_dispatch_ocsp_request(const apr_uri_t *uri,
+OCSP_RESPONSE *modssl_dispatch_ocsp_request(const apr_uri_t *uri,
+ apr_interval_time_t timeout,
OCSP_REQUEST *request,
conn_rec *c, apr_pool_t *p)
{
return NULL;
}
- sd = send_request(bio, uri, c, p);
+ sd = send_request(bio, uri, timeout, c, p);
if (sd == NULL) {
/* Errors already logged. */
BIO_free(bio);