[Openvpn-devel,v1] test_tls_crypt: Fix test failure on Windows
Commit Message
From: Frank Lichtenheld <frank@lichtenheld.com>
- Exclude tests that use verify_script on Windows.
We currently do not have openvpn_execve available
for Windows tests. It would also need more work
to replace the hardcoded paths.
- Use platform_gen_path instead of hard-coding /
Do to the previous change that is not strictly
necessary, but it also doesn't hurt and it fixes
at least one issue if anyone ever decides to port
this to Windows).
Change-Id: I45ddc8e350d3948b3197ae725df102d8ce73fa77
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
Acked-by: Lev Stipakov <lstipakov@gmail.com>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1781
---
This change was reviewed on Gerrit and approved by at least one
developer. I request to merge it to master.
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1781
This mail reflects revision 1 of this Change.
Acked-by according to Gerrit (reflected above):
Lev Stipakov <lstipakov@gmail.com>
@@ -811,7 +811,6 @@
target_sources(test_mbuf PRIVATE
tests/unit_tests/openvpn/mock_get_random.c
- src/openvpn/buffer.c
src/openvpn/mbuf.c
)
@@ -710,7 +710,7 @@
assert_true(tls_crypt_v2_extract_client_key(&tmp, &wrap_ctx, &tls_options));
tls_wrap_free(&wrap_ctx);
-
+#ifndef _WIN32
/* Use /bin/true as verify script */
script_security_set(2);
tls_options.tls_crypt_v2_verify_script = "/usr/bin/true";
@@ -727,11 +727,12 @@
* platform_create_temp_file() */
char non_random_tmpfile[128];
snprintf(non_random_tmpfile, sizeof(non_random_tmpfile),
- "%s/" PACKAGE "_tls_crypt_v2_metadata__%08" PRIx64 "%08" PRIx64 ".tmp",
- tls_options.tmp_dir, get_random(), get_random());
- unlink(non_random_tmpfile);
+ PACKAGE "_tls_crypt_v2_metadata__%08" PRIx64 "%08" PRIx64 ".tmp",
+ get_random(), get_random());
+ const char *tmpfile_path = platform_gen_path(tls_options.tmp_dir, non_random_tmpfile, &ctx->gc);
+ unlink(tmpfile_path);
- expect_string(__wrap_buffer_write_file, filename, non_random_tmpfile);
+ expect_string(__wrap_buffer_write_file, filename, tmpfile_path);
/* We do not write the first byte (type) to the file but rather to a
* metadata_type environment variable */
@@ -752,7 +753,7 @@
tls_options.tls_crypt_v2_verify_script = "/bin/false";
}
- expect_string(__wrap_buffer_write_file, filename, non_random_tmpfile);
+ expect_string(__wrap_buffer_write_file, filename, tmpfile_path);
expect_memory(__wrap_buffer_write_file, pem, buf_bptr(&expected_metadata), buf_len(&expected_metadata));
will_return(__wrap_buffer_write_file, true);
@@ -760,8 +761,8 @@
assert_false(tls_crypt_v2_extract_client_key(&tmp, &wrap_ctx, &tls_options));
tls_wrap_free(&wrap_ctx);
-
tls_options.tls_crypt_v2_verify_script = NULL;
+#endif
/* An outdated time should fail */
tmp = create_client_key_input(ctx, 31);