diff options
Diffstat (limited to 'openssl/crypto/ocsp/ocsp_lib.c')
-rw-r--r-- | openssl/crypto/ocsp/ocsp_lib.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/openssl/crypto/ocsp/ocsp_lib.c b/openssl/crypto/ocsp/ocsp_lib.c index a94dc838e..5061c0578 100644 --- a/openssl/crypto/ocsp/ocsp_lib.c +++ b/openssl/crypto/ocsp/ocsp_lib.c @@ -222,8 +222,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; |