[Spice-devel] [PATCH spice-server 4/4] Make RedChannel::config_socket() optional
Christophe Fergeau
cfergeau at redhat.com
Wed Feb 15 11:41:52 UTC 2017
Acked-by: Christophe Fergeau <cfergeau at redhat.com>
Christophe
On Wed, Feb 15, 2017 at 11:32:01AM +0000, Frediano Ziglio wrote:
> Most channels don't need to do specific settings for the client socket
> so avoid the need to do this setting making easier to setup the client
> channnel.
>
> Some improvements and commit subject suggested by Christophe Fergeau.
>
> Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> ---
> server/inputs-channel.c | 6 ------
> server/main-channel.c | 6 ------
> server/red-channel.c | 6 +++++-
> server/smartcard.c | 6 ------
> server/spicevmc.c | 6 ------
> 5 files changed, 5 insertions(+), 25 deletions(-)
>
> diff --git a/server/inputs-channel.c b/server/inputs-channel.c
> index 223f46f..ed92e71 100644
> --- a/server/inputs-channel.c
> +++ b/server/inputs-channel.c
> @@ -484,11 +484,6 @@ static void inputs_pipe_add_init(RedChannelClient *rcc)
> red_channel_client_pipe_add_push(rcc, &item->base);
> }
>
> -static int inputs_channel_config_socket(RedChannelClient *rcc)
> -{
> - return TRUE;
> -}
> -
> static void inputs_connect(RedChannel *channel, RedClient *client,
> RedsStream *stream, int migration,
> int num_common_caps, uint32_t *common_caps,
> @@ -634,7 +629,6 @@ inputs_channel_class_init(InputsChannelClass *klass)
> channel_class->handle_message = inputs_channel_handle_message;
>
> /* channel callbacks */
> - channel_class->config_socket = inputs_channel_config_socket;
> channel_class->on_disconnect = inputs_channel_on_disconnect;
> channel_class->send_item = inputs_channel_send_item;
> channel_class->alloc_recv_buf = inputs_channel_alloc_msg_rcv_buf;
> diff --git a/server/main-channel.c b/server/main-channel.c
> index 2d32444..3a6e6cd 100644
> --- a/server/main-channel.c
> +++ b/server/main-channel.c
> @@ -277,11 +277,6 @@ static void main_channel_release_msg_rcv_buf(RedChannelClient *rcc,
> }
> }
>
> -static int main_channel_config_socket(RedChannelClient *rcc)
> -{
> - return TRUE;
> -}
> -
> static int main_channel_handle_migrate_flush_mark(RedChannelClient *rcc)
> {
> RedChannel *channel = red_channel_client_get_channel(rcc);
> @@ -355,7 +350,6 @@ main_channel_class_init(MainChannelClass *klass)
> channel_class->handle_message = main_channel_handle_message;
>
> /* channel callbacks */
> - channel_class->config_socket = main_channel_config_socket;
> channel_class->on_disconnect = main_channel_client_on_disconnect;
> channel_class->send_item = main_channel_client_send_item;
> channel_class->alloc_recv_buf = main_channel_alloc_msg_rcv_buf;
> diff --git a/server/red-channel.c b/server/red-channel.c
> index 2f9173b..67a570d 100644
> --- a/server/red-channel.c
> +++ b/server/red-channel.c
> @@ -210,7 +210,7 @@ red_channel_constructed(GObject *object)
>
> G_OBJECT_CLASS(red_channel_parent_class)->constructed(object);
>
> - spice_assert(klass->config_socket && klass->on_disconnect &&
> + spice_assert(klass->on_disconnect &&
> klass->alloc_recv_buf && klass->release_recv_buf);
> spice_assert(klass->handle_migrate_data ||
> !(self->priv->migration_flags & SPICE_MIGRATE_NEED_DATA_TRANSFER));
> @@ -732,6 +732,10 @@ int red_channel_config_socket(RedChannel *self, RedChannelClient *rcc)
> {
> RedChannelClass *klass = RED_CHANNEL_GET_CLASS(self);
>
> + if (!klass->config_socket) {
> + return TRUE;
> + }
> +
> return klass->config_socket(rcc);
> }
>
> diff --git a/server/smartcard.c b/server/smartcard.c
> index a7cc614..8f12fd9 100644
> --- a/server/smartcard.c
> +++ b/server/smartcard.c
> @@ -394,11 +394,6 @@ void smartcard_char_device_detach_client(RedCharDeviceSmartcard *smartcard,
> smartcard->priv->scc = NULL;
> }
>
> -static int smartcard_channel_client_config_socket(RedChannelClient *rcc)
> -{
> - return TRUE;
> -}
> -
> SmartCardChannelClient* smartcard_char_device_get_client(RedCharDeviceSmartcard *smartcard)
> {
> return smartcard->priv->scc;
> @@ -585,7 +580,6 @@ red_smartcard_channel_class_init(RedSmartcardChannelClass *klass)
>
> channel_class->handle_message = smartcard_channel_client_handle_message,
>
> - channel_class->config_socket = smartcard_channel_client_config_socket;
> channel_class->on_disconnect = smartcard_channel_client_on_disconnect;
> channel_class->send_item = smartcard_channel_send_item;
> channel_class->alloc_recv_buf = smartcard_channel_client_alloc_msg_rcv_buf;
> diff --git a/server/spicevmc.c b/server/spicevmc.c
> index 4b46e54..e705bc7 100644
> --- a/server/spicevmc.c
> +++ b/server/spicevmc.c
> @@ -440,11 +440,6 @@ static void spicevmc_char_dev_remove_client(RedCharDevice *self,
> red_channel_client_shutdown(channel->rcc);
> }
>
> -static int spicevmc_red_channel_client_config_socket(RedChannelClient *rcc)
> -{
> - return TRUE;
> -}
> -
> static void spicevmc_red_channel_client_on_disconnect(RedChannelClient *rcc)
> {
> RedVmcChannel *channel;
> @@ -736,7 +731,6 @@ red_vmc_channel_class_init(RedVmcChannelClass *klass)
>
> channel_class->handle_message = spicevmc_red_channel_client_handle_message;
>
> - channel_class->config_socket = spicevmc_red_channel_client_config_socket;
> channel_class->on_disconnect = spicevmc_red_channel_client_on_disconnect;
> channel_class->send_item = spicevmc_red_channel_send_item;
> channel_class->alloc_recv_buf = spicevmc_red_channel_alloc_msg_rcv_buf;
> --
> 2.9.3
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/spice-devel/attachments/20170215/16ace881/attachment.sig>
More information about the Spice-devel
mailing list