From: Tom Greenslade Date: Fri, 27 Jun 2014 16:30:59 +0000 (+0100) Subject: Handle IPv6 addresses in OCSP_parse_url. X-Git-Tag: OpenSSL_1_0_0n~61 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=5cd3ae9f181b70eb1001f993dafa13b843aa6d2c;p=oweals%2Fopenssl.git Handle IPv6 addresses in OCSP_parse_url. PR#2783 (cherry picked from commit b36f35cda964544a15d53d3fdfec9b2bab8cacb1) --- diff --git a/crypto/ocsp/ocsp_lib.c b/crypto/ocsp/ocsp_lib.c index e92b86c060..562515d24e 100644 --- a/crypto/ocsp/ocsp_lib.c +++ b/crypto/ocsp/ocsp_lib.c @@ -221,8 +221,19 @@ int OCSP_parse_url(char *url, char **phost, char **pport, char **ppath, int *pss if (!*ppath) goto mem_err; + p = host; + if(host[0] == '[') + { + /* ipv6 literal */ + host++; + p = strchr(host, ']'); + if(!p) goto parse_err; + *p = '\0'; + p++; + } + /* Look for optional ':' for port number */ - if ((p = strchr(host, ':'))) + if ((p = strchr(p, ':'))) { *p = 0; port = p + 1;