From: "Daniel P. Berrange" <berrange@redhat.com>
To: qemu-devel@nongnu.org
Cc: Peter Maydell <peter.maydell@linaro.org>,
Felipe Franciosi <felipe@nutanix.com>,
"Daniel P . Berrange" <berrange@redhat.com>
Subject: [Qemu-devel] [PULL v1 02/10] io: Use qio_channel_has_feature() where applicable
Date: Thu, 20 Oct 2016 14:47:58 +0100 [thread overview]
Message-ID: <1476971286-10612-3-git-send-email-berrange@redhat.com> (raw)
In-Reply-To: <1476971286-10612-1-git-send-email-berrange@redhat.com>
From: Felipe Franciosi <felipe@nutanix.com>
Parts of the code have been testing QIOChannel features directly with a
logical AND. This patch makes it all consistent by using the
qio_channel_has_feature() function to test if a feature is present.
Signed-off-by: Felipe Franciosi <felipe@nutanix.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
---
io/channel-socket.c | 3 ++-
io/channel-tls.c | 2 +-
io/channel-websock.c | 2 +-
io/channel.c | 4 ++--
4 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/io/channel-socket.c b/io/channel-socket.c
index 6710b2e..8fc6e5a 100644
--- a/io/channel-socket.c
+++ b/io/channel-socket.c
@@ -403,7 +403,8 @@ static void qio_channel_socket_finalize(Object *obj)
QIOChannelSocket *ioc = QIO_CHANNEL_SOCKET(obj);
if (ioc->fd != -1) {
- if (QIO_CHANNEL(ioc)->features & (1 << QIO_CHANNEL_FEATURE_LISTEN)) {
+ QIOChannel *ioc_local = QIO_CHANNEL(ioc);
+ if (qio_channel_has_feature(ioc_local, QIO_CHANNEL_FEATURE_LISTEN)) {
Error *err = NULL;
socket_listen_cleanup(ioc->fd, &err);
diff --git a/io/channel-tls.c b/io/channel-tls.c
index 9a8525c..f7bb0e3 100644
--- a/io/channel-tls.c
+++ b/io/channel-tls.c
@@ -111,7 +111,7 @@ qio_channel_tls_new_client(QIOChannel *master,
ioc = QIO_CHANNEL(tioc);
tioc->master = master;
- if (master->features & (1 << QIO_CHANNEL_FEATURE_SHUTDOWN)) {
+ if (qio_channel_has_feature(master, QIO_CHANNEL_FEATURE_SHUTDOWN)) {
ioc->features |= (1 << QIO_CHANNEL_FEATURE_SHUTDOWN);
}
object_ref(OBJECT(master));
diff --git a/io/channel-websock.c b/io/channel-websock.c
index 533bd4b..75df03e 100644
--- a/io/channel-websock.c
+++ b/io/channel-websock.c
@@ -497,7 +497,7 @@ qio_channel_websock_new_server(QIOChannel *master)
ioc = QIO_CHANNEL(wioc);
wioc->master = master;
- if (master->features & (1 << QIO_CHANNEL_FEATURE_SHUTDOWN)) {
+ if (qio_channel_has_feature(master, QIO_CHANNEL_FEATURE_SHUTDOWN)) {
ioc->features |= (1 << QIO_CHANNEL_FEATURE_SHUTDOWN);
}
object_ref(OBJECT(master));
diff --git a/io/channel.c b/io/channel.c
index 923c465..e50325c 100644
--- a/io/channel.c
+++ b/io/channel.c
@@ -40,7 +40,7 @@ ssize_t qio_channel_readv_full(QIOChannel *ioc,
QIOChannelClass *klass = QIO_CHANNEL_GET_CLASS(ioc);
if ((fds || nfds) &&
- !(ioc->features & (1 << QIO_CHANNEL_FEATURE_FD_PASS))) {
+ !qio_channel_has_feature(ioc, QIO_CHANNEL_FEATURE_FD_PASS)) {
error_setg_errno(errp, EINVAL,
"Channel does not support file descriptor passing");
return -1;
@@ -60,7 +60,7 @@ ssize_t qio_channel_writev_full(QIOChannel *ioc,
QIOChannelClass *klass = QIO_CHANNEL_GET_CLASS(ioc);
if ((fds || nfds) &&
- !(ioc->features & (1 << QIO_CHANNEL_FEATURE_FD_PASS))) {
+ !qio_channel_has_feature(ioc, QIO_CHANNEL_FEATURE_FD_PASS)) {
error_setg_errno(errp, EINVAL,
"Channel does not support file descriptor passing");
return -1;
--
2.7.4
next prev parent reply other threads:[~2016-10-20 13:48 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-20 13:47 [Qemu-devel] [PULL v1 00/10] Merge qio 2016/10/20 Daniel P. Berrange
2016-10-20 13:47 ` [Qemu-devel] [PULL v1 01/10] io: Fix double shift usages on QIOChannel features Daniel P. Berrange
2016-10-20 13:47 ` Daniel P. Berrange [this message]
2016-10-20 13:47 ` [Qemu-devel] [PULL v1 03/10] io: Introduce a qio_channel_set_feature() helper Daniel P. Berrange
2016-10-20 13:48 ` [Qemu-devel] [PULL v1 04/10] io: Add a QIOChannelSocket cleanup test Daniel P. Berrange
2016-10-20 13:48 ` [Qemu-devel] [PULL v1 05/10] io: add ability to set a name for IO channels Daniel P. Berrange
2016-10-20 13:48 ` [Qemu-devel] [PULL v1 06/10] nbd: set name for all I/O channels created Daniel P. Berrange
2016-10-20 13:48 ` [Qemu-devel] [PULL v1 07/10] char: " Daniel P. Berrange
2016-10-20 13:48 ` [Qemu-devel] [PULL v1 08/10] migration: " Daniel P. Berrange
2016-10-20 13:48 ` [Qemu-devel] [PULL v1 09/10] vnc: " Daniel P. Berrange
2016-10-20 13:48 ` [Qemu-devel] [PULL v1 10/10] main: set names for main loop sources created Daniel P. Berrange
2016-10-20 14:55 ` [Qemu-devel] [PULL v1 00/10] Merge qio 2016/10/20 Eric Blake
2016-10-20 15:05 ` Daniel P. Berrange
2016-10-20 15:16 ` Eric Blake
2016-10-20 16:11 ` Peter Maydell
2016-10-21 10:28 ` Daniel P. Berrange
2016-10-21 10:35 ` Peter Maydell
2016-10-21 10:41 ` Daniel P. Berrange
2016-10-21 10:52 ` Daniel P. Berrange
-- strict thread matches above, loose matches on Subject: below --
2016-10-19 11:17 [Qemu-devel] [PULL v1 00/10] Merge qio 2016/10/19 Daniel P. Berrange
2016-10-19 11:17 ` [Qemu-devel] [PULL v1 02/10] io: Use qio_channel_has_feature() where applicable Daniel P. Berrange
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=1476971286-10612-3-git-send-email-berrange@redhat.com \
--to=berrange@redhat.com \
--cc=felipe@nutanix.com \
--cc=peter.maydell@linaro.org \
--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.