[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 09/20] tests: avoid DOS line endings in PSK file
From: |
Daniel P . Berrangé |
Subject: |
[PULL 09/20] tests: avoid DOS line endings in PSK file |
Date: |
Thu, 27 Oct 2022 18:30:52 +0100 |
Using FILE * APIs for writing the PSK file results in translation from
UNIX to DOS line endings on Windows. When the crypto PSK code later
loads the credentials the stray \r will result in failure to load the
PSK credentials into GNUTLS.
Rather than switching the FILE* APIs to open in binary format, just
switch to the more concise g_file_set_contents API.
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---
tests/unit/crypto-tls-psk-helpers.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/tests/unit/crypto-tls-psk-helpers.c
b/tests/unit/crypto-tls-psk-helpers.c
index 511e08cc9c..c6cc740772 100644
--- a/tests/unit/crypto-tls-psk-helpers.c
+++ b/tests/unit/crypto-tls-psk-helpers.c
@@ -27,15 +27,14 @@
static void
test_tls_psk_init_common(const char *pskfile, const char *user, const char
*key)
{
- FILE *fp;
+ g_autoptr(GError) gerr = NULL;
+ g_autofree char *line = g_strdup_printf("%s:%s\n", user, key);
- fp = fopen(pskfile, "w");
- if (fp == NULL) {
- g_critical("Failed to create pskfile %s: %s", pskfile,
strerror(errno));
+ g_file_set_contents(pskfile, line, strlen(line), &gerr);
+ if (gerr != NULL) {
+ g_critical("Failed to create pskfile %s: %s", pskfile, gerr->message);
abort();
}
- fprintf(fp, "%s:%s\n", user, key);
- fclose(fp);
}
void test_tls_psk_init(const char *pskfile)
--
2.37.3
- [PULL 00/20] Crypto and I/O patches, Daniel P . Berrangé, 2022/10/27
- [PULL 04/20] io/channel-watch: Drop the unnecessary cast, Daniel P . Berrangé, 2022/10/27
- [PULL 03/20] io/channel-watch: Drop a superfluous '#ifdef WIN32', Daniel P . Berrangé, 2022/10/27
- [PULL 08/20] crypto: check for and report errors setting PSK credentials, Daniel P . Berrangé, 2022/10/27
- [PULL 01/20] crypto/luks: Support creating LUKS image on Darwin, Daniel P . Berrangé, 2022/10/27
- [PULL 05/20] io/channel-watch: Fix socket watch on Windows, Daniel P . Berrangé, 2022/10/27
- [PULL 02/20] util/qemu-sockets: Use g_get_tmp_dir() to get the directory for temporary files, Daniel P . Berrangé, 2022/10/27
- [PULL 09/20] tests: avoid DOS line endings in PSK file,
Daniel P . Berrangé <=
- [PULL 10/20] crypto: sanity check that LUKS header strings are NUL-terminated, Daniel P . Berrangé, 2022/10/27
- [PULL 11/20] crypto: enforce that LUKS stripes is always a fixed value, Daniel P . Berrangé, 2022/10/27
- [PULL 14/20] crypto: strengthen the check for key slots overlapping with LUKS header, Daniel P . Berrangé, 2022/10/27
- [PULL 15/20] crypto: check that LUKS PBKDF2 iterations count is non-zero, Daniel P . Berrangé, 2022/10/27
- [PULL 07/20] scripts: check if .git exists before checking submodule status, Daniel P . Berrangé, 2022/10/27
- [PULL 06/20] seccomp: Get actual errno value from failed seccomp functions, Daniel P . Berrangé, 2022/10/27
- [PULL 13/20] crypto: validate that LUKS payload doesn't overlap with header, Daniel P . Berrangé, 2022/10/27
- [PULL 16/20] crypto: split LUKS header definitions off into file, Daniel P . Berrangé, 2022/10/27
- [PULL 17/20] crypto: split off helpers for converting LUKS header endianess, Daniel P . Berrangé, 2022/10/27
- [PULL 20/20] crypto: add test cases for many malformed LUKS header scenarios, Daniel P . Berrangé, 2022/10/27