Download raw body.
dig(1): remove a bunch of unused stuff from resolv.conf parser
OK?
diff --git lib/lwres/include/lwres/lwres.h lib/lwres/include/lwres/lwres.h
index 74e49211662..c4757a5d605 100644
--- lib/lwres/include/lwres/lwres.h
+++ lib/lwres/include/lwres/lwres.h
@@ -101,34 +101,20 @@ struct lwres_addr {
*/
#define LWRES_CONFMAXNAMESERVERS 3 /*%< max 3 "nameserver" entries */
-#define LWRES_CONFMAXLWSERVERS 1 /*%< max 1 "lwserver" entry */
#define LWRES_CONFMAXSEARCH 8 /*%< max 8 domains in "search" entry */
#define LWRES_CONFMAXLINELEN 256 /*%< max size of a line */
-#define LWRES_CONFMAXSORTLIST 10 /*%< max 10 */
/*% lwres_conf_t */
typedef struct {
lwres_addr_t nameservers[LWRES_CONFMAXNAMESERVERS];
uint8_t nsnext; /*%< index for next free slot */
- lwres_addr_t lwservers[LWRES_CONFMAXLWSERVERS];
- uint8_t lwnext; /*%< index for next free slot */
-
char *domainname;
char *search[LWRES_CONFMAXSEARCH];
uint8_t searchnxt; /*%< index for next free slot */
- struct {
- lwres_addr_t addr;
- /*% mask has a non-zero 'family' and 'length' if set */
- lwres_addr_t mask;
- } sortlist[LWRES_CONFMAXSORTLIST];
- uint8_t sortlistnxt;
-
- uint8_t resdebug; /*%< non-zero if 'options debug' set */
uint8_t ndots; /*%< set to n in 'options ndots:n' */
- uint8_t no_tld_query; /*%< non-zero if 'options no_tld_query' */
int flags;
} lwres_conf_t;
diff --git lib/lwres/lwconfig.c lib/lwres/lwconfig.c
index d94be248674..8bc130ca099 100644
--- lib/lwres/lwconfig.c
+++ lib/lwres/lwconfig.c
@@ -56,18 +56,12 @@
static lwres_result_t
lwres_conf_parsenameserver(lwres_conf_t *confdata, FILE *fp);
-static lwres_result_t
-lwres_conf_parselwserver(lwres_conf_t *confdata, FILE *fp);
-
static lwres_result_t
lwres_conf_parsedomain(lwres_conf_t *confdata, FILE *fp);
static lwres_result_t
lwres_conf_parsesearch(lwres_conf_t *confdata, FILE *fp);
-static lwres_result_t
-lwres_conf_parsesortlist(lwres_conf_t *confdata, FILE *fp);
-
static lwres_result_t
lwres_conf_parseoption(lwres_conf_t *confdata, FILE *fp);
@@ -159,13 +153,9 @@ lwres_conf_init(lwres_conf_t *confdata, int lwresflags) {
int i;
confdata->nsnext = 0;
- confdata->lwnext = 0;
confdata->domainname = NULL;
confdata->searchnxt = 0;
- confdata->sortlistnxt = 0;
- confdata->resdebug = 0;
confdata->ndots = 1;
- confdata->no_tld_query = 0;
confdata->flags = lwresflags;
for (i = 0; i < LWRES_CONFMAXNAMESERVERS; i++)
@@ -174,10 +164,6 @@ lwres_conf_init(lwres_conf_t *confdata, int lwresflags) {
for (i = 0; i < LWRES_CONFMAXSEARCH; i++)
confdata->search[i] = NULL;
- for (i = 0; i < LWRES_CONFMAXSORTLIST; i++) {
- lwres_resetaddr(&confdata->sortlist[i].addr);
- lwres_resetaddr(&confdata->sortlist[i].mask);
- }
}
/*% Frees up all the internal memory used by the config data structure, returning it to the lwres_context_t. */
@@ -196,19 +182,10 @@ lwres_conf_clear(lwres_conf_t *confdata) {
confdata->search[i] = NULL;
}
- for (i = 0; i < LWRES_CONFMAXSORTLIST; i++) {
- lwres_resetaddr(&confdata->sortlist[i].addr);
- lwres_resetaddr(&confdata->sortlist[i].mask);
- }
-
confdata->nsnext = 0;
- confdata->lwnext = 0;
confdata->domainname = NULL;
confdata->searchnxt = 0;
- confdata->sortlistnxt = 0;
- confdata->resdebug = 0;
confdata->ndots = 1;
- confdata->no_tld_query = 0;
}
static lwres_result_t
@@ -241,31 +218,6 @@ lwres_conf_parsenameserver(lwres_conf_t *confdata, FILE *fp) {
return (LWRES_R_SUCCESS);
}
-static lwres_result_t
-lwres_conf_parselwserver(lwres_conf_t *confdata, FILE *fp) {
- char word[LWRES_CONFMAXLINELEN];
- int res;
-
- if (confdata->lwnext == LWRES_CONFMAXLWSERVERS)
- return (LWRES_R_SUCCESS);
-
- res = getword(fp, word, sizeof(word));
- if (strlen(word) == 0U)
- return (LWRES_R_FAILURE); /* Nothing on line. */
- else if (res == ' ' || res == '\t')
- res = eatwhite(fp);
-
- if (res != EOF && res != '\n')
- return (LWRES_R_FAILURE); /* Extra junk on line. */
-
- res = lwres_create_addr(word,
- &confdata->lwservers[confdata->lwnext++], 1);
- if (res != LWRES_R_SUCCESS)
- return (res);
-
- return (LWRES_R_SUCCESS);
-}
-
static lwres_result_t
lwres_conf_parsedomain(lwres_conf_t *confdata, FILE *fp) {
char word[LWRES_CONFMAXLINELEN];
@@ -398,57 +350,6 @@ lwres_create_addr(const char *buffer, lwres_addr_t *addr, int convert_zero) {
return (LWRES_R_SUCCESS);
}
-static lwres_result_t
-lwres_conf_parsesortlist(lwres_conf_t *confdata, FILE *fp) {
- int delim, res, idx;
- char word[LWRES_CONFMAXLINELEN];
- char *p;
-
- delim = getword(fp, word, sizeof(word));
- if (strlen(word) == 0U)
- return (LWRES_R_FAILURE); /* Empty line after keyword. */
-
- while (strlen(word) > 0U) {
- if (confdata->sortlistnxt == LWRES_CONFMAXSORTLIST)
- return (LWRES_R_FAILURE); /* Too many values. */
-
- p = strchr(word, '/');
- if (p != NULL)
- *p++ = '\0';
-
- idx = confdata->sortlistnxt;
- res = lwres_create_addr(word, &confdata->sortlist[idx].addr, 1);
- if (res != LWRES_R_SUCCESS)
- return (res);
-
- if (p != NULL) {
- res = lwres_create_addr(p,
- &confdata->sortlist[idx].mask,
- 0);
- if (res != LWRES_R_SUCCESS)
- return (res);
- } else {
- /*
- * Make up a mask.
- */
- confdata->sortlist[idx].mask =
- confdata->sortlist[idx].addr;
-
- memset(&confdata->sortlist[idx].mask.address, 0xff,
- confdata->sortlist[idx].addr.length);
- }
-
- confdata->sortlistnxt++;
-
- if (delim == EOF || delim == '\n')
- break;
- else
- delim = getword(fp, word, sizeof(word));
- }
-
- return (LWRES_R_SUCCESS);
-}
-
static lwres_result_t
lwres_conf_parseoption(lwres_conf_t *confdata, FILE *fp) {
int delim;
@@ -461,11 +362,7 @@ lwres_conf_parseoption(lwres_conf_t *confdata, FILE *fp) {
return (LWRES_R_FAILURE); /* Empty line after keyword. */
while (strlen(word) > 0U) {
- if (strcmp("debug", word) == 0) {
- confdata->resdebug = 1;
- } else if (strcmp("no_tld_query", word) == 0) {
- confdata->no_tld_query = 1;
- } else if (strncmp("ndots:", word, 6) == 0) {
+ if (strncmp("ndots:", word, 6) == 0) {
ndots = strtol(word + 6, &p, 10);
if (*p != '\0') /* Bad string. */
return (LWRES_R_FAILURE);
@@ -509,14 +406,10 @@ lwres_conf_parse(lwres_conf_t *confdata, const char *filename) {
rval = LWRES_R_SUCCESS;
else if (strcmp(word, "nameserver") == 0)
rval = lwres_conf_parsenameserver(confdata, fp);
- else if (strcmp(word, "lwserver") == 0)
- rval = lwres_conf_parselwserver(confdata, fp);
else if (strcmp(word, "domain") == 0)
rval = lwres_conf_parsedomain(confdata, fp);
else if (strcmp(word, "search") == 0)
rval = lwres_conf_parsesearch(confdata, fp);
- else if (strcmp(word, "sortlist") == 0)
- rval = lwres_conf_parsesortlist(confdata, fp);
else if (strcmp(word, "options") == 0)
rval = lwres_conf_parseoption(confdata, fp);
else {
--
In my defence, I have been left unsupervised.
dig(1): remove a bunch of unused stuff from resolv.conf parser