about summary refs log tree commit diff
path: root/hesiod
diff options
context:
space:
mode:
Diffstat (limited to 'hesiod')
-rw-r--r--hesiod/hesiod.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/hesiod/hesiod.c b/hesiod/hesiod.c
index e0ce510866..b73aa3ce94 100644
--- a/hesiod/hesiod.c
+++ b/hesiod/hesiod.c
@@ -126,7 +126,7 @@ hesiod_init(void **context) {
 	 * If there is no default hesiod realm set, we return an
 	 * error.
 	 */
-	if (!ctx->RHS || ctx->classes[0] == 0 || ctx->classes[0] == ctx->classes[1]) {
+	if (!ctx->RHS) {
 		__set_errno(ENOEXEC);
 		goto cleanup;
 	}
@@ -327,7 +327,8 @@ parse_config_file(struct hesiod_p *ctx, const char *filename) {
 				   nother at all.  */
 				ctx->classes[0] = C_IN;
 				ctx->classes[1] = C_HS;
-			} else if (n == 1)
+			} else if (n == 1
+				   || ctx->classes[0] == ctx->classes[1])
 				ctx->classes[1] = 0;
 		}
 	}