## Item ACLs Item ACLs — Access control lists for keyring items. |

## Synopsis

    typedef             GnomeKeyringAccessControl;
    typedef             GnomeKeyringApplicationRef;
    enum                GnomeKeyringAccessType;
    enum                GnomeKeyringAccessRestriction;
    GnomeKeyringApplicationRef * gnome_keyring_application_ref_new
                                                            (void);
    GnomeKeyringApplicationRef * gnome_keyring_application_ref_copy
                                                            (const GnomeKeyringApplicationRef *app);
    void                gnome_keyring_application_ref_free  (GnomeKeyringApplicationRef *app);
    GnomeKeyringAccessControl * gnome_keyring_access_control_new
                                                            (const GnomeKeyringApplicationRef *application,
                                                             GnomeKeyringAccessType types_allowed);
    GnomeKeyringAccessControl * gnome_keyring_access_control_copy
                                                            (GnomeKeyringAccessControl *ac);
    void                gnome_keyring_access_control_free   (GnomeKeyringAccessControl *ac);
    GList *             gnome_keyring_acl_copy              (GList *list);
    void                gnome_keyring_acl_free              (GList *acl);
    char *              gnome_keyring_item_ac_get_display_name
                                                            (GnomeKeyringAccessControl *ac);
    void                gnome_keyring_item_ac_set_display_name
                                                            (GnomeKeyringAccessControl *ac,
                                                             const char *value);
    char *              gnome_keyring_item_ac_get_path_name (GnomeKeyringAccessControl *ac);
    void                gnome_keyring_item_ac_set_path_name (GnomeKeyringAccessControl *ac,
                                                             const char *value);
    GnomeKeyringAccessType gnome_keyring_item_ac_get_access_type
                                                            (GnomeKeyringAccessControl *ac);
    void                gnome_keyring_item_ac_set_access_type
                                                            (GnomeKeyringAccessControl *ac,
                                                             const GnomeKeyringAccessType value);

## Description

### Warning

All of these APIs are deprecated. Use libsecret instead.

Each item has an access control list, which specifies the applications that can read, write or delete an item. The read access applies only to reading the secret. All applications can read other parts of the item. ACLs are accessed and changed `gnome_keyring_item_get_acl()` and `gnome_keyring_item_set_acl()`.

## Details

### GnomeKeyringAccessControl

    typedef struct GnomeKeyringAccessControl GnomeKeyringAccessControl;

### Warning

`GnomeKeyringAccessControl` is deprecated and should not be used in newly-written code.

A structure which contains access control information.

### GnomeKeyringApplicationRef

    typedef struct GnomeKeyringApplicationRef GnomeKeyringApplicationRef;

### Warning

`GnomeKeyringApplicationRef` is deprecated and should not be used in newly-written code.

### enum GnomeKeyringAccessType

    typedef enum {
    	GNOME_KEYRING_ACCESS_READ = 1<<0,
    	GNOME_KEYRING_ACCESS_WRITE = 1<<1,
    	GNOME_KEYRING_ACCESS_REMOVE = 1<<2
    } GnomeKeyringAccessType;

### Warning

`GnomeKeyringAccessType` is deprecated and should not be used in newly-written code. libsecret only supports string attributes.

Type of access.

`GNOME_KEYRING_ACCESS_READ` | Read access
`GNOME_KEYRING_ACCESS_WRITE` | Write access
`GNOME_KEYRING_ACCESS_REMOVE` | Delete access

### enum GnomeKeyringAccessRestriction

    typedef enum {
    	GNOME_KEYRING_ACCESS_ASK,
    	GNOME_KEYRING_ACCESS_DENY,
    	GNOME_KEYRING_ACCESS_ALLOW
    } GnomeKeyringAccessRestriction;

### Warning

`GnomeKeyringAccessRestriction` is deprecated and should not be used in newly-written code. No permission prompts are supported.

Type of access restriction.

`GNOME_KEYRING_ACCESS_ASK` | Ask permission.
`GNOME_KEYRING_ACCESS_DENY` | Deny permission.
`GNOME_KEYRING_ACCESS_ALLOW` | Give permission.

### gnome_keyring_application_ref_new ()

    GnomeKeyringApplicationRef * gnome_keyring_application_ref_new
                                                            (void);

### Warning

`gnome_keyring_application_ref_new` is deprecated and should not be used in newly-written code. Not needed when using libsecret.

Create a new application reference.

Returns : | A new GnomeKeyringApplicationRef pointer.

### gnome_keyring_application_ref_copy ()

    GnomeKeyringApplicationRef * gnome_keyring_application_ref_copy
                                                            (const GnomeKeyringApplicationRef *app);

### Warning

`gnome_keyring_application_ref_copy` is deprecated and should not be used in newly-written code. Not needed when using libsecret.

Copy an application reference.

`app` : | A GnomeKeyringApplicationRef pointer
Returns : | A new GnomeKeyringApplicationRef pointer.

### gnome_keyring_application_ref_free ()

    void                gnome_keyring_application_ref_free  (GnomeKeyringApplicationRef *app);

### Warning

`gnome_keyring_application_ref_free` is deprecated and should not be used in newly-written code. Not needed when using libsecret.

