SignonIdentityInfo

SignonIdentityInfo — Extra data for a SignonIdentity.

Synopsis

                    SignonIdentityInfo;
enum                SignonIdentityType;
SignonIdentityInfo * signon_identity_info_copy          (const SignonIdentityInfo *other);
void                signon_identity_info_free           (SignonIdentityInfo *info);
const gchar * const * signon_identity_info_get_access_control_list
                                                        (const SignonIdentityInfo *info);
const gchar *       signon_identity_info_get_caption    (const SignonIdentityInfo *info);
gint                signon_identity_info_get_id         (const SignonIdentityInfo *info);
SignonIdentityType  signon_identity_info_get_identity_type
                                                        (const SignonIdentityInfo *info);
const GHashTable *  signon_identity_info_get_methods    (const SignonIdentityInfo *info);
const gchar * const * signon_identity_info_get_realms   (const SignonIdentityInfo *info);
gboolean            signon_identity_info_get_storing_secret
                                                        (const SignonIdentityInfo *info);
const gchar *       signon_identity_info_get_username   (const SignonIdentityInfo *info);
SignonIdentityInfo * signon_identity_info_new           ();
void                signon_identity_info_remove_method  (SignonIdentityInfo *info,
                                                         const gchar *method);
void                signon_identity_info_set_access_control_list
                                                        (SignonIdentityInfo *info,
                                                         const gchar * const *access_control_list);
void                signon_identity_info_set_caption    (SignonIdentityInfo *info,
                                                         const gchar *caption);
void                signon_identity_info_set_identity_type
                                                        (SignonIdentityInfo *info,
                                                         SignonIdentityType type);
void                signon_identity_info_set_method     (SignonIdentityInfo *info,
                                                         const gchar *method,
                                                         const gchar * const *mechanisms);
void                signon_identity_info_set_realms     (SignonIdentityInfo *info,
                                                         const gchar * const *realms);
void                signon_identity_info_set_secret     (SignonIdentityInfo *info,
                                                         const gchar *secret,
                                                         gboolean store_secret);
void                signon_identity_info_set_username   (SignonIdentityInfo *info,
                                                         const gchar *username);

Object Hierarchy

  GBoxed
   +----SignonIdentityInfo
  GFlags
   +----SignonIdentityType

Description

Extra data retreived from a SignonIdentity.

Details

SignonIdentityInfo

typedef struct _SignonIdentityInfo SignonIdentityInfo;

Opaque struct. Use the accessor functions below.


enum SignonIdentityType

typedef enum {
    SIGNON_IDENTITY_TYPE_OTHER = 0,
    SIGNON_IDENTITY_TYPE_APP = 1 << 0,
    SIGNON_IDENTITY_TYPE_WEB = 1 << 1,
    SIGNON_IDENTITY_TYPE_NETWORK = 1 << 2
} SignonIdentityType;

Types used in SignonIdentityInfo.

SIGNON_IDENTITY_TYPE_OTHER

an identity that is not an app, web or network

SIGNON_IDENTITY_TYPE_APP

an application identity

SIGNON_IDENTITY_TYPE_WEB

a web identity

SIGNON_IDENTITY_TYPE_NETWORK

a network server identity

signon_identity_info_copy ()

SignonIdentityInfo * signon_identity_info_copy          (const SignonIdentityInfo *other);

Get a newly-allocated copy of info.

other :

the SignonIdentityInfo.

Returns :

a copy of the given SignonIdentityInfo, or NULL on failure.

signon_identity_info_free ()

void                signon_identity_info_free           (SignonIdentityInfo *info);

Destroys the given SignonIdentityInfo item.

info :

the SignonIdentityInfo.

signon_identity_info_get_access_control_list ()

const gchar * const * signon_identity_info_get_access_control_list
                                                        (const SignonIdentityInfo *info);

Get an array of ACL statements of the identity.

info :

the SignonIdentityInfo.

Returns :

a NULL terminated array of ACL statements. [transfer none]

signon_identity_info_get_caption ()

const gchar *       signon_identity_info_get_caption    (const SignonIdentityInfo *info);

Get the display name of info.

info :

the SignonIdentityInfo.

Returns :

the display name for the identity.

signon_identity_info_get_id ()

