tests: avoid DOS line endings in PSK file
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>
This commit is contained in:
parent
3983bf1b41
commit
f1018ea0a3
@ -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)
|
||||
|
Loading…
Reference in New Issue
Block a user