From: Kevin Wolf <kwolf@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com, pbonzini@redhat.com
Subject: [Qemu-devel] [PATCH 03/11] qemu-socket: Make socket_optslist public
Date: Mon, 18 Mar 2013 18:23:53 +0100 [thread overview]
Message-ID: <1363627441-8297-4-git-send-email-kwolf@redhat.com> (raw)
In-Reply-To: <1363627441-8297-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>
---
include/qemu/sockets.h | 2 ++
util/qemu-sockets.c | 22 +++++++++++-----------
2 files changed, 13 insertions(+), 11 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..5964e0f 100644
--- a/util/qemu-sockets.c
+++ b/util/qemu-sockets.c
@@ -34,9 +34,9 @@
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),
+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-18 17:24 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-18 17:23 [Qemu-devel] [PATCH 00/11] block: Driver-specific options for protocols Kevin Wolf
2013-03-18 17:23 ` [Qemu-devel] [PATCH 01/11] block: Add options QDict to bdrv_file_open() prototypes Kevin Wolf
2013-03-19 15:40 ` Eric Blake
2013-03-18 17:23 ` [Qemu-devel] [PATCH 02/11] block: Pass bdrv_file_open() options to block drivers Kevin Wolf
2013-03-19 17:48 ` Eric Blake
2013-03-19 18:05 ` Kevin Wolf
2013-03-19 19:37 ` Eric Blake
2013-03-18 17:23 ` Kevin Wolf [this message]
2013-03-19 19:51 ` [Qemu-devel] [PATCH 03/11] qemu-socket: Make socket_optslist public Eric Blake
2013-03-18 17:23 ` [Qemu-devel] [PATCH 04/11] nbd: Keep hostname and port separate Kevin Wolf
2013-03-19 20:56 ` Eric Blake
2013-03-18 17:23 ` [Qemu-devel] [PATCH 05/11] nbd: Remove unused functions Kevin Wolf
2013-03-19 20:58 ` Eric Blake
2013-03-18 17:23 ` [Qemu-devel] [PATCH 06/11] nbd: Accept -drive options for the network connection Kevin Wolf
2013-03-19 21:44 ` Eric Blake
2013-03-18 17:23 ` [Qemu-devel] [PATCH 07/11] block: Introduce .bdrv_parse_filename callback Kevin Wolf
2013-03-19 22:04 ` Eric Blake
2013-03-18 17:23 ` [Qemu-devel] [PATCH 08/11] block: Rename variable to avoid shadowing Kevin Wolf
2013-03-20 2:07 ` Eric Blake
2013-03-20 8:51 ` Kevin Wolf
2013-03-18 17:23 ` [Qemu-devel] [PATCH 09/11] block: Make find_image_format safe with NULL filename Kevin Wolf
2013-03-20 2:14 ` Eric Blake
2013-03-20 8:48 ` Kevin Wolf
2013-03-18 17:24 ` [Qemu-devel] [PATCH 10/11] block: Allow omitting the file name when using driver-specific options Kevin Wolf
2013-03-20 2:27 ` Eric Blake
2013-03-20 18:37 ` Kevin Wolf
2013-03-18 17:24 ` [Qemu-devel] [PATCH 11/11] nbd: Use default port if only host is specified Kevin Wolf
2013-03-20 2:29 ` Eric Blake
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=1363627441-8297-4-git-send-email-kwolf@redhat.com \
--to=kwolf@redhat.com \
--cc=pbonzini@redhat.com \
--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 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).