]> git.ipfire.org Git - thirdparty/cups.git/blobdiff - cups/http.c
Merge changes from CUPS 1.4svn-r8628.
[thirdparty/cups.git] / cups / http.c
index a717f80c0ad6e10a0248ec852d17ddfb681540d9..ddb2f3a83b3baf9eddae46c1ca1de14852e6d38a 100644 (file)
@@ -1893,7 +1893,9 @@ httpSetField(http_t       *http,  /* I - Connection to server */
     * need to bracket IPv6 numeric addresses.
     */
 
     * need to bracket IPv6 numeric addresses.
     */
 
-    if (strchr(value, ':'))
+    char *ptr = strchr(value, ':');
+
+    if (value[0] != '[' && ptr && strchr(ptr + 1, ':'))
     {
      /*
       * Bracket IPv6 numeric addresses...
     {
      /*
       * Bracket IPv6 numeric addresses...
@@ -1911,8 +1913,7 @@ httpSetField(http_t       *http,  /* I - Connection to server */
       * Check for a trailing dot on the hostname...
       */
 
       * Check for a trailing dot on the hostname...
       */
 
-      char *ptr = http->fields[HTTP_FIELD_HOST];
-                                       /* Pointer into Host: field */
+      ptr = http->fields[HTTP_FIELD_HOST];
 
       if (*ptr)
       {
 
       if (*ptr)
       {