commit dc74ba3fb13ca92ef3410b7073ab8557e8001821
parent e5dc09c4c1c67b426b2dc87390e7f51d8f707008
Author: Evgeny Grin (Karlson2k) <k2k@drgrin.dev>
Date: Mon, 20 Jul 2026 11:09:03 +0200
libtest_convenience_server_reply: fixed use of temporary files
Previously all tests with temporary files were failing in sandboxes and
on any platform with missing or restricted /tmp/.
Diffstat:
1 file changed, 3 insertions(+), 11 deletions(-)
diff --git a/src/tests/client_server/libtest_convenience_server_reply.c b/src/tests/client_server/libtest_convenience_server_reply.c
@@ -52,6 +52,7 @@
#include <errno.h>
#include <curl/curl.h>
#include <assert.h>
+#include "mhdt_tmpfile.h"
#ifndef CURL_VERSION_BITS
# define CURL_VERSION_BITS(x, y, z) ((x) << 16 | (y) << 8 | (z))
@@ -93,18 +94,17 @@ MHDT_server_reply_file (
{
const char *text = cls;
size_t tlen = strlen (text);
- char fn[] = "/tmp/mhd-test-XXXXXX";
int fd;
(void)path;
(void)method;
(void)upload_size; /* Unused */
- fd = mkstemp (fn);
+ fd = MHDT_create_tmpfile ();
if (-1 == fd)
{
fprintf (stderr,
- "Failed to mkstemp() temporary file\n");
+ "Failed to create a temporary file\n");
return MHD_action_abort_request (request);
}
if (((ssize_t)tlen) != write (fd, text, tlen))
@@ -114,14 +114,6 @@ MHDT_server_reply_file (
strerror (errno));
return MHD_action_abort_request (request);
}
- fsync (fd);
- if (0 != remove (fn))
- {
- fprintf (stderr,
- "Failed to remove() temporary file %s: %s\n",
- fn,
- strerror (errno));
- }
return MHD_action_from_response (
request,
MHD_response_from_fd (MHD_HTTP_STATUS_OK,