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.48 2001/11/16 00:13:08 zarq Exp $
*/
#include "config.h"
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)
}
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;
}
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;
}
return 1;
}
-int get_config_ip(config_t *cfg, ip_mask_t **result)
-{
- ip_mask_t *ip;
-cp
- if(!cfg)
- return 0;
-
- ip = strtoip(cfg->value);
-
- if(ip)
- {
- *result = ip;
- return 1;
- }
-
- syslog(LOG_ERR, _("IP address expected for configuration variable %s in %s line %d"),
- cfg->value, cfg->file, cfg->line);
- return 0;
-}
-
-int get_config_port(config_t *cfg, port_t *result)
-{
-cp
- if(!cfg)
- return 0;
-
- if(sscanf(cfg->value, "%hu", result) == 1)
- return 1;
-
- syslog(LOG_ERR, _("Port number expected for configuration variable %s in %s line %d"),
- cfg->value, cfg->file, cfg->line);
- return 0;
-}
-
int get_config_subnet(config_t *cfg, subnet_t **result)
{
ip_mask_t *ip;
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();