[Spice-devel] [v2: PATCH 1/3] Add SpiceChannelError
Marc-André Lureau
marcandre.lureau at gmail.com
Wed Oct 8 02:06:06 PDT 2014
On Mon, Oct 6, 2014 at 4:23 PM, Christophe Fergeau <cfergeau at redhat.com>
wrote:
> ACK
>
> On Mon, Oct 06, 2014 at 01:52:43PM +0200, Fabiano Fidêncio wrote:
> > SpiceChannelError, for now, will be used to set more detailed errors
> > with respect to the main channel event SPICE_CHANNEL_ERROR_AUTH.
> > ---
> > Changes since v1:
> > - Change the SpiceChannelAuthError comments to match with the enum values
> > - Add more details related to SPICE_CHANNEL_ERROR_AUTH
> > ---
> > doc/reference/spice-gtk-sections.txt | 3 +++
> > gtk/map-file | 2 ++
> > gtk/spice-channel.c | 11 +++++++++++
> > gtk/spice-channel.h | 25 +++++++++++++++++++++++++
> > gtk/spice-glib-sym-file | 2 ++
> > 5 files changed, 43 insertions(+)
> >
> > diff --git a/doc/reference/spice-gtk-sections.txt
> b/doc/reference/spice-gtk-sections.txt
> > index caaa92c..5c411f8 100644
> > --- a/doc/reference/spice-gtk-sections.txt
> > +++ b/doc/reference/spice-gtk-sections.txt
> > @@ -73,6 +73,9 @@ spice_main_clipboard_release
> > spice_main_clipboard_notify
> > spice_main_clipboard_request
> > <SUBSECTION Standard>
> > +SPICE_CHANNEL_ERROR
> > +spice_channel_error_get_type
> > +spice_channel_error_quark
> > SPICE_MAIN_CHANNEL
> > SPICE_IS_MAIN_CHANNEL
> > SPICE_TYPE_MAIN_CHANNEL
> > diff --git a/gtk/map-file b/gtk/map-file
> > index 90f14f1..c1d9e71 100644
> > --- a/gtk/map-file
> > +++ b/gtk/map-file
> > @@ -6,6 +6,8 @@ spice_audio_new;
> > spice_channel_connect;
> > spice_channel_destroy;
> > spice_channel_disconnect;
> > +spice_channel_error_get_type;
> > +spice_channel_error_quark;
> > spice_channel_event_get_type;
> > spice_channel_get_error;
> > spice_channel_get_type;
> > diff --git a/gtk/spice-channel.c b/gtk/spice-channel.c
> > index 5d1a86e..a8b4e35 100644
> > --- a/gtk/spice-channel.c
> > +++ b/gtk/spice-channel.c
> > @@ -76,6 +76,17 @@ static void
> spice_channel_send_migration_handshake(SpiceChannel *channel);
> >
> > G_DEFINE_TYPE(SpiceChannel, spice_channel, G_TYPE_OBJECT);
> >
> > +/**
> > + * SpiceChannelError:
> > + *
> > + * The error domain for the spice channel.
> > + **/
> > +GQuark
> > +spice_channel_error_quark(void)
> > +{
> > + return g_quark_from_static_string ("spice-channel-error");
> > +}
> > +
> > /* Properties */
> > enum {
> > PROP_0,
> > diff --git a/gtk/spice-channel.h b/gtk/spice-channel.h
> > index 1c303b4..adbe8f5 100644
> > --- a/gtk/spice-channel.h
> > +++ b/gtk/spice-channel.h
> > @@ -32,6 +32,17 @@ G_BEGIN_DECLS
> > #define SPICE_IS_CHANNEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE
> ((klass), SPICE_TYPE_CHANNEL))
> > #define SPICE_CHANNEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS
> ((obj), SPICE_TYPE_CHANNEL, SpiceChannelClass))
> >
> > +/**
> > + * SPICE_CHANNEL_ERROR:
> > + *
> > + * Error domain for #SpiceChannel operations. Error in this domain will
> be
> > + * from the SpiceChannelError enumeration. See #GError for more
> > + * information on error domains.
> > + **/
> > +#define SPICE_CHANNEL_ERROR spice_channel_error_quark ()
> > +
>
SPICE_CHANNEL_ERROR_* is unfortunately already used in SpiceChannelEvent
enum.
Why not add error values to SpiceClientError instead? This is the generic
error domain for all spice-gtk I am not sure we need other domains.
> +GQuark spice_channel_error_quark(void);
> > +
> > typedef struct _SpiceMsgIn SpiceMsgIn;
> > typedef struct _SpiceMsgOut SpiceMsgOut;
> >
> > @@ -61,6 +72,20 @@ typedef enum
> > SPICE_CHANNEL_ERROR_IO,
> > } SpiceChannelEvent;
> >
> > +/**
> > + * SpiceChannelAuthError:
> > + * @SPICE_CHANNEL_ERROR_AUTH_NEEDS_PASSWORD: password is required
> > + * @SPICE_CHANNEL_ERROR_AUTH_NEEDS_PASSWORD_AND_USERNAME: username and
> password are required
> > + *
> > + * An error, used as detailed info for SPICE_CHANNEL_ERROR_AUTH, a main
> channel event, that
> > + * should be verified by the applications using
> spice_channel_get_error().
> > + **/
> > +typedef enum
> > +{
> > + SPICE_CHANNEL_ERROR_AUTH_NEEDS_PASSWORD,
> > + SPICE_CHANNEL_ERROR_AUTH_NEEDS_PASSWORD_AND_USERNAME,
> > +} SpiceChannelError;
> > +
> > struct _SpiceChannel
> > {
> > GObject parent;
> > diff --git a/gtk/spice-glib-sym-file b/gtk/spice-glib-sym-file
> > index 878dd12..69e3e83 100644
> > --- a/gtk/spice-glib-sym-file
> > +++ b/gtk/spice-glib-sym-file
> > @@ -4,6 +4,8 @@ spice_audio_new
> > spice_channel_connect
> > spice_channel_destroy
> > spice_channel_disconnect
> > +spice_channel_error_get_type
> > +spice_channel_error_quark
> > spice_channel_event_get_type
> > spice_channel_flush_async
> > spice_channel_flush_finish
> > --
> > 2.1.0
> >
> > _______________________________________________
> > Spice-devel mailing list
> > Spice-devel at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/spice-devel
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
>
>
--
Marc-André Lureau
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20141008/d29db21d/attachment.html>
More information about the Spice-devel
mailing list