Corrected several mis-calls of is_ip_address() that treated the result
[exim.git] / src / src / lookups / lsearch.c
index 56b12783e7b1d33153a4338ec0c4b107f7a9b2a0..f91ddf89cb1b0b2582e53cb6a7cf292a98dd7beb 100644 (file)
@@ -1,10 +1,10 @@
-/* $Cambridge: exim/src/src/lookups/lsearch.c,v 1.1 2004/10/07 13:10:01 ph10 Exp $ */
+/* $Cambridge: exim/src/src/lookups/lsearch.c,v 1.3 2005/01/11 15:51:03 ph10 Exp $ */
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
 *************************************************/
 
-/* Copyright (c) University of Cambridge 1995 - 2004 */
+/* Copyright (c) University of Cambridge 1995 - 2005 */
 /* See the file NOTICE for conditions of use and distribution. */
 
 #include "../exim.h"
@@ -213,7 +213,7 @@ for (last_was_eol = TRUE;
       int maskoffset;
       int save = buffer[linekeylength];
       buffer[linekeylength] = 0;
-      if (!string_is_ip_address(buffer, &maskoffset) ||
+      if (string_is_ip_address(buffer, &maskoffset) == 0 ||
           !host_is_in_net(keystring, buffer, maskoffset)) continue;
       buffer[linekeylength] = save;
       }
@@ -369,7 +369,7 @@ iplsearch_find(void *handle, uschar *filename, uschar *keystring, int length,
 {
 do_cache = do_cache;  /* Keep picky compilers happy */
 if ((length == 1 && keystring[0] == '*') ||
-    string_is_ip_address(keystring, NULL))
+    string_is_ip_address(keystring, NULL) > 0)
   {
   return internal_lsearch_find(handle, filename, keystring, length, result,
     errmsg, LSEARCH_IP);