Show cfg->variable instead of cfg->value when complaining about wrong type.
[tinc] / src / conf.c
index bd546c6..b1eb475 100644 (file)
@@ -19,7 +19,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: conf.c,v 1.9.4.45 2001/10/27 12:13:17 guus Exp $
+    $Id: conf.c,v 1.9.4.47 2001/10/31 20:07:17 guus Exp $
 */
 
 #include "config.h"
@@ -126,11 +126,14 @@ cp
   cfg.line = 0;
 
   found = avl_search_closest_greater(config_tree, &cfg);
+
+  if(!found)
+    return NULL;
   
-  if(!strcmp(found->variable, variable))
-    return found;
-  else
+  if(strcmp(found->variable, variable))
     return NULL;
+
+  return found;
 }
 
 config_t *lookup_config_next(avl_tree_t *config_tree, config_t *cfg)
@@ -171,7 +174,7 @@ cp
     }
 
   syslog(LOG_ERR, _("\"yes\" or \"no\" expected for configuration variable %s in %s line %d"),
-         cfg->value, cfg->file, cfg->line);
+         cfg->variable, cfg->file, cfg->line);
 
   return 0;
 }
@@ -186,7 +189,7 @@ cp
     return 1;
     
   syslog(LOG_ERR, _("Integer expected for configuration variable %s in %s line %d"),
-         cfg->value, cfg->file, cfg->line);
+         cfg->variable, cfg->file, cfg->line);
   return 0;
 }
 
@@ -216,7 +219,7 @@ cp
     }
 
   syslog(LOG_ERR, _("IP address expected for configuration variable %s in %s line %d"),
-         cfg->value, cfg->file, cfg->line);
+         cfg->variable, cfg->file, cfg->line);
   return 0;
 }
 
@@ -230,7 +233,7 @@ cp
     return 1;
     
   syslog(LOG_ERR, _("Port number expected for configuration variable %s in %s line %d"),
-         cfg->value, cfg->file, cfg->line);
+         cfg->variable, cfg->file, cfg->line);
   return 0;
 }
 
@@ -247,18 +250,18 @@ cp
   if(!ip)
     {
       syslog(LOG_ERR, _("IP address expected for configuration variable %s in %s line %d"),
-             cfg->value, cfg->file, cfg->line);
+             cfg->variable, cfg->file, cfg->line);
       return 0;
     }
   
   /* Teach newbies what subnets are... */
 
-  if((subnet->net.ipv4.address & subnet->net.ipv4.mask) != subnet->net.ipv4.address)
+  if((ip->address & ip->mask) != ip->address)
     {
       syslog(LOG_ERR, _("Network address and subnet mask for configuration variable %s in %s line %d"),
-             cfg->value, cfg->file, cfg->line);
+             cfg->variable, cfg->file, cfg->line);
       free(ip);
-      return -1;
+      return 0;
     }
 
   subnet = new_subnet();