Back to index

lightdm  1.3.2
Classes | Functions
seat-xdmcp-session.c File Reference
#include <string.h>
#include "seat-xdmcp-session.h"
#include "xserver-remote.h"
#include "xsession.h"

Go to the source code of this file.

Classes

struct  SeatXDMCPSessionPrivate

Functions

 G_DEFINE_TYPE (SeatXDMCPSession, seat_xdmcp_session, SEAT_TYPE)
SeatXDMCPSessionseat_xdmcp_session_new (XDMCPSession *session)
static DisplayServerseat_xdmcp_session_create_display_server (Seat *seat)
static Sessionseat_xdmcp_session_create_session (Seat *seat, Display *display)
static void seat_xdmcp_session_display_removed (Seat *seat, Display *display)
static void seat_xdmcp_session_init (SeatXDMCPSession *seat)
static void seat_xdmcp_session_finalize (GObject *object)
static void seat_xdmcp_session_class_init (SeatXDMCPSessionClass *klass)

Class Documentation

struct SeatXDMCPSessionPrivate

Definition at line 18 of file seat-xdmcp-session.c.

Collaboration diagram for SeatXDMCPSessionPrivate:
Class Members
XDMCPSession * session

Function Documentation

G_DEFINE_TYPE ( SeatXDMCPSession  ,
seat_xdmcp_session  ,
SEAT_TYPE   
)
static void seat_xdmcp_session_class_init ( SeatXDMCPSessionClass klass) [static]

Definition at line 91 of file seat-xdmcp-session.c.

{
    SeatClass *seat_class = SEAT_CLASS (klass);
    GObjectClass *object_class = G_OBJECT_CLASS (klass);

    seat_class->create_display_server = seat_xdmcp_session_create_display_server;
    seat_class->create_session = seat_xdmcp_session_create_session;
    seat_class->display_removed = seat_xdmcp_session_display_removed;
    object_class->finalize = seat_xdmcp_session_finalize;

    g_type_class_add_private (klass, sizeof (SeatXDMCPSessionPrivate));
}

Here is the call graph for this function:

Definition at line 38 of file seat-xdmcp-session.c.

{
    XAuthority *authority;
    gchar *host;
    XServerRemote *xserver;

    authority = xdmcp_session_get_authority (SEAT_XDMCP_SESSION (seat)->priv->session);
    host = g_inet_address_to_string (xdmcp_session_get_address (SEAT_XDMCP_SESSION (seat)->priv->session));
    xserver = xserver_remote_new (host, xdmcp_session_get_display_number (SEAT_XDMCP_SESSION (seat)->priv->session), authority);
    g_free (host);

    return DISPLAY_SERVER (xserver);
}

Here is the call graph for this function:

Here is the caller graph for this function:

static Session* seat_xdmcp_session_create_session ( Seat seat,
Display display 
) [static]

Definition at line 53 of file seat-xdmcp-session.c.

{
    XServerRemote *xserver;
    XSession *session;

    xserver = XSERVER_REMOTE (display_get_display_server (display));

    session = xsession_new (XSERVER (xserver));
    session_set_remote_host_name (SESSION (session), xserver_get_hostname (XSERVER (xserver)));

    return SESSION (session);
}

Here is the call graph for this function:

Here is the caller graph for this function:

static void seat_xdmcp_session_display_removed ( Seat seat,
Display display 
) [static]

Definition at line 67 of file seat-xdmcp-session.c.

{
   seat_stop (seat);
}

Here is the call graph for this function:

Here is the caller graph for this function:

static void seat_xdmcp_session_finalize ( GObject *  object) [static]

Definition at line 79 of file seat-xdmcp-session.c.

{
    SeatXDMCPSession *self;

    self = SEAT_XDMCP_SESSION (object);

    g_object_unref (self->priv->session);

    G_OBJECT_CLASS (seat_xdmcp_session_parent_class)->finalize (object);
}

Here is the caller graph for this function:

static void seat_xdmcp_session_init ( SeatXDMCPSession seat) [static]

Definition at line 73 of file seat-xdmcp-session.c.

{
    seat->priv = G_TYPE_INSTANCE_GET_PRIVATE (seat, SEAT_XDMCP_SESSION_TYPE, SeatXDMCPSessionPrivate);
}

Definition at line 27 of file seat-xdmcp-session.c.

{
    SeatXDMCPSession *seat;

    seat = g_object_new (SEAT_XDMCP_SESSION_TYPE, NULL);
    seat->priv->session = g_object_ref (session);

    return seat;
}

Here is the caller graph for this function: