qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] Fix output of uninitialized strings
@ 2009-05-19 16:51 Kevin Wolf
  0 siblings, 0 replies; only message in thread
From: Kevin Wolf @ 2009-05-19 16:51 UTC (permalink / raw)
  To: qemu-devel; +Cc: Kevin Wolf

Commit ffad4116b96e29e0fbe892806f97c0a6c903d30d removed the "scratch buffer"
from check_params, but didn't care for the error messages which actually
included this string to tell the user which option was wrong. Now this string
is uninitialized, so this patch removes it from the message.

This means that the user is only told the whole parameter string and has to
pick the wrong option by himself as the callers of check_params can't know this
value any more. An alternative approach would be to revert that commit and do
whatever is needed to fix the original problem without changing check_params.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
---
 net.c |   30 ++++++++++--------------------
 vl.c  |    3 +--
 2 files changed, 11 insertions(+), 22 deletions(-)

diff --git a/net.c b/net.c
index d556015..7a9eb90 100644
--- a/net.c
+++ b/net.c
@@ -1792,8 +1792,7 @@ int net_client_init(const char *device, const char *p)
         int idx = nic_get_free_idx();
 
         if (check_params(nic_params, p) < 0) {
-            fprintf(stderr, "qemu: invalid parameter '%s' in '%s'\n",
-                    buf, p);
+            fprintf(stderr, "qemu: invalid parameter in '%s'\n", p);
             return -1;
         }
         if (idx == -1 || nb_nics >= MAX_NICS) {
@@ -1843,8 +1842,7 @@ int net_client_init(const char *device, const char *p)
             "vlan", "name", "hostname", "restrict", "ip", NULL
         };
         if (check_params(slirp_params, p) < 0) {
-            fprintf(stderr, "qemu: invalid parameter '%s' in '%s'\n",
-                    buf, p);
+            fprintf(stderr, "qemu: invalid parameter in '%s'\n", p);
             return -1;
         }
         if (get_param_value(buf, sizeof(buf), "hostname", p)) {
@@ -1894,8 +1892,7 @@ int net_client_init(const char *device, const char *p)
         char ifname[64];
 
         if (check_params(tap_params, p) < 0) {
-            fprintf(stderr, "qemu: invalid parameter '%s' in '%s'\n",
-                    buf, p);
+            fprintf(stderr, "qemu: invalid parameter in '%s'\n", p);
             return -1;
         }
         if (get_param_value(ifname, sizeof(ifname), "ifname", p) <= 0) {
@@ -1915,8 +1912,7 @@ int net_client_init(const char *device, const char *p)
         vlan->nb_host_devs++;
         if (get_param_value(buf, sizeof(buf), "fd", p) > 0) {
             if (check_params(fd_params, p) < 0) {
-                fprintf(stderr, "qemu: invalid parameter '%s' in '%s'\n",
-                        buf, p);
+                fprintf(stderr, "qemu: invalid parameter in '%s'\n", p);
                 return -1;
             }
             fd = strtol(buf, NULL, 0);
@@ -1928,8 +1924,7 @@ int net_client_init(const char *device, const char *p)
                 "vlan", "name", "ifname", "script", "downscript", NULL
             };
             if (check_params(tap_params, p) < 0) {
-                fprintf(stderr, "qemu: invalid parameter '%s' in '%s'\n",
-                        buf, p);
+                fprintf(stderr, "qemu: invalid parameter in '%s'\n", p);
                 return -1;
             }
             if (get_param_value(ifname, sizeof(ifname), "ifname", p) <= 0) {
@@ -1949,8 +1944,7 @@ int net_client_init(const char *device, const char *p)
         if (get_param_value(buf, sizeof(buf), "fd", p) > 0) {
             int fd;
             if (check_params(fd_params, p) < 0) {
-                fprintf(stderr, "qemu: invalid parameter '%s' in '%s'\n",
-                        buf, p);
+                fprintf(stderr, "qemu: invalid parameter in '%s'\n", p);
                 return -1;
             }
             fd = strtol(buf, NULL, 0);
@@ -1962,8 +1956,7 @@ int net_client_init(const char *device, const char *p)
                 "vlan", "name", "listen", NULL
             };
             if (check_params(listen_params, p) < 0) {
-                fprintf(stderr, "qemu: invalid parameter '%s' in '%s'\n",
-                        buf, p);
+                fprintf(stderr, "qemu: invalid parameter in '%s'\n", p);
                 return -1;
             }
             ret = net_socket_listen_init(vlan, device, name, buf);
@@ -1972,8 +1965,7 @@ int net_client_init(const char *device, const char *p)
                 "vlan", "name", "connect", NULL
             };
             if (check_params(connect_params, p) < 0) {
-                fprintf(stderr, "qemu: invalid parameter '%s' in '%s'\n",
-                        buf, p);
+                fprintf(stderr, "qemu: invalid parameter in '%s'\n", p);
                 return -1;
             }
             ret = net_socket_connect_init(vlan, device, name, buf);
@@ -1982,8 +1974,7 @@ int net_client_init(const char *device, const char *p)
                 "vlan", "name", "mcast", NULL
             };
             if (check_params(mcast_params, p) < 0) {
-                fprintf(stderr, "qemu: invalid parameter '%s' in '%s'\n",
-                        buf, p);
+                fprintf(stderr, "qemu: invalid parameter in '%s'\n", p);
                 return -1;
             }
             ret = net_socket_mcast_init(vlan, device, name, buf);
@@ -2003,8 +1994,7 @@ int net_client_init(const char *device, const char *p)
 	int vde_port, vde_mode;
 
         if (check_params(vde_params, p) < 0) {
-            fprintf(stderr, "qemu: invalid parameter '%s' in '%s'\n",
-                    buf, p);
+            fprintf(stderr, "qemu: invalid parameter in '%s'\n", p);
             return -1;
         }
         vlan->nb_host_devs++;
diff --git a/vl.c b/vl.c
index 40b1d8b..34ced0f 100644
--- a/vl.c
+++ b/vl.c
@@ -2260,8 +2260,7 @@ int drive_init(struct drive_opt *arg, int snapshot, void *opaque)
                                            NULL };
 
     if (check_params(params, str) < 0) {
-         fprintf(stderr, "qemu: unknown parameter '%s' in '%s'\n",
-                         buf, str);
+         fprintf(stderr, "qemu: unknown parameter in '%s'\n", str);
          return -1;
     }
 
-- 
1.6.0.6

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2009-05-19 16:52 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-05-19 16:51 [Qemu-devel] [PATCH] Fix output of uninitialized strings Kevin Wolf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).