From: Kevin Wolf <kwolf@redhat.com>
To: anthony@codemonkey.ws
Cc: kwolf@redhat.com, qemu-devel@nongnu.org
Subject: [Qemu-devel] [PATCH 05/14] qemu-socket: Make socket_optslist public
Date: Fri, 22 Mar 2013 18:41:14 +0100 [thread overview]
Message-ID: <1363974083-28440-6-git-send-email-kwolf@redhat.com> (raw)
In-Reply-To: <1363974083-28440-1-git-send-email-kwolf@redhat.com>
Allow other users to create the QemuOpts needed for inet_connect_opts().
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
---
include/qemu/sockets.h | 2 ++
util/qemu-sockets.c | 24 ++++++++++++------------
2 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/include/qemu/sockets.h b/include/qemu/sockets.h
index ae5c21c..21846f9 100644
--- a/include/qemu/sockets.h
+++ b/include/qemu/sockets.h
@@ -30,6 +30,8 @@ int inet_aton(const char *cp, struct in_addr *ia);
#include "qapi/error.h"
#include "qapi/qmp/qerror.h"
+extern QemuOptsList socket_optslist;
+
/* misc helpers */
int qemu_socket(int domain, int type, int protocol);
int qemu_accept(int s, struct sockaddr *addr, socklen_t *addrlen);
diff --git a/util/qemu-sockets.c b/util/qemu-sockets.c
index 83e4e08..39717d0 100644
--- a/util/qemu-sockets.c
+++ b/util/qemu-sockets.c
@@ -33,10 +33,10 @@
static const int on=1, off=0;
-/* used temporarely until all users are converted to QemuOpts */
-static QemuOptsList dummy_opts = {
- .name = "dummy",
- .head = QTAILQ_HEAD_INITIALIZER(dummy_opts.head),
+/* used temporarily until all users are converted to QemuOpts */
+QemuOptsList socket_optslist = {
+ .name = "socket",
+ .head = QTAILQ_HEAD_INITIALIZER(socket_optslist.head),
.desc = {
{
.name = "path",
@@ -583,7 +583,7 @@ int inet_listen(const char *str, char *ostr, int olen,
addr = inet_parse(str, errp);
if (addr != NULL) {
- opts = qemu_opts_create_nofail(&dummy_opts);
+ opts = qemu_opts_create_nofail(&socket_optslist);
inet_addr_to_opts(opts, addr);
qapi_free_InetSocketAddress(addr);
sock = inet_listen_opts(opts, port_offset, errp);
@@ -656,7 +656,7 @@ int inet_nonblocking_connect(const char *str,
addr = inet_parse(str, errp);
if (addr != NULL) {
- opts = qemu_opts_create_nofail(&dummy_opts);
+ opts = qemu_opts_create_nofail(&socket_optslist);
inet_addr_to_opts(opts, addr);
qapi_free_InetSocketAddress(addr);
sock = inet_connect_opts(opts, errp, callback, opaque);
@@ -799,7 +799,7 @@ int unix_listen(const char *str, char *ostr, int olen, Error **errp)
char *path, *optstr;
int sock, len;
- opts = qemu_opts_create_nofail(&dummy_opts);
+ opts = qemu_opts_create_nofail(&socket_optslist);
optstr = strchr(str, ',');
if (optstr) {
@@ -827,7 +827,7 @@ int unix_connect(const char *path, Error **errp)
QemuOpts *opts;
int sock;
- opts = qemu_opts_create_nofail(&dummy_opts);
+ opts = qemu_opts_create_nofail(&socket_optslist);
qemu_opt_set(opts, "path", path);
sock = unix_connect_opts(opts, errp, NULL, NULL);
qemu_opts_del(opts);
@@ -844,7 +844,7 @@ int unix_nonblocking_connect(const char *path,
g_assert(callback != NULL);
- opts = qemu_opts_create_nofail(&dummy_opts);
+ opts = qemu_opts_create_nofail(&socket_optslist);
qemu_opt_set(opts, "path", path);
sock = unix_connect_opts(opts, errp, callback, opaque);
qemu_opts_del(opts);
@@ -895,7 +895,7 @@ int socket_connect(SocketAddress *addr, Error **errp,
QemuOpts *opts;
int fd;
- opts = qemu_opts_create_nofail(&dummy_opts);
+ opts = qemu_opts_create_nofail(&socket_optslist);
switch (addr->kind) {
case SOCKET_ADDRESS_KIND_INET:
inet_addr_to_opts(opts, addr->inet);
@@ -926,7 +926,7 @@ int socket_listen(SocketAddress *addr, Error **errp)
QemuOpts *opts;
int fd;
- opts = qemu_opts_create_nofail(&dummy_opts);
+ opts = qemu_opts_create_nofail(&socket_optslist);
switch (addr->kind) {
case SOCKET_ADDRESS_KIND_INET:
inet_addr_to_opts(opts, addr->inet);
@@ -954,7 +954,7 @@ int socket_dgram(SocketAddress *remote, SocketAddress *local, Error **errp)
QemuOpts *opts;
int fd;
- opts = qemu_opts_create_nofail(&dummy_opts);
+ opts = qemu_opts_create_nofail(&socket_optslist);
switch (remote->kind) {
case SOCKET_ADDRESS_KIND_INET:
qemu_opt_set(opts, "host", remote->inet->host);
--
1.8.1.4
next prev parent reply other threads:[~2013-03-22 17:41 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-22 17:41 [Qemu-devel] [PULL 00/14] Block patches Kevin Wolf
2013-03-22 17:41 ` [Qemu-devel] [PATCH 01/14] Revert "block: complete all IOs before .bdrv_truncate" Kevin Wolf
2013-03-22 17:41 ` [Qemu-devel] [PATCH 02/14] block: complete all IOs before resizing a device Kevin Wolf
2013-03-22 17:41 ` [Qemu-devel] [PATCH 03/14] block: Add options QDict to bdrv_file_open() prototypes Kevin Wolf
2013-03-23 17:49 ` Peter Maydell
2013-03-22 17:41 ` [Qemu-devel] [PATCH 04/14] block: Pass bdrv_file_open() options to block drivers Kevin Wolf
2013-03-22 17:41 ` Kevin Wolf [this message]
2013-03-22 17:41 ` [Qemu-devel] [PATCH 06/14] nbd: Keep hostname and port separate Kevin Wolf
2013-03-22 22:46 ` Paolo Bonzini
2013-03-25 9:09 ` Kevin Wolf
2013-03-22 17:41 ` [Qemu-devel] [PATCH 07/14] nbd: Remove unused functions Kevin Wolf
2013-03-22 17:41 ` [Qemu-devel] [PATCH 08/14] nbd: Accept -drive options for the network connection Kevin Wolf
2013-03-22 22:50 ` Paolo Bonzini
2013-03-22 17:41 ` [Qemu-devel] [PATCH 09/14] block: Introduce .bdrv_parse_filename callback Kevin Wolf
2013-03-22 17:41 ` [Qemu-devel] [PATCH 10/14] block: Rename variable to avoid shadowing Kevin Wolf
2013-03-22 17:41 ` [Qemu-devel] [PATCH 11/14] block: Make find_image_format safe with NULL filename Kevin Wolf
2013-03-22 17:41 ` [Qemu-devel] [PATCH 12/14] block: Allow omitting the file name when using driver-specific options Kevin Wolf
2013-03-22 17:41 ` [Qemu-devel] [PATCH 13/14] nbd: Use default port if only host is specified Kevin Wolf
2013-03-22 17:41 ` [Qemu-devel] [PATCH 14/14] nbd: Check against invalid option combinations Kevin Wolf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1363974083-28440-6-git-send-email-kwolf@redhat.com \
--to=kwolf@redhat.com \
--cc=anthony@codemonkey.ws \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.