summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2016-12-08 07:49:44 -0500
committerNick Mathewson <nickm@torproject.org>2016-12-08 07:49:44 -0500
commit669d79d2d66ec8346fc590038367b87f72697d9f (patch)
treed059114b6ffd83db601809ca78583892242249d5
parent9ead4e926fb44f6e9e5c6a6cf599f624c1f7a802 (diff)
parent9fe6ffa58864b0719bdec9a55b84c11255fa505b (diff)
downloadtor-669d79d2d66ec8346fc590038367b87f72697d9f.tar.gz
tor-669d79d2d66ec8346fc590038367b87f72697d9f.zip
Merge branch 'maint-0.2.9' into release-0.2.9
-rw-r--r--changes/bug199604
-rw-r--r--src/or/config.c2
-rw-r--r--src/test/test_options.c18
3 files changed, 17 insertions, 7 deletions
diff --git a/changes/bug19960 b/changes/bug19960
new file mode 100644
index 0000000000..5d655859a6
--- /dev/null
+++ b/changes/bug19960
@@ -0,0 +1,4 @@
+ o Minor bugfixes (netbsd, unit tests):
+ - Stop expecting NetBSD unit tests to report success for ipfw;
+ on NetBSD, it's only pf that's supported.
+ Part of a fix for bug 19960; bugfix on 0.2.9.5-alpha.
diff --git a/src/or/config.c b/src/or/config.c
index 8568ea9d64..3693cdf83c 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -3004,7 +3004,7 @@ options_validate(or_options_t *old_options, or_options_t *options,
} else if (!strcasecmp(options->TransProxyType, "ipfw")) {
#ifndef KERNEL_MAY_SUPPORT_IPFW
/* Earlier versions of OS X have ipfw */
- REJECT("ipfw is a FreeBSD-specific"
+ REJECT("ipfw is a FreeBSD-specific "
"and OS X/Darwin-specific feature.");
#else
options->TransProxyType_parsed = TPT_IPFW;
diff --git a/src/test/test_options.c b/src/test/test_options.c
index 6770c16140..e85e11805b 100644
--- a/src/test/test_options.c
+++ b/src/test/test_options.c
@@ -1050,7 +1050,7 @@ test_options_validate__transproxy(void *ignored)
tt_int_op(ret, OP_EQ, -1);
#ifndef KERNEL_MAY_SUPPORT_IPFW
- tt_str_op(msg, OP_EQ, "ipfw is a FreeBSD-specificand OS X/Darwin-specific "
+ tt_str_op(msg, OP_EQ, "ipfw is a FreeBSD-specific and OS X/Darwin-specific "
"feature.");
#else
tt_int_op(tdata->opt->TransProxyType_parsed, OP_EQ, TPT_IPFW);
@@ -1071,7 +1071,7 @@ test_options_validate__transproxy(void *ignored)
free_options_test_data(tdata);
tdata = NULL;
-#if defined(linux)
+#if defined(__linux__)
tdata = get_options_test_data("TransProxyType tproxy\n"
"TransPort 127.0.0.1:123\n");
ret = options_validate(tdata->old_opt, tdata->opt, tdata->def_opt, 0, &msg);
@@ -1079,8 +1079,7 @@ test_options_validate__transproxy(void *ignored)
if (msg) {
TT_DIE(("Expected NULL but got '%s'", msg));
}
-#endif
-#if defined(__FreeBSD_kernel__) || defined( DARWIN ) || defined(__NetBSD__)
+#elif defined(KERNEL_MAY_SUPPORT_IPFW)
tdata = get_options_test_data("TransProxyType ipfw\n"
"TransPort 127.0.0.1:123\n");
ret = options_validate(tdata->old_opt, tdata->opt, tdata->def_opt, 0, &msg);
@@ -1088,8 +1087,7 @@ test_options_validate__transproxy(void *ignored)
if (msg) {
TT_DIE(("Expected NULL but got '%s'", msg));
}
-#endif
-#if defined(__OpenBSD__)
+#elif defined(__OpenBSD__)
tdata = get_options_test_data("TransProxyType pf-divert\n"
"TransPort 127.0.0.1:123\n");
ret = options_validate(tdata->old_opt, tdata->opt, tdata->def_opt, 0, &msg);
@@ -1097,6 +1095,14 @@ test_options_validate__transproxy(void *ignored)
if (msg) {
TT_DIE(("Expected NULL but got '%s'", msg));
}
+#elif defined(__NetBSD__)
+ tdata = get_options_test_data("TransProxyType default\n"
+ "TransPort 127.0.0.1:123\n");
+ ret = options_validate(tdata->old_opt, tdata->opt, tdata->def_opt, 0, &msg);
+ tt_int_op(ret, OP_EQ, -1);
+ if (msg) {
+ TT_DIE(("Expected NULL but got '%s'", msg));
+ }
#endif
// Assert that a test has run for some TransProxyType