(hesiod_resolve): Also search HS records is errno is ECONNREFUSED.
authordrepper <drepper>
Sat, 3 Feb 2001 07:00:34 +0000 (07:00 +0000)
committerdrepper <drepper>
Sat, 3 Feb 2001 07:00:34 +0000 (07:00 +0000)
hesiod/hesiod.c

index 3a01fd0..0d68319 100644 (file)
@@ -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);