gint                signon_identity_info_get_id         (const SignonIdentityInfo *info);

Get the numeric ID of info.

info :

the SignonIdentityInfo.

Returns :

the numeric ID of the identity.

signon_identity_info_get_identity_type ()

SignonIdentityType  signon_identity_info_get_identity_type
                                                        (const SignonIdentityInfo *info);

Get the type of the identity.

info :

the SignonIdentityInfo.

Returns :

the type of the identity.

signon_identity_info_get_methods ()

const GHashTable *  signon_identity_info_get_methods    (const SignonIdentityInfo *info);

Get a hash table of the methods and mechanisms of info.

info :

the SignonIdentityInfo.

Returns :

the table of allowed methods and mechanisms. [transfer none][element-type utf8 GStrv]

signon_identity_info_get_realms ()

const gchar * const * signon_identity_info_get_realms   (const SignonIdentityInfo *info);

Get an array of the realms of info.

info :

the SignonIdentityInfo.

Returns :

a NULL terminated array of realms. [transfer none]

signon_identity_info_get_storing_secret ()

gboolean            signon_identity_info_get_storing_secret
                                                        (const SignonIdentityInfo *info);

Get whether the secret of info should be stored.

info :

the SignonIdentityInfo.

Returns :

TRUE if Signon must store the secret, FALSE otherwise.

signon_identity_info_get_username ()

const gchar *       signon_identity_info_get_username   (const SignonIdentityInfo *info);

Get the username of info.

info :

the SignonIdentityInfo.

Returns :

the username, or NULL.

signon_identity_info_new ()

SignonIdentityInfo * signon_identity_info_new           ();

Creates a new SignonIdentityInfo item.

Returns :

a new SignonIdentityInfo item.

signon_identity_info_remove_method ()

void                signon_identity_info_remove_method  (SignonIdentityInfo *info,
                                                         const gchar *method);

Remove method from the list of allowed authentication methods. If all methods are removed, then all methods are allowed.

info :

the SignonIdentityInfo.

method :

an authentication method.

signon_identity_info_set_access_control_list ()

void                signon_identity_info_set_access_control_list
                                                        (SignonIdentityInfo *info,
                                                         const gchar * const *access_control_list);

Specifies the ACL for this identity. The actual meaning of the ACL depends on the security framework used by signond.

info :

the SignonIdentityInfo.

access_control_list :

a NULL-terminated list of ACL security domains.

signon_identity_info_set_caption ()

void                signon_identity_info_set_caption    (SignonIdentityInfo *info,
                                                         const gchar *caption);

Sets the caption (display name) for the identity.

info :

the SignonIdentityInfo.

caption :

the caption.

signon_identity_info_set_identity_type ()

void                signon_identity_info_set_identity_type
                                                        (SignonIdentityInfo *info,
                                                         SignonIdentityType type);

Specifies the type of this identity.

info :

the SignonIdentityInfo.

type :

the type of the identity.

signon_identity_info_set_method ()

void                signon_identity_info_set_method     (SignonIdentityInfo *info,
                                                         const gchar *method,
                                                         const gchar * const *mechanisms);

Adds a method to the list of allowed methods. If this method is not called even once, then all methods are allowed. Mechanisms are method-specific variants of authentication.

info :

the SignonIdentityInfo.

method :

an authentication method.

mechanisms :

a NULL-termianted list of mechanisms.

signon_identity_info_set_realms ()

void                signon_identity_info_set_realms     (SignonIdentityInfo *info,
                                                         const gchar * const *realms);

Specify what realms this identity can be used in.

info :

the SignonIdentityInfo.

realms :

a NULL-terminated list of realms.

signon_identity_info_set_secret ()

void                signon_identity_info_set_secret     (SignonIdentityInfo *info,
                                                         const gchar *secret,
                                                         gboolean store_secret);

Sets the secret (password) for the identity, and whether the signon daemon should remember it.

info :

the SignonIdentityInfo.

secret :

the secret.

store_secret :

whether signond should store the secret in its DB.

signon_identity_info_set_username ()

void                signon_identity_info_set_username   (SignonIdentityInfo *info,
                                                         const gchar *username);

Sets the username for the identity.

info :

the SignonIdentityInfo.

username :

the username.