From 0c7dfa144bf36cde60287483f0163455e961c2af Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 3 Feb 2001 07:01:11 +0000 Subject: Update. * hesiod/hesiod.c (hesiod_resolve): Also search HS records is errno is ECONNREFUSED. * posix/Makefile: Define MBS_SUPPORT for regex.c. --- hesiod/hesiod.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'hesiod') diff --git a/hesiod/hesiod.c b/hesiod/hesiod.c index 3a01fd0..0d68319 100644 --- a/hesiod/hesiod.c +++ b/hesiod/hesiod.c @@ -134,7 +134,7 @@ hesiod_init(void **context) { __set_errno(ENOEXEC); goto cleanup; } - + #if 0 if (res_ninit(ctx->res) < 0) goto cleanup; @@ -248,8 +248,8 @@ hesiod_resolve(void *context, const char *name, const char *type) { free(bindname); return (retvec); } - - if (errno != ENOENT) + + if (errno != ENOENT && errno != ECONNREFUSED) return (NULL); retvec = get_txt_records(ctx, C_HS, bindname); @@ -290,7 +290,7 @@ parse_config_file(struct hesiod_p *ctx, const char *filename) { */ if (!(fp = fopen(filename, "r"))) return (-1); - + while (fgets(buf, sizeof(buf), fp) != NULL) { cp = buf; if (*cp == '#' || *cp == '\n' || *cp == '\r') @@ -301,7 +301,7 @@ parse_config_file(struct hesiod_p *ctx, const char *filename) { while(*cp != ' ' && *cp != '\t' && *cp != '=') cp++; *cp++ = '\0'; - + while(*cp == ' ' || *cp == '\t' || *cp == '=') cp++; data = cp; @@ -325,7 +325,7 @@ parse_config_file(struct hesiod_p *ctx, const char *filename) { } fclose(fp); return (0); - + cleanup: fclose(fp); if (ctx->RHS) @@ -494,7 +494,7 @@ __hesiod_res_set(void *context, struct __res_state *res, static int init(struct hesiod_p *ctx) { - + if (!ctx->res && !__hesiod_res_get(ctx)) return (-1); -- cgit v1.1