aboutsummaryrefslogtreecommitdiff
path: root/util
diff options
context:
space:
mode:
authorAnthony Liguori <aliguori@us.ibm.com>2013-06-28 15:48:35 -0500
committerAnthony Liguori <aliguori@us.ibm.com>2013-06-28 15:48:35 -0500
commitffeec223b55ea696567ed544016824199cd7c7bc (patch)
treed297f4d7406ae809c94d6d1ff357be08f5a247fb /util
parent2ea3e2c1e85097c45a882dbc1fbba4a7fdb3ff1c (diff)
parenta8ad4159ed7d8a442a9c049a6fd0d47aa330c2aa (diff)
downloadqemu-ffeec223b55ea696567ed544016824199cd7c7bc.zip
qemu-ffeec223b55ea696567ed544016824199cd7c7bc.tar.gz
qemu-ffeec223b55ea696567ed544016824199cd7c7bc.tar.bz2
Merge remote-tracking branch 'mjt/trivial-patches' into staging
# By Gerd Hoffmann (13) and Michael Tokarev (1) # Via Michael Tokarev * mjt/trivial-patches: doc: we use seabios, not bochs bios qemu-socket: don't leak opts on error qemu-char: report udp backend errors qemu-char: add -chardev mux support qemu-char: minor mux chardev fixes qemu-char: use ChardevBackendKind in CharDriver qemu-char: don't leak opts on error qemu-char: fix documentation for telnet+wait socket flags qemu-char: print notification to stderr qemu-char: use more specific error_setg_* variants qemu-char: check optional fields using has_* qemu-socket: catch monitor_get_fd failures qemu-socket: drop pointless allocation qemu-socket: zero-initialize SocketAddress Message-id: 1372443465-22384-1-git-send-email-mjt@msgid.tls.msk.ru Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'util')
-rw-r--r--util/qemu-sockets.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/util/qemu-sockets.c b/util/qemu-sockets.c
index 96eca2a..095716e 100644
--- a/util/qemu-sockets.c
+++ b/util/qemu-sockets.c
@@ -848,9 +848,9 @@ int unix_nonblocking_connect(const char *path,
SocketAddress *socket_parse(const char *str, Error **errp)
{
- SocketAddress *addr = NULL;
+ SocketAddress *addr;
- addr = g_new(SocketAddress, 1);
+ addr = g_new0(SocketAddress, 1);
if (strstart(str, "unix:", NULL)) {
if (str[5] == '\0') {
error_setg(errp, "invalid Unix socket address");
@@ -871,7 +871,6 @@ SocketAddress *socket_parse(const char *str, Error **errp)
}
} else {
addr->kind = SOCKET_ADDRESS_KIND_INET;
- addr->inet = g_new(InetSocketAddress, 1);
addr->inet = inet_parse(str, errp);
if (addr->inet == NULL) {
goto fail;
@@ -904,7 +903,7 @@ int socket_connect(SocketAddress *addr, Error **errp,
case SOCKET_ADDRESS_KIND_FD:
fd = monitor_get_fd(cur_mon, addr->fd->str, errp);
- if (callback) {
+ if (fd >= 0 && callback) {
qemu_set_nonblock(fd);
callback(fd, opaque);
}
@@ -964,7 +963,7 @@ int socket_dgram(SocketAddress *remote, SocketAddress *local, Error **errp)
default:
error_setg(errp, "socket type unsupported for datagram");
- return -1;
+ fd = -1;
}
qemu_opts_del(opts);
return fd;