[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v5 04/13] libqtest: Let socket_send() compute length
From: |
Eric Blake |
Subject: |
[Qemu-devel] [PATCH v5 04/13] libqtest: Let socket_send() compute length |
Date: |
Fri, 18 Aug 2017 16:15:33 -0500 |
Rather than make multiple callers call strlen(), it's easier if
socket_send() itself can compute a length via strlen() if none
was provided (caller passes -1). Callers that can get at the
length more efficiently are left that way.
Signed-off-by: Eric Blake <address@hidden>
---
tests/libqtest.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/tests/libqtest.c b/tests/libqtest.c
index 3f956f09fc..a6ce21d7f9 100644
--- a/tests/libqtest.c
+++ b/tests/libqtest.c
@@ -251,10 +251,13 @@ void qtest_quit(QTestState *s)
g_free(s);
}
-static void socket_send(int fd, const char *buf, size_t size)
+static void socket_send(int fd, const char *buf, ssize_t size)
{
size_t offset;
+ if (size < 0) {
+ size = strlen(buf);
+ }
offset = 0;
while (offset < size) {
ssize_t len;
@@ -274,9 +277,8 @@ static void socket_send(int fd, const char *buf, size_t
size)
static void socket_sendf(int fd, const char *fmt, va_list ap)
{
gchar *str = g_strdup_vprintf(fmt, ap);
- size_t size = strlen(str);
- socket_send(fd, str, size);
+ socket_send(fd, str, -1);
g_free(str);
}
@@ -858,7 +860,7 @@ void qtest_bufwrite(QTestState *s, uint64_t addr, const
void *data, size_t size)
bdata = g_base64_encode(data, size);
qtest_sendf(s, "b64write 0x%" PRIx64 " 0x%zx ", addr, size);
- socket_send(s->fd, bdata, strlen(bdata));
+ socket_send(s->fd, bdata, -1);
socket_send(s->fd, "\n", 1);
qtest_rsp(s, 0);
g_free(bdata);
--
2.13.5
- [Qemu-devel] [PATCH v5 02/13] qtest: Don't perform side effects inside assertion, (continued)
[Qemu-devel] [PATCH v5 03/13] libqtest: Remove dead qtest_instances variable, Eric Blake, 2017/08/18
[Qemu-devel] [PATCH v5 01/13] test-qga: Kill broken and dead QGA_TEST_SIDE_EFFECTING code, Eric Blake, 2017/08/18
[Qemu-devel] [PATCH v5 06/13] libqtest: Topologically sort functions, Eric Blake, 2017/08/18
[Qemu-devel] [PATCH v5 04/13] libqtest: Let socket_send() compute length,
Eric Blake <=
[Qemu-devel] [PATCH v5 05/13] libqtest: Use qemu_strtoul(), Eric Blake, 2017/08/18
[Qemu-devel] [PATCH v5 07/13] libqtest: Inline qtest_query_target_endianness(), Eric Blake, 2017/08/18
[Qemu-devel] [PATCH v5 10/13] libqtest: Drop qtest_init() and qtest_qmp_discard_response(), Eric Blake, 2017/08/18
[Qemu-devel] [PATCH v5 09/13] libqtest: Shorten a couple more qtest_* functions, Eric Blake, 2017/08/18
[Qemu-devel] [PATCH v5 12/13] libqtest: Use global_qtest in qtest_sendf() and qtest_rsp(), Eric Blake, 2017/08/18
[Qemu-devel] [PATCH v5 13/13] numa-test: Use hmp(), Eric Blake, 2017/08/18