Update copyright year in (most) files (those that my script finds).
[exim.git] / src / src / parse.c
index d2aae351b81649b32b7ac378b1a82d892f8499cf..67d9e148c3655e8e895153c710b76daa0965cf80 100644 (file)
@@ -1,10 +1,10 @@
-/* $Cambridge: exim/src/src/parse.c,v 1.3 2005/01/04 10:00:42 ph10 Exp $ */
+/* $Cambridge: exim/src/src/parse.c,v 1.7 2006/02/07 11:19:00 ph10 Exp $ */
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
 *************************************************/
 
-/* Copyright (c) University of Cambridge 1995 - 2005 */
+/* Copyright (c) University of Cambridge 1995 - 2006 */
 /* See the file NOTICE for conditions of use and distribution. */
 
 /* Functions for parsing addresses */
@@ -243,18 +243,17 @@ s = skip_comment(s);
 any character except [ ] \, including linear white space, and may contain
 quoted characters. However, RFC 821 restricts literals to being dot-separated
 3-digit numbers, and we make the obvious extension for IPv6. Go for a sequence
-of digits and dots (hex digits and colons for IPv6) here; later this will be
-checked for being a syntactically valid IP address if it ever gets to a router.
+of digits, dots, hex digits, and colons here; later this will be checked for
+being a syntactically valid IP address if it ever gets to a router.
 
-If IPv6 is supported, allow both the formal form, with IPV6: at the start, and
-the informal form without it, and accept IPV4: as well, 'cause someone will use
-it sooner or later. */
+Allow both the formal IPv6 form, with IPV6: at the start, and the informal form
+without it, and accept IPV4: as well, 'cause someone will use it sooner or
+later. */
 
 if (*s == '[')
   {
   *t++ = *s++;
 
-  #if HAVE_IPV6
   if (strncmpic(s, US"IPv6:", 5) == 0 || strncmpic(s, US"IPv4:", 5) == 0)
     {
     memcpy(t, s, 5);
@@ -263,10 +262,6 @@ if (*s == '[')
     }
   while (*s == '.' || *s == ':' || isxdigit(*s)) *t++ = *s++;
 
-  #else
-  while (*s == '.' || isdigit(*s)) *t++ = *s++;
-  #endif
-
   if (*s == ']') *t++ = *s++; else
     {
     *errorptr = US"malformed domain literal";
@@ -847,9 +842,9 @@ If the only characters that strictly need quoting are spaces, we return the
 original string, unmodified. If a quoted string is too long for the buffer, it
 is truncated. (This shouldn't happen: this is normally handling short strings.)
 
-Hmmph. As always, things get perverted for other uses. This function was 
-originally for the "phrase" part of addresses. Now it is being used for much 
-longer texts in ACLs and via the ${rfc2047: expansion item. This means we have 
+Hmmph. As always, things get perverted for other uses. This function was
+originally for the "phrase" part of addresses. Now it is being used for much
+longer texts in ACLs and via the ${rfc2047: expansion item. This means we have
 to check for overlong "encoded-word"s and split them. November 2004.
 
 Arguments:
@@ -890,7 +885,7 @@ for (; len > 0; len--)
   {
   int ch = *s++;
   if (t > buffer + buffer_size - hlen - 8) break;
-  
+
   if (t - p > 70)
     {
     *t++ = '?';
@@ -899,8 +894,8 @@ for (; len > 0; len--)
     p = t;
     Ustrncpy(p, buffer, hlen);
     t += hlen;
-    }      
+    }
+
   if (ch < 33 || ch > 126 ||
       Ustrchr("?=()<>@,;:\\\".[]_", ch) != NULL)
     {
@@ -913,11 +908,11 @@ for (; len > 0; len--)
     }
   else *t++ = ch;
   }
-   
+
 *t++ = '?';
-*t++ = '=';  
+*t++ = '=';
 *t = 0;
+
 return coded? buffer : string;
 }
 
@@ -1475,7 +1470,7 @@ for (;;)
       {
       *error = string_sprintf("failed to stat included file %s: %s",
         filename, strerror(errno));
-      fclose(f);
+      (void)fclose(f);
       return FF_INCLUDEFAIL;
       }
 
@@ -1502,11 +1497,11 @@ for (;;)
       {
       *error = string_sprintf("error while reading included file %s: %s",
         filename, strerror(errno));
-      fclose(f);
+      (void)fclose(f);
       return FF_ERROR;
       }
     filebuf[statbuf.st_size] = 0;
-    fclose(f);
+    (void)fclose(f);
 
     addr = NULL;
     frc = parse_forward_list(filebuf, options, &addr,