From: Heiko Schlittermann (HS12) Date: Tue, 12 May 2015 20:01:08 +0000 (+0200) Subject: Testsuite: locate fakens relative to the config_main_directory X-Git-Tag: exim-4_86_RC1~35 X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=5f3d09836c17cb80a1953196c98371ed70396903;p=exim.git Testsuite: locate fakens relative to the config_main_directory This makes the test configs more intuitive, because the spool_directory=SPOOL/spool does not need to be there anymore, except we really need a spool directory. --- diff --git a/src/src/dns.c b/src/src/dns.c index 24f3522c7..f19d23b4c 100644 --- a/src/src/dns.c +++ b/src/src/dns.c @@ -81,8 +81,8 @@ if (len >= 13 && Ustrcmp(endname - 13, "test.fail.dns") == 0) /* Look for the fakens utility, and if it exists, call it. */ -(void)string_format(utilname, sizeof(utilname), "%s/../bin/fakens", - spool_directory); +(void)string_format(utilname, sizeof(utilname), "%s/bin/fakens", + config_main_directory); if (stat(CS utilname, &statbuf) >= 0) { @@ -90,11 +90,11 @@ if (stat(CS utilname, &statbuf) >= 0) int infd, outfd, rc; uschar *argv[5]; - DEBUG(D_dns) debug_printf("DNS lookup of %s (%s) using fakens\n", - name, dns_text_type(type)); + DEBUG(D_dns) debug_printf("DNS lookup of %s (%s) using fakens `%s'\n", + name, dns_text_type(type), utilname); argv[0] = utilname; - argv[1] = spool_directory; + argv[1] = config_main_directory; argv[2] = name; argv[3] = dns_text_type(type); argv[4] = NULL; diff --git a/test/src/fakens.c b/test/src/fakens.c index fc7848e77..33bfe4f3e 100644 --- a/test/src/fakens.c +++ b/test/src/fakens.c @@ -7,8 +7,8 @@ avoids the need to install special zones in a real nameserver. When Exim is running in its (new) test harness, DNS lookups are first passed to this program instead of to the real resolver. (With a few exceptions - see the discussion in the test suite's README file.) The program is also passed the name of the Exim -spool directory; it expects to find its "zone files" in ../dnszones relative to -that directory. Note that there is little checking in this program. The fake +spool directory; it expects to find its "zone files" in dnszones relative to +exim config_main_directory. Note that there is little checking in this program. The fake zone files are assumed to be syntactically valid. The zones that are handled are found by scanning the dnszones directory. A file @@ -601,7 +601,7 @@ if (argc != 4) /* Find the zones */ -(void)sprintf(CS buffer, "%s/../dnszones", argv[1]); +(void)sprintf(CS buffer, "%s/dnszones", argv[1]); d = opendir(CCS buffer); if (d == NULL) @@ -672,7 +672,7 @@ if (zonefile == NULL) return PASS_ON; } -(void)sprintf(CS buffer, "%s/../dnszones/%s", argv[1], zonefile); +(void)sprintf(CS buffer, "%s/dnszones/%s", argv[1], zonefile); /* Initialize the start of the response packet. We don't have to fake up everything, because we know that Exim will look only at the answer and