#include "internal.h"
-static void readconfig(adns_state ads, const char *filename);
+static void readconfig(adns_state ads, const char *filename, int warnmissing);
static void addserver(adns_state ads, struct in_addr addr) {
int i;
configparseerr(ads,fn,lno,"`include' directive with no filename");
return;
}
- readconfig(ads,buf);
+ readconfig(ads,buf,1);
}
static const struct configcommandinfo {
return value;
}
-static void readconfig(adns_state ads, const char *filename) {
+static void readconfig(adns_state ads, const char *filename, int warnmissing) {
getline_ctx gl_ctx;
gl_ctx.file= fopen(filename,"r");
if (!gl_ctx.file) {
if (errno == ENOENT) {
- adns__debug(ads,-1,0,"configuration file `%s' does not exist",filename);
+ if (warnmissing)
+ adns__debug(ads,-1,0,"configuration file `%s' does not exist",filename);
return;
}
saveerr(ads,errno);
return;
}
filename= instrum_getenv(ads,envvar);
- if (filename) readconfig(ads,filename);
+ if (filename) readconfig(ads,filename,1);
}
static void readconfigenvtext(adns_state ads, const char *envvar) {
ccf_options(ads,"RES_OPTIONS",-1,res_options);
ccf_options(ads,"ADNS_RES_OPTIONS",-1,adns_res_options);
- readconfig(ads,"/etc/resolv.conf");
+ readconfig(ads,"/etc/resolv.conf",1);
+ readconfig(ads,"/etc/resolv-adns.conf",0);
readconfigenv(ads,"RES_CONF");
readconfigenv(ads,"ADNS_RES_CONF");