Free an application reference.

`app` : | A GnomeKeyringApplicationRef pointer

### gnome_keyring_access_control_new ()

    GnomeKeyringAccessControl * gnome_keyring_access_control_new
                                                            (const GnomeKeyringApplicationRef *application,
                                                             GnomeKeyringAccessType types_allowed);

### Warning

`gnome_keyring_access_control_new` is deprecated and should not be used in newly-written code. Not needed when using libsecret.

Create a new access control for an item. Combine the various access rights allowed.

`application` : | A GnomeKeyringApplicationRef pointer
`types_allowed` : | Access types allowed.
Returns : | The new GnomeKeyringAccessControl pointer. Use `gnome_keyring_access_control_free()` to free the memory.

### gnome_keyring_access_control_copy ()

    GnomeKeyringAccessControl * gnome_keyring_access_control_copy
                                                            (GnomeKeyringAccessControl *ac);

### Warning

`gnome_keyring_access_control_copy` is deprecated and should not be used in newly-written code. Not needed when using libsecret.

Copy an access control for an item.

`ac` : | A GnomeKeyringAccessControl pointer
Returns : | The new GnomeKeyringAccessControl pointer. Use `gnome_keyring_access_control_free()` to free the memory.

### gnome_keyring_access_control_free ()

    void                gnome_keyring_access_control_free   (GnomeKeyringAccessControl *ac);

### Warning

`gnome_keyring_access_control_free` is deprecated and should not be used in newly-written code. Not needed when using libsecret.

Free an access control for an item.

`ac` : | A GnomeKeyringAccessControl pointer

### gnome_keyring_acl_copy ()

    GList *             gnome_keyring_acl_copy              (GList *list);

### Warning

`gnome_keyring_acl_copy` is deprecated and should not be used in newly-written code. Not needed when using libsecret.

Copy an access control list.

`list` : | A list of GnomeKeyringAccessControl pointers. [element-type GnomeKeyringAccessControl]
Returns : | A new list of GnomeKeyringAccessControl items. Use `gnome_keyring_acl_free()` to free the memory. [transfer full][element-type GnomeKeyringAccessControl]

### gnome_keyring_acl_free ()

    void                gnome_keyring_acl_free              (GList *acl);

### Warning

`gnome_keyring_acl_free` is deprecated and should not be used in newly-written code. Not needed when using libsecret.

Free an access control list.

`acl` : | A list of GnomeKeyringAccessControl pointers. [element-type GnomeKeyringAccessControl]

### gnome_keyring_item_ac_get_display_name ()

    char *              gnome_keyring_item_ac_get_display_name
                                                            (GnomeKeyringAccessControl *ac);

### Warning

`gnome_keyring_item_ac_get_display_name` is deprecated and should not be used in newly-written code. Not supported when using libsecret.

Get the access control application's display name.

`ac` : | A GnomeKeyringAccessControl pointer.
Returns : | A newly allocated string containing the display name.

### gnome_keyring_item_ac_set_display_name ()

    void                gnome_keyring_item_ac_set_display_name
                                                            (GnomeKeyringAccessControl *ac,
                                                             const char *value);

### Warning

`gnome_keyring_item_ac_set_display_name` is deprecated and should not be used in newly-written code. Not supported when using libsecret.

Set the access control application's display name.

`ac` : | A GnomeKeyringAccessControl pointer.
`value` : | The new application display name.

### gnome_keyring_item_ac_get_path_name ()

    char *              gnome_keyring_item_ac_get_path_name (GnomeKeyringAccessControl *ac);

### Warning

`gnome_keyring_item_ac_get_path_name` is deprecated and should not be used in newly-written code. Not supported when using libsecret.

Get the access control application's full path name.

`ac` : | A GnomeKeyringAccessControl pointer.
Returns : | A newly allocated string containing the display name.

### gnome_keyring_item_ac_set_path_name ()

    void                gnome_keyring_item_ac_set_path_name (GnomeKeyringAccessControl *ac,
                                                             const char *value);

### Warning

`gnome_keyring_item_ac_set_path_name` is deprecated and should not be used in newly-written code. Not supported when using libsecret.

Set the access control application's full path name.

`ac` : | A GnomeKeyringAccessControl pointer
`value` : | The new application full path.

### gnome_keyring_item_ac_get_access_type ()

    GnomeKeyringAccessType gnome_keyring_item_ac_get_access_type
                                                            (GnomeKeyringAccessControl *ac);

### Warning

`gnome_keyring_item_ac_get_access_type` is deprecated and should not be used in newly-written code. Not supported when using libsecret.

Get the application access rights for the access control.

`ac` : | A GnomeKeyringAccessControl pointer.
Returns : | The access rights.

### gnome_keyring_item_ac_set_access_type ()

    void                gnome_keyring_item_ac_set_access_type
                                                            (GnomeKeyringAccessControl *ac,
                                                             const GnomeKeyringAccessType value);

### Warning

`gnome_keyring_item_ac_set_access_type` is deprecated and should not be used in newly-written code. Not supported when using libsecret.

Set the application access rights for the access control.

`ac` : | A GnomeKeyringAccessControl pointer.
`value` : | The new access rights.