## Item ACLs

Item ACLs — Access control lists for keyring items.

## Functions

GnomeKeyringApplicationRef * | gnome_keyring_application_ref_new ()
GnomeKeyringApplicationRef * | gnome_keyring_application_ref_copy ()
void | gnome_keyring_application_ref_free ()
GnomeKeyringAccessControl * | gnome_keyring_access_control_new ()
GnomeKeyringAccessControl * | gnome_keyring_access_control_copy ()
void | gnome_keyring_access_control_free ()
GList * | gnome_keyring_acl_copy ()
void | gnome_keyring_acl_free ()
char * | gnome_keyring_item_ac_get_display_name ()
void | gnome_keyring_item_ac_set_display_name ()
char * | gnome_keyring_item_ac_get_path_name ()
void | gnome_keyring_item_ac_set_path_name ()
GnomeKeyringAccessType | gnome_keyring_item_ac_get_access_type ()
void | gnome_keyring_item_ac_set_access_type ()

## Types and Values

typedef | GnomeKeyringAccessControl
typedef | GnomeKeyringApplicationRef
enum | GnomeKeyringAccessType
enum | GnomeKeyringAccessRestriction

## Description

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()`.

## Functions

### gnome_keyring_application_ref_new ()

    GnomeKeyringApplicationRef *
    gnome_keyring_application_ref_new (void);

`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);

`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.

#### Parameters

app | A GnomeKeyringApplicationRef pointer |

#### Returns

A new GnomeKeyringApplicationRef pointer.

### gnome_keyring_application_ref_free ()

    void
    gnome_keyring_application_ref_free (GnomeKeyringApplicationRef *app);

`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.

#### Parameters

app | A GnomeKeyringApplicationRef pointer |

### gnome_keyring_access_control_new ()

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

`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.

#### Parameters

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);

`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.

#### Parameters

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);

`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.

#### Parameters

ac | A GnomeKeyringAccessControl pointer |

### gnome_keyring_acl_copy ()

    GList *
    gnome_keyring_acl_copy (GList *list);

`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.

#### Parameters

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);

`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.

#### Parameters

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);

`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.

#### Parameters

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);

`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.

#### Parameters

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);

`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.

#### Parameters

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);

`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.

#### Parameters

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);

`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.

#### Parameters

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);

`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.

#### Parameters

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

## Types and Values

### GnomeKeyringAccessControl

    typedef struct GnomeKeyringAccessControl GnomeKeyringAccessControl;

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

A structure which contains access control information.

### GnomeKeyringApplicationRef

    typedef struct GnomeKeyringApplicationRef GnomeKeyringApplicationRef;

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

### enum GnomeKeyringAccessType

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

libsecret only supports string attributes.

Type of access.

#### Members

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

### enum GnomeKeyringAccessRestriction

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

No permission prompts are supported.

Type of access restriction.

#### Members

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