]> xenbits.xensource.com Git - libvirt.git/commitdiff
Log the argv passed to virExec and virRun
authorCole Robinson <crobinso@redhat.com>
Wed, 5 Nov 2008 18:41:07 +0000 (18:41 +0000)
committerCole Robinson <crobinso@redhat.com>
Wed, 5 Nov 2008 18:41:07 +0000 (18:41 +0000)
ChangeLog
src/util.c

index c268d90f6da260253530a7d8000701aaf464f08b..6dde243c6bd88be8d35d1f6e42a0ca17a4ba5daa 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Wed Nov  5 13:39:00 EST 2008 Cole Robinson <crobinso@redhat.com>
+
+       * src/util.c: Log the argv passed to virExec and virRun
+
 Wed Nov  5 13:19:00 EST 2008 Cole Robinson <crobinso@redhat.com>
 
        * src/iptables.c, src/util.c, src/util.h: Move local argvToString to
index 61ad6033a9df9d3b363809d7bdbdc6fa0a13d7bb..bc05c61de02ee64a66d7e3c3cfa85698f05370b4 100644 (file)
@@ -136,14 +136,14 @@ static int virSetNonBlock(int fd) {
     return 0;
 }
 
-int
-virExec(virConnectPtr conn,
-        const char *const*argv,
-        const char *const*envp,
-        const fd_set *keepfd,
-        int *retpid,
-        int infd, int *outfd, int *errfd,
-        int flags) {
+static int
+__virExec(virConnectPtr conn,
+          const char *const*argv,
+          const char *const*envp,
+          const fd_set *keepfd,
+          int *retpid,
+          int infd, int *outfd, int *errfd,
+          int flags) {
     int pid, null, i, openmax;
     int pipeout[2] = {-1,-1};
     int pipeerr[2] = {-1,-1};
@@ -393,6 +393,27 @@ virExec(virConnectPtr conn,
     return -1;
 }
 
+int
+virExec(virConnectPtr conn,
+        const char *const*argv,
+        const char *const*envp,
+        const fd_set *keepfd,
+        int *retpid,
+        int infd, int *outfd, int *errfd,
+        int flags) {
+    char *argv_str;
+
+    if ((argv_str = virArgvToString(argv)) == NULL) {
+        ReportError(conn, VIR_ERR_NO_MEMORY, _("command debug string"));
+        return -1;
+    }
+    DEBUG0(argv_str);
+    VIR_FREE(argv_str);
+
+    return __virExec(conn, argv, envp, keepfd, retpid, infd, outfd, errfd,
+                     flags);
+}
+
 /**
  * @conn connection to report errors against
  * @argv NULL terminated argv to run
@@ -413,9 +434,17 @@ virRun(virConnectPtr conn,
        const char *const*argv,
        int *status) {
     int childpid, exitstatus, ret;
+    char *argv_str;
+
+    if ((argv_str = virArgvToString(argv)) == NULL) {
+        ReportError(conn, VIR_ERR_NO_MEMORY, _("command debug string"));
+        return -1;
+    }
+    DEBUG0(argv_str);
+    VIR_FREE(argv_str);
 
-    if ((ret = virExec(conn, argv, NULL, NULL,
-                       &childpid, -1, NULL, NULL, VIR_EXEC_NONE)) < 0)
+    if ((ret = __virExec(conn, argv, NULL, NULL,
+                         &childpid, -1, NULL, NULL, VIR_EXEC_NONE)) < 0)
         return ret;
 
     while ((ret = waitpid(childpid, &exitstatus, 0) == -1) && errno == EINTR);