[Spice-devel] [PATCH spice-gtk] Allow open_fd() to be called with -1
Hans de Goede
hdegoede at redhat.com
Thu Mar 1 01:55:12 PST 2012
Ack.
On 02/29/2012 02:03 PM, Marc-André Lureau wrote:
> In this case, a valid fd will be requested via the
> SpiceChannel::open-fd signal.
> ---
> gtk/spice-channel.c | 8 ++++++--
> gtk/spice-session.c | 8 ++++++--
> 2 files changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/gtk/spice-channel.c b/gtk/spice-channel.c
> index 972a3bb..c1c145a 100644
> --- a/gtk/spice-channel.c
> +++ b/gtk/spice-channel.c
> @@ -2302,10 +2302,14 @@ gboolean spice_channel_connect(SpiceChannel *channel)
> /**
> * spice_channel_open_fd:
> * @channel:
> - * @fd: a file descriptor (socket)
> + * @fd: a file descriptor (socket) or -1.
> + * request mechanism
> *
> * Connect the channel using @fd socket.
> *
> + * If @fd is -1, a valid fd will be requested later via the
> + * SpiceChannel::open-fd signal.
> + *
> * Returns: %TRUE on success.
> **/
> gboolean spice_channel_open_fd(SpiceChannel *channel, int fd)
> @@ -2313,7 +2317,7 @@ gboolean spice_channel_open_fd(SpiceChannel *channel, int fd)
> SpiceChannelPrivate *c = SPICE_CHANNEL_GET_PRIVATE(channel);
>
> g_return_val_if_fail(c != NULL, FALSE);
> - g_return_val_if_fail(fd>= 0, FALSE);
> + g_return_val_if_fail(fd>= -1, FALSE);
>
> c->fd = fd;
>
> diff --git a/gtk/spice-session.c b/gtk/spice-session.c
> index c328f66..dca9b3a 100644
> --- a/gtk/spice-session.c
> +++ b/gtk/spice-session.c
> @@ -1042,12 +1042,15 @@ gboolean spice_session_connect(SpiceSession *session)
> /**
> * spice_session_open_fd:
> * @session:
> - * @fd: a file descriptor
> + * @fd: a file descriptor (socket) or -1
> *
> * Open the session using the provided @fd socket file
> * descriptor. This is useful if you create the fd yourself, for
> * example to setup a SSH tunnel.
> *
> + * If @fd is -1, a valid fd will be requested later via the
> + * SpiceChannel::open-fd signal.
> + *
> * Returns:
> **/
> gboolean spice_session_open_fd(SpiceSession *session, int fd)
> @@ -1055,9 +1058,10 @@ gboolean spice_session_open_fd(SpiceSession *session, int fd)
> SpiceSessionPrivate *s = SPICE_SESSION_GET_PRIVATE(session);
>
> g_return_val_if_fail(s != NULL, FALSE);
> - g_return_val_if_fail(fd>= 0, FALSE);
> + g_return_val_if_fail(fd>= -1, FALSE);
>
> spice_session_disconnect(session);
> + s->disconnecting = FALSE;
>
> s->client_provided_sockets = TRUE;
>
More information about the Spice-devel
mailing list