summaryrefslogtreecommitdiff
path: root/src/ocsptool-common.c
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2012-01-29 21:36:11 +0100
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2012-01-29 21:36:11 +0100
commit8a52dc869a949065db689c0809f9dcc70507c4b9 (patch)
treed95ea7d4b76444ab9d8886b4eecba0725ac74301 /src/ocsptool-common.c
parente782cabed905d9fb3277c74b297f74b21efebaf3 (diff)
downloadgnutls-8a52dc869a949065db689c0809f9dcc70507c4b9.tar.gz
send_ocsp_request is more tolerant on errors.
Diffstat (limited to 'src/ocsptool-common.c')
-rw-r--r--src/ocsptool-common.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/ocsptool-common.c b/src/ocsptool-common.c
index d74e5534d3..4436fd7657 100644
--- a/src/ocsptool-common.c
+++ b/src/ocsptool-common.c
@@ -134,6 +134,7 @@ gnutls_datum_t *ud = userp;
return size;
}
+/* Returns 0 on ok, and -1 on error */
int send_ocsp_request(const char* server,
gnutls_x509_crt_t cert, gnutls_x509_crt_t issuer,
gnutls_datum_t * resp_data, int nonce)
@@ -165,7 +166,7 @@ socket_st hd;
if (ret < 0)
{
fprintf(stderr, "Cannot find URL from issuer: %s\n", gnutls_strerror(ret));
- exit(1);
+ return -1;
}
url = malloc(data.size+1);
@@ -203,7 +204,7 @@ socket_st hd;
if (ret < 0 || ud.size == 0)
{
perror("recv");
- exit(1);
+ return -1;
}
socket_bye(&hd);
@@ -212,14 +213,14 @@ socket_st hd;
if (p == NULL)
{
fprintf(stderr, "Cannot interpret HTTP response\n");
- exit(1);
+ return -1;
}
p += 4;
resp_data->size = ud.size - (p - ud.data);
resp_data->data = malloc(resp_data->size);
if (resp_data->data == NULL)
- exit(1);
+ return -1;
memcpy(resp_data->data, p, resp_data->size);