The virFilePrintf function was a wrapper for fprintf() to provide
Windows portability, since gnulib's fprintf() replacement was
license restricted. This is no longer needed now we have the
g_fprintf function available.
Signed-off-by: Daniel P. Berrangé <berrange(a)redhat.com>
---
src/libvirt_private.syms | 1 -
src/util/virfile.c | 31 -----------------------------
src/util/virfile.h | 3 ---
tests/commandhelper.c | 3 +--
tests/fdstreamtest.c | 42 ++++++++++++++++++++--------------------
tests/qemusecuritytest.c | 2 +-
tests/shunloadtest.c | 2 +-
tests/ssh.c | 3 +--
tests/testutils.h | 6 ------
tests/testutilsqemu.c | 4 ++--
tests/virstringtest.c | 34 ++++++++++++++++----------------
11 files changed, 44 insertions(+), 87 deletions(-)
diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
index 56981541c5..59e1399c79 100644
--- a/src/libvirt_private.syms
+++ b/src/libvirt_private.syms
@@ -2007,7 +2007,6 @@ virFileMoveMount;
virFileNBDDeviceAssociate;
virFileOpenAs;
virFileOpenTty;
-virFilePrintf;
virFileReadAll;
virFileReadAllQuiet;
virFileReadBufQuiet;
diff --git a/src/util/virfile.c b/src/util/virfile.c
index 2ab4ccb1d5..0633a1fa8d 100644
--- a/src/util/virfile.c
+++ b/src/util/virfile.c
@@ -3331,37 +3331,6 @@ virFileRemoveLastComponent(char *path)
path[0] = '\0';
}
-/**
- * virFilePrintf:
- *
- * A replacement for fprintf() which uses g_strdup_vprintf
- * to ensure that portable string format placeholders can
- * be used, since gnulib's fprintf() replacement is not
- * LGPLV2+ compatible
- */
-int virFilePrintf(FILE *fp, const char *msg, ...)
-{
- va_list vargs;
- g_autofree char *str = NULL;
- int ret = -1;
-
- va_start(vargs, msg);
-
- str = g_strdup_vprintf(msg, vargs);
- ret = strlen(str);
-
- if (fwrite(str, 1, ret, fp) != ret) {
- virReportSystemError(errno, "%s",
- _("Could not write to stream"));
- ret = -1;
- }
-
- va_end(vargs);
-
- return ret;
-}
-
-
#ifdef __linux__
# ifndef NFS_SUPER_MAGIC
diff --git a/src/util/virfile.h b/src/util/virfile.h
index c805d87b3f..0a520a7522 100644
--- a/src/util/virfile.h
+++ b/src/util/virfile.h
@@ -293,9 +293,6 @@ char *virFileFindMountPoint(const char *type);
virBuildPathInternal(path, __VA_ARGS__, NULL)
int virBuildPathInternal(char **path, ...) G_GNUC_NULL_TERMINATED;
-int virFilePrintf(FILE *fp, const char *msg, ...)
- G_GNUC_PRINTF(2, 3);
-
typedef struct _virHugeTLBFS virHugeTLBFS;
typedef virHugeTLBFS *virHugeTLBFSPtr;
struct _virHugeTLBFS {
diff --git a/tests/commandhelper.c b/tests/commandhelper.c
index b9677f2caa..3f040be8f2 100644
--- a/tests/commandhelper.c
+++ b/tests/commandhelper.c
@@ -24,8 +24,7 @@
#include <fcntl.h>
#include <sys/stat.h>
-#include "internal.h"
-#define NO_LIBVIRT
+#define VIR_NO_GLIB_STDIO /* This file intentionally does not link to libvirt/glib */
#include "testutils.h"
#ifndef WIN32
diff --git a/tests/fdstreamtest.c b/tests/fdstreamtest.c
index 03f5520fa6..7c784a49f1 100644
--- a/tests/fdstreamtest.c
+++ b/tests/fdstreamtest.c
@@ -103,16 +103,16 @@ static int testFDStreamReadCommon(const char *scratchdir, bool
blocking)
g_usleep(20 * 1000);
goto reread;
}
- virFilePrintf(stderr, "Failed to read stream: %s\n",
- virGetLastErrorMessage());
+ fprintf(stderr, "Failed to read stream: %s\n",
+ virGetLastErrorMessage());
goto cleanup;
}
if (got == 0) {
/* Expect EOF 1/2 through last pattern */
if (i == 9 && want == (PATTERN_LEN / 2))
break;
- virFilePrintf(stderr, "Unexpected EOF block %zu want %zu\n",
- i, want);
+ fprintf(stderr, "Unexpected EOF block %zu want %zu\n",
+ i, want);
goto cleanup;
}
offset += got;
@@ -120,25 +120,25 @@ static int testFDStreamReadCommon(const char *scratchdir, bool
blocking)
}
if (i == 0) {
if (memcmp(buf, pattern + (PATTERN_LEN / 2), PATTERN_LEN / 2) != 0) {
- virFilePrintf(stderr, "Mismatched pattern data iteration
%zu\n", i);
+ fprintf(stderr, "Mismatched pattern data iteration %zu\n", i);
goto cleanup;
}
} else if (i == 9) {
if (memcmp(buf, pattern, PATTERN_LEN / 2) != 0) {
- virFilePrintf(stderr, "Mismatched pattern data iteration
%zu\n", i);
+ fprintf(stderr, "Mismatched pattern data iteration %zu\n", i);
goto cleanup;
}
} else {
if (memcmp(buf, pattern, PATTERN_LEN) != 0) {
- virFilePrintf(stderr, "Mismatched pattern data iteration
%zu\n", i);
+ fprintf(stderr, "Mismatched pattern data iteration %zu\n", i);
goto cleanup;
}
}
}
if (st->driver->streamFinish(st) != 0) {
- virFilePrintf(stderr, "Failed to finish stream: %s\n",
- virGetLastErrorMessage());
+ fprintf(stderr, "Failed to finish stream: %s\n",
+ virGetLastErrorMessage());
goto cleanup;
}
@@ -226,8 +226,8 @@ static int testFDStreamWriteCommon(const char *scratchdir, bool
blocking)
if (i == 9 &&
want == (PATTERN_LEN / 2))
break;
- virFilePrintf(stderr, "Failed to write stream: %s\n",
- virGetLastErrorMessage());
+ fprintf(stderr, "Failed to write stream: %s\n",
+ virGetLastErrorMessage());
goto cleanup;
}
offset += got;
@@ -236,8 +236,8 @@ static int testFDStreamWriteCommon(const char *scratchdir, bool
blocking)
}
if (st->driver->streamFinish(st) != 0) {
- virFilePrintf(stderr, "Failed to finish stream: %s\n",
- virGetLastErrorMessage());
+ fprintf(stderr, "Failed to finish stream: %s\n",
+ virGetLastErrorMessage());
goto cleanup;
}
@@ -252,9 +252,9 @@ static int testFDStreamWriteCommon(const char *scratchdir, bool
blocking)
want = PATTERN_LEN;
if ((got = saferead(fd, buf, want)) != want) {
- virFilePrintf(stderr,
- "Short read from data, i=%zu got=%zu want=%zu\n",
- i, got, want);
+ fprintf(stderr,
+ "Short read from data, i=%zu got=%zu want=%zu\n",
+ i, got, want);
goto cleanup;
}
@@ -262,22 +262,22 @@ static int testFDStreamWriteCommon(const char *scratchdir, bool
blocking)
size_t j;
for (j = 0; j < (PATTERN_LEN / 2); j++) {
if (buf[j] != 0) {
- virFilePrintf(stderr, "Mismatched pattern data iteration
%zu\n", i);
+ fprintf(stderr, "Mismatched pattern data iteration %zu\n",
i);
goto cleanup;
}
}
if (memcmp(buf + (PATTERN_LEN / 2), pattern, PATTERN_LEN / 2) != 0) {
- virFilePrintf(stderr, "Mismatched pattern data iteration
%zu\n", i);
+ fprintf(stderr, "Mismatched pattern data iteration %zu\n", i);
goto cleanup;
}
} else if (i == 9) {
if (memcmp(buf, pattern, PATTERN_LEN / 2) != 0) {
- virFilePrintf(stderr, "Mismatched pattern data iteration
%zu\n", i);
+ fprintf(stderr, "Mismatched pattern data iteration %zu\n", i);
goto cleanup;
}
} else {
if (memcmp(buf, pattern, PATTERN_LEN) != 0) {
- virFilePrintf(stderr, "Mismatched pattern data iteration
%zu\n", i);
+ fprintf(stderr, "Mismatched pattern data iteration %zu\n", i);
goto cleanup;
}
}
@@ -320,7 +320,7 @@ mymain(void)
int ret = 0;
if (!g_mkdtemp(scratchdir)) {
- virFilePrintf(stderr, "Cannot create fdstreamdir");
+ fprintf(stderr, "Cannot create fdstreamdir");
abort();
}
diff --git a/tests/qemusecuritytest.c b/tests/qemusecuritytest.c
index 4b5bfabeba..a1ef9d8802 100644
--- a/tests/qemusecuritytest.c
+++ b/tests/qemusecuritytest.c
@@ -146,7 +146,7 @@ mymain(void)
VIR_SECURITY_MANAGER_PRIVILEGED |
VIR_SECURITY_MANAGER_DYNAMIC_OWNERSHIP,
NULL))) {
- virFilePrintf(stderr, "Cannot initialize DAC security driver");
+ fprintf(stderr, "Cannot initialize DAC security driver");
ret = -1;
goto cleanup;
}
diff --git a/tests/shunloadtest.c b/tests/shunloadtest.c
index 65c627ed17..b377c07294 100644
--- a/tests/shunloadtest.c
+++ b/tests/shunloadtest.c
@@ -40,7 +40,7 @@
#include <config.h>
-#define NO_LIBVIRT /* This file intentionally does not link to libvirt */
+#define VIR_NO_GLIB_STDIO /* This file intentionally does not link to libvirt/glib */
#include "testutils.h"
#ifdef linux
diff --git a/tests/ssh.c b/tests/ssh.c
index 58148fef77..415dfbdb25 100644
--- a/tests/ssh.c
+++ b/tests/ssh.c
@@ -18,8 +18,7 @@
#include <config.h>
-#include "internal.h"
-#define NO_LIBVIRT /* This file intentionally does not link to libvirt */
+#define VIR_NO_GLIB_STDIO /* This file intentionally does not link to libvirt/glib */
#include "testutils.h"
#ifndef WIN32
diff --git a/tests/testutils.h b/tests/testutils.h
index ad62dfb647..c1b365ab0d 100644
--- a/tests/testutils.h
+++ b/tests/testutils.h
@@ -30,12 +30,6 @@
#define EXIT_AM_SKIP 77 /* tell Automake we're skipping a test */
#define EXIT_AM_HARDFAIL 99 /* tell Automake that the framework is broken */
-/* Work around lack of gnulib support for fprintf %z */
-#ifndef NO_LIBVIRT
-# undef fprintf
-# define fprintf virFilePrintf
-#endif
-
/* Makefile.am provides these two definitions */
#if !defined(abs_srcdir) || !defined(abs_builddir)
# error Fix Makefile.am
diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c
index c25aa1f705..c17e284930 100644
--- a/tests/testutilsqemu.c
+++ b/tests/testutilsqemu.c
@@ -405,14 +405,14 @@ int qemuTestDriverInit(virQEMUDriver *driver)
driver->config->channelTargetDir = g_strdup("/tmp/channel");
if (!g_mkdtemp(statedir)) {
- virFilePrintf(stderr, "Cannot create fake stateDir");
+ fprintf(stderr, "Cannot create fake stateDir");
goto error;
}
driver->config->stateDir = g_strdup(statedir);
if (!g_mkdtemp(configdir)) {
- virFilePrintf(stderr, "Cannot create fake configDir");
+ fprintf(stderr, "Cannot create fake configDir");
goto error;
}
diff --git a/tests/virstringtest.c b/tests/virstringtest.c
index 88f50185e5..c87e1b9bec 100644
--- a/tests/virstringtest.c
+++ b/tests/virstringtest.c
@@ -58,16 +58,16 @@ static int testStreq(const void *args)
strneq_rv = STRNEQ_NULLABLE(data->a, data->b);
if (streq_rv != equal) {
- virFilePrintf(stderr,
- "STREQ not working correctly. Expected %d got %d",
- (int) equal, (int) streq_rv);
+ fprintf(stderr,
+ "STREQ not working correctly. Expected %d got %d",
+ (int) equal, (int) streq_rv);
return -1;
}
if (strneq_rv == equal) {
- virFilePrintf(stderr,
- "STRNEQ not working correctly. Expected %d got %d",
- (int) equal, (int) strneq_rv);
+ fprintf(stderr,
+ "STRNEQ not working correctly. Expected %d got %d",
+ (int) equal, (int) strneq_rv);
return -1;
}
@@ -108,7 +108,7 @@ static int testSplit(const void *args)
tmp2 = data->tokens;
while (*tmp1 && *tmp2) {
if (STRNEQ(*tmp1, *tmp2)) {
- virFilePrintf(stderr, "Mismatch '%s' vs '%s'\n",
*tmp1, *tmp2);
+ fprintf(stderr, "Mismatch '%s' vs '%s'\n", *tmp1,
*tmp2);
goto cleanup;
}
tmp1++;
@@ -116,19 +116,19 @@ static int testSplit(const void *args)
exptokens++;
}
if (*tmp1) {
- virFilePrintf(stderr, "Too many pieces returned\n");
+ fprintf(stderr, "Too many pieces returned\n");
goto cleanup;
}
if (*tmp2) {
- virFilePrintf(stderr, "Too few pieces returned\n");
+ fprintf(stderr, "Too few pieces returned\n");
goto cleanup;
}
if (ntokens != exptokens) {
- virFilePrintf(stderr,
- "Returned token count (%zu) doesn't match "
- "expected count (%zu)",
- ntokens, exptokens);
+ fprintf(stderr,
+ "Returned token count (%zu) doesn't match "
+ "expected count (%zu)",
+ ntokens, exptokens);
goto cleanup;
}
@@ -151,7 +151,7 @@ static int testJoin(const void *args)
return -1;
}
if (STRNEQ(got, data->string)) {
- virFilePrintf(stderr, "Mismatch '%s' vs '%s'\n", got,
data->string);
+ fprintf(stderr, "Mismatch '%s' vs '%s'\n", got,
data->string);
goto cleanup;
}
@@ -186,7 +186,7 @@ static int testAdd(const void *args)
}
if (STRNEQ(got, data->string)) {
- virFilePrintf(stderr, "Mismatch '%s' vs '%s'\n", got,
data->string);
+ fprintf(stderr, "Mismatch '%s' vs '%s'\n", got,
data->string);
goto cleanup;
}
@@ -215,13 +215,13 @@ static int testRemove(const void *args)
for (i = 0; data->tokens[i]; i++) {
virStringListRemove(&list, data->tokens[i]);
if (virStringListHasString((const char **) list, data->tokens[i])) {
- virFilePrintf(stderr, "Not removed %s", data->tokens[i]);
+ fprintf(stderr, "Not removed %s", data->tokens[i]);
goto cleanup;
}
}
if (list && list[0]) {
- virFilePrintf(stderr, "Not removed all tokens: %s", list[0]);
+ fprintf(stderr, "Not removed all tokens: %s", list[0]);
goto cleanup;
}
--
2.24.1