about summary refs log tree commit diff
path: root/hesiod
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2005-06-15 06:44:01 +0000
committerUlrich Drepper <drepper@redhat.com>2005-06-15 06:44:01 +0000
commit7b01092b16c2a8f3d64394ed8d984286fa970ee7 (patch)
treee626e70ad2f803445f7bb9c9ae7cf714a27ac99b /hesiod
parentb399a0c2e2014daf166a36462db9d5bd5617454c (diff)
downloadglibc-7b01092b16c2a8f3d64394ed8d984286fa970ee7.tar.gz
glibc-7b01092b16c2a8f3d64394ed8d984286fa970ee7.tar.xz
glibc-7b01092b16c2a8f3d64394ed8d984286fa970ee7.zip
* hesiod/hesiod.c (hesiod_init): Don't check for ctx->classes[0] == 0
	or both classes equal here.
	(parse_config_file): If both classes are equal, clear the second one.
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;
 		}
 	}