You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by se...@apache.org on 2008/03/05 17:46:45 UTC
svn commit: r633930 - in /webservices/axis2/trunk/c/util:
include/axutil_uri.h src/uri.c
Author: senaka
Date: Wed Mar 5 08:46:45 2008
New Revision: 633930
URL: http://svn.apache.org/viewvc?rev=633930&view=rev
Log:
Special provisions for IPv6 hostnames, according to RFC3986
Modified:
webservices/axis2/trunk/c/util/include/axutil_uri.h
webservices/axis2/trunk/c/util/src/uri.c
Modified: webservices/axis2/trunk/c/util/include/axutil_uri.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/include/axutil_uri.h?rev=633930&r1=633929&r2=633930&view=diff
==============================================================================
--- webservices/axis2/trunk/c/util/include/axutil_uri.h (original)
+++ webservices/axis2/trunk/c/util/include/axutil_uri.h Wed Mar 5 08:46:45 2008
@@ -227,6 +227,8 @@
/**
* @return returns actual reference, not a cloned copy.
+ * For IPv6 addresses, the IPv6 Address will be returned
+ * rather than the IP-literal as defined in RFC3986.
*/
AXIS2_EXTERN axis2_char_t *AXIS2_CALL
axutil_uri_get_host(
Modified: webservices/axis2/trunk/c/util/src/uri.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/src/uri.c?rev=633930&r1=633929&r2=633930&view=diff
==============================================================================
--- webservices/axis2/trunk/c/util/src/uri.c (original)
+++ webservices/axis2/trunk/c/util/src/uri.c Wed Mar 5 08:46:45 2008
@@ -570,11 +570,15 @@
axutil_uri_free(uri, env);
return NULL;
}
- /* literal IPv6 address */
+ /* literal IPv6 address
+ * Special allowances has been made according to RFC3986 for
+ * IPv6 addresses beginning with "::"
+ */
s = rsb + 1;
if ((*(hostinfo + 1) >= '0' && *(hostinfo + 1) <= '9') ||
(*(hostinfo + 1) >= 'a' && *(hostinfo + 1) <= 'z') ||
- (*(hostinfo + 1) >= 'A' && *(hostinfo + 1) <= 'Z'))
+ (*(hostinfo + 1) >= 'A' && *(hostinfo + 1) <= 'Z') ||
+ (*(hostinfo + 1) == ':' && *(hostinfo + 2) == ':'))
{
++hostinfo;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org