]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
virCommandSetSendBuffer: Take double pointer of @buffer
authorMichal Privoznik <mprivozn@redhat.com>
Tue, 22 Mar 2022 11:12:02 +0000 (12:12 +0100)
committerMichal Privoznik <mprivozn@redhat.com>
Thu, 1 Dec 2022 13:22:39 +0000 (14:22 +0100)
The virCommandSetSendBuffer() function consumes passed @buffer,
but takes it only as plain pointer. Switch to a double pointer to
make this obvious. This allows us then to drop all
g_steal_pointer() in callers.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Jonathon Jongsma <jjongsma@redhat.com>
src/qemu/qemu_tpm.c
src/util/vircommand.c
src/util/vircommand.h
tests/commandtest.c

index bdce060db800f523c5602f88c5566b29f206e7fd..d2f5bfb05535e7938217fea0920fd66dfa46fbf0 100644 (file)
@@ -265,7 +265,7 @@ qemuTPMSetupEncryption(const unsigned char *secretuuid,
                                  &secret, &secret_len) < 0)
         return -1;
 
-    *fd = virCommandSetSendBuffer(cmd, g_steal_pointer(&secret), secret_len);
+    *fd = virCommandSetSendBuffer(cmd, &secret, secret_len);
     return 0;
 }
 
index 4f60432c0ac197af04a25ab8c0b1792112933cf6..0917bc9cfb4cf89728586030d7c6aab987cef2a6 100644 (file)
@@ -1699,10 +1699,10 @@ virCommandFreeSendBuffers(virCommand *cmd)
  */
 int
 virCommandSetSendBuffer(virCommand *cmd,
-                        unsigned char *buffer,
+                        unsigned char **buffer,
                         size_t buflen)
 {
-    g_autofree unsigned char *localbuf = g_steal_pointer(&buffer);
+    g_autofree unsigned char *localbuf = g_steal_pointer(buffer);
     int pipefd[2] = { -1, -1 };
     size_t i;
 
@@ -2901,7 +2901,7 @@ int virCommandHandshakeNotify(virCommand *cmd)
 #else /* WIN32 */
 int
 virCommandSetSendBuffer(virCommand *cmd,
-                        unsigned char *buffer G_GNUC_UNUSED,
+                        unsigned char **buffer G_GNUC_UNUSED,
                         size_t buflen G_GNUC_UNUSED)
 {
     if (virCommandHasError(cmd))
index 98788bcbf77b132c66a34e7f445808612c26945f..e0002103b6c3ebf07620400e7fd0c59235aab65d 100644 (file)
@@ -132,7 +132,7 @@ void virCommandSetWorkingDirectory(virCommand *cmd,
                                    const char *pwd) ATTRIBUTE_NONNULL(2);
 
 int virCommandSetSendBuffer(virCommand *cmd,
-                            unsigned char *buffer,
+                            unsigned char **buffer,
                             size_t buflen)
     ATTRIBUTE_NONNULL(2);
 
index 9bbf6fb2607c750ef34ef87d8a0867c3b4f1b0e4..8c5a9245a11a08dcd0f55d805bd6b4efcf2aff75 100644 (file)
@@ -1075,8 +1075,8 @@ static int test27(const void *unused G_GNUC_UNUSED)
     errexpect = g_strdup_printf(TEST27_ERREXPECT_TEMP,
                                 buffer0, buffer1, buffer2);
 
-    buf1fd = virCommandSetSendBuffer(cmd, g_steal_pointer(&buffer1), buflen - 1);
-    buf2fd = virCommandSetSendBuffer(cmd, g_steal_pointer(&buffer2), buflen - 1);
+    buf1fd = virCommandSetSendBuffer(cmd, &buffer1, buflen - 1);
+    buf2fd = virCommandSetSendBuffer(cmd, &buffer2, buflen - 1);
 
     virCommandAddArg(cmd, "--readfd");
     virCommandAddArgFormat(cmd, "%d", buf1fd);