Item Attributes

Item Attributes — Attributes of individual keyring items.

Description

Attributes allow various other pieces of information to be associated with an item. These can also be used to search for relevant items. Use gnome_keyring_item_get_attributes() or gnome_keyring_item_set_attributes().

Each attribute has either a string, or unsigned integer value.

Details

enum GnomeKeyringAttributeType

typedef enum {
	GNOME_KEYRING_ATTRIBUTE_TYPE_STRING,
	GNOME_KEYRING_ATTRIBUTE_TYPE_UINT32
} GnomeKeyringAttributeType;

The data type of the item attribute.

GNOME_KEYRING_ATTRIBUTE_TYPE_STRING

A UTF-8 encoded string attribute.

GNOME_KEYRING_ATTRIBUTE_TYPE_UINT32

A unsigned integer attribute.

GnomeKeyringAttributeList

typedef GArray GnomeKeyringAttributeList;


GnomeKeyringAttribute

typedef struct {
	char *name;
	GnomeKeyringAttributeType type;
	union {
		char *string;
		guint32 integer;
	} value;
} GnomeKeyringAttribute;

An item attribute. Set string if data type is GNOME_KEYRING_ATTRIBUTE_TYPE_STRING or integer if data type is GNOME_KEYRING_ATTRIBUTE_TYPE_UINT32

char *name;

The name of the attribute.

GnomeKeyringAttributeType type;

The data type.

gnome_keyring_attribute_list_index()

#define             gnome_keyring_attribute_list_index(a, i)


gnome_keyring_attribute_list_new ()

GnomeKeyringAttributeList * gnome_keyring_attribute_list_new
                                                        (void);

Create a new GnomeKeyringAttributeList.

Returns :

The new GnomeKeyringAttributeList. [transfer full]

gnome_keyring_attribute_list_append_string ()

void                gnome_keyring_attribute_list_append_string
                                                        (GnomeKeyringAttributeList *attributes,
                                                         const char *name,
                                                         const char *value);

Store a key-value-pair with a string value in attributes.

attributes :

A GnomeKeyringAttributeList

name :

The name of the new attribute

value :

The value to store in attributes

gnome_keyring_attribute_list_append_uint32 ()

void                gnome_keyring_attribute_list_append_uint32
                                                        (GnomeKeyringAttributeList *attributes,
                                                         const char *name,
                                                         guint32 value);

Store a key-value-pair with an unsigned 32bit number value in attributes.

attributes :

A GnomeKeyringAttributeList

name :

The name of the new attribute

value :

The value to store in attributes

gnome_keyring_attribute_list_free ()

void                gnome_keyring_attribute_list_free   (GnomeKeyringAttributeList *attributes);

Free the memory used by attributes.

If a NULL pointer is passed, it is ignored.

attributes :

A GnomeKeyringAttributeList

gnome_keyring_attribute_list_copy ()

GnomeKeyringAttributeList * gnome_keyring_attribute_list_copy
                                                        (GnomeKeyringAttributeList *attributes);

Copy a list of item attributes.

attributes :

A GnomeKeyringAttributeList to copy.

Returns :

The new GnomeKeyringAttributeList. [transfer full]

gnome_keyring_attribute_get_string ()

const gchar *       gnome_keyring_attribute_get_string  (GnomeKeyringAttribute *attribute);

Return the string value. It is an error to call this method if attribute.type is not GNOME_KEYRING_ATTRIBUTE_TYPE_STRING. This method is mostly useful for language bindings which do not provide union access. In C you should just use attribute->value.string.

attribute :

a GnomeKeyringAttribute

Returns :

The value.string pointer of attribute. This is not a copy, do not free. [transfer none]

gnome_keyring_attribute_get_uint32 ()

guint32             gnome_keyring_attribute_get_uint32  (GnomeKeyringAttribute *attribute);

Return the uint32 value. It is an error to call this method if attribute.type is not GNOME_KEYRING_ATTRIBUTE_TYPE_UINT32. This method is mostly useful for language bindings which do not provide union access. In C you should just use attribute->value.integer.

attribute :

a GnomeKeyringAttribute

Returns :

The value.integer of attribute.