mirror of
https://gitlab.gnome.org/GNOME/libsecret.git
synced 2025-01-03 10:38:52 +00:00
Use collection aliases with secret_password_store() and friends
* Make SECRET_COLLECTION_DEFAULT and SECRET_COLLECTION_SESSION be the simple aliases for those collections. * Accept either an alias or a path in secret_password_store() and secret_service_store() and friends.
This commit is contained in:
parent
7098b856b7
commit
b535ed1bbf
@ -66,6 +66,21 @@
|
|||||||
* during a secret_collection_new() or secret_collection_new_sync() operation.
|
* during a secret_collection_new() or secret_collection_new_sync() operation.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SECRET_COLLECTION_DEFAULT:
|
||||||
|
*
|
||||||
|
* An alias to the default collection. This can be passed to secret_password_store()
|
||||||
|
* secret_service_read_alias().
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SECRET_COLLECTION_SESSION:
|
||||||
|
*
|
||||||
|
* An alias to the session collection, which will be cleared when the user ends
|
||||||
|
* the session. This can be passed to secret_password_store(),
|
||||||
|
* secret_service_read_alias() or similar functions.
|
||||||
|
*/
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
PROP_0,
|
PROP_0,
|
||||||
PROP_SERVICE,
|
PROP_SERVICE,
|
||||||
|
@ -1000,7 +1000,7 @@ on_store_service (GObject *source,
|
|||||||
* @service: (allow-none): the secret service
|
* @service: (allow-none): the secret service
|
||||||
* @schema: (allow-none): the schema to use to check attributes
|
* @schema: (allow-none): the schema to use to check attributes
|
||||||
* @attributes: (element-type utf8 utf8): the attribute keys and values
|
* @attributes: (element-type utf8 utf8): the attribute keys and values
|
||||||
* @collection_path: (allow-none): the D-Bus path to the collection where to store the secret
|
* @collection: (allow-none): a collection alias, or D-Bus object path of the collection where to store the secret
|
||||||
* @label: label for the secret
|
* @label: label for the secret
|
||||||
* @value: the secret value
|
* @value: the secret value
|
||||||
* @cancellable: optional cancellation object
|
* @cancellable: optional cancellation object
|
||||||
@ -1017,7 +1017,7 @@ on_store_service (GObject *source,
|
|||||||
* If @service is NULL, then secret_service_get() will be called to get
|
* If @service is NULL, then secret_service_get() will be called to get
|
||||||
* the default #SecretService proxy.
|
* the default #SecretService proxy.
|
||||||
*
|
*
|
||||||
* If @collection_path is not specified, then the default collection will be
|
* If @collection is not specified, then the default collection will be
|
||||||
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
||||||
* collection, which doesn't get stored across login sessions.
|
* collection, which doesn't get stored across login sessions.
|
||||||
*
|
*
|
||||||
@ -1027,7 +1027,7 @@ void
|
|||||||
secret_service_store (SecretService *service,
|
secret_service_store (SecretService *service,
|
||||||
const SecretSchema *schema,
|
const SecretSchema *schema,
|
||||||
GHashTable *attributes,
|
GHashTable *attributes,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
SecretValue *value,
|
SecretValue *value,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
@ -1052,7 +1052,7 @@ secret_service_store (SecretService *service,
|
|||||||
async = g_simple_async_result_new (G_OBJECT (service), callback, user_data,
|
async = g_simple_async_result_new (G_OBJECT (service), callback, user_data,
|
||||||
secret_service_store);
|
secret_service_store);
|
||||||
store = g_slice_new0 (StoreClosure);
|
store = g_slice_new0 (StoreClosure);
|
||||||
store->collection_path = g_strdup (collection_path);
|
store->collection_path = _secret_util_collection_to_path (collection);
|
||||||
store->cancellable = cancellable ? g_object_ref (cancellable) : NULL;
|
store->cancellable = cancellable ? g_object_ref (cancellable) : NULL;
|
||||||
store->value = secret_value_ref (value);
|
store->value = secret_value_ref (value);
|
||||||
store->properties = g_hash_table_new_full (g_str_hash, g_str_equal, NULL,
|
store->properties = g_hash_table_new_full (g_str_hash, g_str_equal, NULL,
|
||||||
@ -1117,7 +1117,7 @@ secret_service_store_finish (SecretService *service,
|
|||||||
* @service: (allow-none): the secret service
|
* @service: (allow-none): the secret service
|
||||||
* @schema: (allow-none): the schema for the attributes
|
* @schema: (allow-none): the schema for the attributes
|
||||||
* @attributes: (element-type utf8 utf8): the attribute keys and values
|
* @attributes: (element-type utf8 utf8): the attribute keys and values
|
||||||
* @collection_path: (allow-none): the D-Bus path to the collection where to store the secret
|
* @collection: (allow-none): a collection alias, or D-Bus object path of the collection where to store the secret
|
||||||
* @label: label for the secret
|
* @label: label for the secret
|
||||||
* @value: the secret value
|
* @value: the secret value
|
||||||
* @cancellable: optional cancellation object
|
* @cancellable: optional cancellation object
|
||||||
@ -1130,7 +1130,7 @@ secret_service_store_finish (SecretService *service,
|
|||||||
* If the attributes match a secret item already stored in the collection, then
|
* If the attributes match a secret item already stored in the collection, then
|
||||||
* the item will be updated with these new values.
|
* the item will be updated with these new values.
|
||||||
*
|
*
|
||||||
* If @collection_path is %NULL, then the default collection will be
|
* If @collection is %NULL, then the default collection will be
|
||||||
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
||||||
* collection, which doesn't get stored across login sessions.
|
* collection, which doesn't get stored across login sessions.
|
||||||
*
|
*
|
||||||
@ -1146,7 +1146,7 @@ gboolean
|
|||||||
secret_service_store_sync (SecretService *service,
|
secret_service_store_sync (SecretService *service,
|
||||||
const SecretSchema *schema,
|
const SecretSchema *schema,
|
||||||
GHashTable *attributes,
|
GHashTable *attributes,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
SecretValue *value,
|
SecretValue *value,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
@ -1169,7 +1169,7 @@ secret_service_store_sync (SecretService *service,
|
|||||||
sync = _secret_sync_new ();
|
sync = _secret_sync_new ();
|
||||||
g_main_context_push_thread_default (sync->context);
|
g_main_context_push_thread_default (sync->context);
|
||||||
|
|
||||||
secret_service_store (service, schema, attributes, collection_path,
|
secret_service_store (service, schema, attributes, collection,
|
||||||
label, value, cancellable, _secret_sync_on_result, sync);
|
label, value, cancellable, _secret_sync_on_result, sync);
|
||||||
|
|
||||||
g_main_loop_run (sync->loop);
|
g_main_loop_run (sync->loop);
|
||||||
|
@ -45,7 +45,7 @@
|
|||||||
/**
|
/**
|
||||||
* secret_password_store: (skip)
|
* secret_password_store: (skip)
|
||||||
* @schema: the schema for attributes
|
* @schema: the schema for attributes
|
||||||
* @collection_path: (allow-none): the D-Bus object path of the collection where to store the secret
|
* @collection: (allow-none): a collection alias, or D-Bus object path of the collection where to store the secret
|
||||||
* @label: label for the secret
|
* @label: label for the secret
|
||||||
* @password: the null-terminated password to store
|
* @password: the null-terminated password to store
|
||||||
* @cancellable: optional cancellation object
|
* @cancellable: optional cancellation object
|
||||||
@ -63,7 +63,7 @@
|
|||||||
* If the attributes match a secret item already stored in the collection, then
|
* If the attributes match a secret item already stored in the collection, then
|
||||||
* the item will be updated with these new values.
|
* the item will be updated with these new values.
|
||||||
*
|
*
|
||||||
* If @collection_path is %NULL, then the default collection will be
|
* If @collection is %NULL, then the default collection will be
|
||||||
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
||||||
* collection, which doesn't get stored across login sessions.
|
* collection, which doesn't get stored across login sessions.
|
||||||
*
|
*
|
||||||
@ -71,7 +71,7 @@
|
|||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
secret_password_store (const SecretSchema *schema,
|
secret_password_store (const SecretSchema *schema,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
const gchar *password,
|
const gchar *password,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
@ -91,7 +91,7 @@ secret_password_store (const SecretSchema *schema,
|
|||||||
attributes = secret_attributes_buildv (schema, va);
|
attributes = secret_attributes_buildv (schema, va);
|
||||||
va_end (va);
|
va_end (va);
|
||||||
|
|
||||||
secret_password_storev (schema, attributes, collection_path, label, password,
|
secret_password_storev (schema, attributes, collection, label, password,
|
||||||
cancellable, callback, user_data);
|
cancellable, callback, user_data);
|
||||||
|
|
||||||
g_hash_table_unref (attributes);
|
g_hash_table_unref (attributes);
|
||||||
@ -101,7 +101,7 @@ secret_password_store (const SecretSchema *schema,
|
|||||||
* secret_password_storev:
|
* secret_password_storev:
|
||||||
* @schema: the schema for attributes
|
* @schema: the schema for attributes
|
||||||
* @attributes: (element-type utf8 utf8): the attribute keys and values
|
* @attributes: (element-type utf8 utf8): the attribute keys and values
|
||||||
* @collection_path: (allow-none): the D-Bus object path of the collection where to store the secret
|
* @collection: (allow-none): a collection alias, or D-Bus object path of the collection where to store the secret
|
||||||
* @label: label for the secret
|
* @label: label for the secret
|
||||||
* @password: the null-terminated password to store
|
* @password: the null-terminated password to store
|
||||||
* @cancellable: optional cancellation object
|
* @cancellable: optional cancellation object
|
||||||
@ -115,7 +115,7 @@ secret_password_store (const SecretSchema *schema,
|
|||||||
* If the attributes match a secret item already stored in the collection, then
|
* If the attributes match a secret item already stored in the collection, then
|
||||||
* the item will be updated with these new values.
|
* the item will be updated with these new values.
|
||||||
*
|
*
|
||||||
* If @collection_path is %NULL, then the default collection will be
|
* If @collection is %NULL, then the default collection will be
|
||||||
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
||||||
* collection, which doesn't get stored across login sessions.
|
* collection, which doesn't get stored across login sessions.
|
||||||
*
|
*
|
||||||
@ -126,7 +126,7 @@ secret_password_store (const SecretSchema *schema,
|
|||||||
void
|
void
|
||||||
secret_password_storev (const SecretSchema *schema,
|
secret_password_storev (const SecretSchema *schema,
|
||||||
GHashTable *attributes,
|
GHashTable *attributes,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
const gchar *password,
|
const gchar *password,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
@ -147,7 +147,7 @@ secret_password_storev (const SecretSchema *schema,
|
|||||||
|
|
||||||
value = secret_value_new (password, -1, "text/plain");
|
value = secret_value_new (password, -1, "text/plain");
|
||||||
|
|
||||||
secret_service_store (NULL, schema, attributes, collection_path,
|
secret_service_store (NULL, schema, attributes, collection,
|
||||||
label, value, cancellable, callback, user_data);
|
label, value, cancellable, callback, user_data);
|
||||||
|
|
||||||
secret_value_unref (value);
|
secret_value_unref (value);
|
||||||
@ -173,7 +173,7 @@ secret_password_store_finish (GAsyncResult *result,
|
|||||||
/**
|
/**
|
||||||
* secret_password_store_sync:
|
* secret_password_store_sync:
|
||||||
* @schema: the schema for attributes
|
* @schema: the schema for attributes
|
||||||
* @collection_path: (allow-none): the D-Bus object path of the collection where to store the secret
|
* @collection: (allow-none): a collection alias, or D-Bus object path of the collection where to store the secret
|
||||||
* @label: label for the secret
|
* @label: label for the secret
|
||||||
* @password: the null-terminated password to store
|
* @password: the null-terminated password to store
|
||||||
* @cancellable: optional cancellation object
|
* @cancellable: optional cancellation object
|
||||||
@ -190,7 +190,7 @@ secret_password_store_finish (GAsyncResult *result,
|
|||||||
* If the attributes match a secret item already stored in the collection, then
|
* If the attributes match a secret item already stored in the collection, then
|
||||||
* the item will be updated with these new values.
|
* the item will be updated with these new values.
|
||||||
*
|
*
|
||||||
* If @collection_path is %NULL, then the default collection will be
|
* If @collection is %NULL, then the default collection will be
|
||||||
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
||||||
* collection, which doesn't get stored across login sessions.
|
* collection, which doesn't get stored across login sessions.
|
||||||
*
|
*
|
||||||
@ -201,7 +201,7 @@ secret_password_store_finish (GAsyncResult *result,
|
|||||||
*/
|
*/
|
||||||
gboolean
|
gboolean
|
||||||
secret_password_store_sync (const SecretSchema *schema,
|
secret_password_store_sync (const SecretSchema *schema,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
const gchar *password,
|
const gchar *password,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
@ -222,7 +222,7 @@ secret_password_store_sync (const SecretSchema *schema,
|
|||||||
attributes = secret_attributes_buildv (schema, va);
|
attributes = secret_attributes_buildv (schema, va);
|
||||||
va_end (va);
|
va_end (va);
|
||||||
|
|
||||||
ret = secret_password_storev_sync (schema, attributes, collection_path,
|
ret = secret_password_storev_sync (schema, attributes, collection,
|
||||||
label, password, cancellable, error);
|
label, password, cancellable, error);
|
||||||
|
|
||||||
g_hash_table_unref (attributes);
|
g_hash_table_unref (attributes);
|
||||||
@ -233,7 +233,7 @@ secret_password_store_sync (const SecretSchema *schema,
|
|||||||
* secret_password_storev_sync:
|
* secret_password_storev_sync:
|
||||||
* @schema: the schema for attributes
|
* @schema: the schema for attributes
|
||||||
* @attributes: (element-type utf8 utf8): the attribute keys and values
|
* @attributes: (element-type utf8 utf8): the attribute keys and values
|
||||||
* @collection_path: (allow-none): the D-Bus object path of the collection where to store the secret
|
* @collection: (allow-none): a collection alias, or D-Bus object path of the collection where to store the secret
|
||||||
* @label: label for the secret
|
* @label: label for the secret
|
||||||
* @password: the null-terminated password to store
|
* @password: the null-terminated password to store
|
||||||
* @cancellable: optional cancellation object
|
* @cancellable: optional cancellation object
|
||||||
@ -246,7 +246,7 @@ secret_password_store_sync (const SecretSchema *schema,
|
|||||||
* If the attributes match a secret item already stored in the collection, then
|
* If the attributes match a secret item already stored in the collection, then
|
||||||
* the item will be updated with these new values.
|
* the item will be updated with these new values.
|
||||||
*
|
*
|
||||||
* If @collection_path is %NULL, then the default collection will be
|
* If @collection is %NULL, then the default collection will be
|
||||||
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
||||||
* collection, which doesn't get stored across login sessions.
|
* collection, which doesn't get stored across login sessions.
|
||||||
*
|
*
|
||||||
@ -260,7 +260,7 @@ secret_password_store_sync (const SecretSchema *schema,
|
|||||||
gboolean
|
gboolean
|
||||||
secret_password_storev_sync (const SecretSchema *schema,
|
secret_password_storev_sync (const SecretSchema *schema,
|
||||||
GHashTable *attributes,
|
GHashTable *attributes,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
const gchar *password,
|
const gchar *password,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
@ -283,7 +283,7 @@ secret_password_storev_sync (const SecretSchema *schema,
|
|||||||
sync = _secret_sync_new ();
|
sync = _secret_sync_new ();
|
||||||
g_main_context_push_thread_default (sync->context);
|
g_main_context_push_thread_default (sync->context);
|
||||||
|
|
||||||
secret_password_storev (schema, attributes, collection_path, label, password,
|
secret_password_storev (schema, attributes, collection, label, password,
|
||||||
cancellable, _secret_sync_on_result, sync);
|
cancellable, _secret_sync_on_result, sync);
|
||||||
|
|
||||||
g_main_loop_run (sync->loop);
|
g_main_loop_run (sync->loop);
|
||||||
|
@ -27,7 +27,7 @@ G_BEGIN_DECLS
|
|||||||
#include "secret-types.h"
|
#include "secret-types.h"
|
||||||
|
|
||||||
void secret_password_store (const SecretSchema *schema,
|
void secret_password_store (const SecretSchema *schema,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
const gchar *password,
|
const gchar *password,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
@ -37,7 +37,7 @@ void secret_password_store (const SecretSchema *sche
|
|||||||
|
|
||||||
void secret_password_storev (const SecretSchema *schema,
|
void secret_password_storev (const SecretSchema *schema,
|
||||||
GHashTable *attributes,
|
GHashTable *attributes,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
const gchar *password,
|
const gchar *password,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
@ -48,7 +48,7 @@ gboolean secret_password_store_finish (GAsyncResult *result,
|
|||||||
GError **error);
|
GError **error);
|
||||||
|
|
||||||
gboolean secret_password_store_sync (const SecretSchema *schema,
|
gboolean secret_password_store_sync (const SecretSchema *schema,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
const gchar *password,
|
const gchar *password,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
@ -57,7 +57,7 @@ gboolean secret_password_store_sync (const SecretSchema *sche
|
|||||||
|
|
||||||
gboolean secret_password_storev_sync (const SecretSchema *schema,
|
gboolean secret_password_storev_sync (const SecretSchema *schema,
|
||||||
GHashTable *attributes,
|
GHashTable *attributes,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
const gchar *password,
|
const gchar *password,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
|
@ -1834,7 +1834,7 @@ on_create_item_session (GObject *source,
|
|||||||
/**
|
/**
|
||||||
* secret_service_create_item_dbus_path:
|
* secret_service_create_item_dbus_path:
|
||||||
* @self: a secret service object
|
* @self: a secret service object
|
||||||
* @collection_path: (allow-none): the D-Bus object path of the collection in which to create item
|
* @collection_path: the D-Bus object path of the collection in which to create item
|
||||||
* @properties: (element-type utf8 GLib.Variant): hash table of D-Bus properties
|
* @properties: (element-type utf8 GLib.Variant): hash table of D-Bus properties
|
||||||
* for the new collection
|
* for the new collection
|
||||||
* @value: the secret value to store in the item
|
* @value: the secret value to store in the item
|
||||||
@ -1859,10 +1859,6 @@ on_create_item_session (GObject *source,
|
|||||||
* <literal>org.freedesktop.Secret.Item.Label</literal>. The values
|
* <literal>org.freedesktop.Secret.Item.Label</literal>. The values
|
||||||
* in the hash table should be #GVariant values of the properties.
|
* in the hash table should be #GVariant values of the properties.
|
||||||
*
|
*
|
||||||
* If @collection_path is %NULL, then the default collection will be
|
|
||||||
* used. Use #SECRET_COLLECTION_SESSION to store the password in the session
|
|
||||||
* collection, which doesn't get stored across login sessions.
|
|
||||||
*
|
|
||||||
* This method will return immediately and complete asynchronously. The secret
|
* This method will return immediately and complete asynchronously. The secret
|
||||||
* service may prompt the user. secret_service_prompt() will be used to handle
|
* service may prompt the user. secret_service_prompt() will be used to handle
|
||||||
* any prompts that are required.
|
* any prompts that are required.
|
||||||
@ -1881,13 +1877,11 @@ secret_service_create_item_dbus_path (SecretService *self,
|
|||||||
ItemClosure *closure;
|
ItemClosure *closure;
|
||||||
|
|
||||||
g_return_if_fail (SECRET_IS_SERVICE (self));
|
g_return_if_fail (SECRET_IS_SERVICE (self));
|
||||||
|
g_return_if_fail (collection_path != NULL && g_variant_is_object_path (collection_path));
|
||||||
g_return_if_fail (properties != NULL);
|
g_return_if_fail (properties != NULL);
|
||||||
g_return_if_fail (value != NULL);
|
g_return_if_fail (value != NULL);
|
||||||
g_return_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable));
|
g_return_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable));
|
||||||
|
|
||||||
if (collection_path == NULL)
|
|
||||||
collection_path = SECRET_COLLECTION_DEFAULT;
|
|
||||||
|
|
||||||
res = g_simple_async_result_new (G_OBJECT (self), callback, user_data,
|
res = g_simple_async_result_new (G_OBJECT (self), callback, user_data,
|
||||||
secret_service_create_item_dbus_path);
|
secret_service_create_item_dbus_path);
|
||||||
closure = g_slice_new0 (ItemClosure);
|
closure = g_slice_new0 (ItemClosure);
|
||||||
@ -1945,7 +1939,7 @@ secret_service_create_item_dbus_path_finish (SecretService *self,
|
|||||||
/**
|
/**
|
||||||
* secret_service_create_item_dbus_path_sync:
|
* secret_service_create_item_dbus_path_sync:
|
||||||
* @self: a secret service object
|
* @self: a secret service object
|
||||||
* @collection_path: (allow-none): the D-Bus path of the collection in which to create item
|
* @collection_path: the D-Bus path of the collection in which to create item
|
||||||
* @properties: (element-type utf8 GLib.Variant): hash table of D-Bus properties
|
* @properties: (element-type utf8 GLib.Variant): hash table of D-Bus properties
|
||||||
* for the new collection
|
* for the new collection
|
||||||
* @value: the secret value to store in the item
|
* @value: the secret value to store in the item
|
||||||
@ -1989,6 +1983,7 @@ secret_service_create_item_dbus_path_sync (SecretService *self,
|
|||||||
gchar *path;
|
gchar *path;
|
||||||
|
|
||||||
g_return_val_if_fail (SECRET_IS_SERVICE (self), NULL);
|
g_return_val_if_fail (SECRET_IS_SERVICE (self), NULL);
|
||||||
|
g_return_val_if_fail (collection_path != NULL && g_variant_is_object_path (collection_path), NULL);
|
||||||
g_return_val_if_fail (properties != NULL, NULL);
|
g_return_val_if_fail (properties != NULL, NULL);
|
||||||
g_return_val_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable), NULL);
|
g_return_val_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable), NULL);
|
||||||
g_return_val_if_fail (error == NULL || *error == NULL, NULL);
|
g_return_val_if_fail (error == NULL || *error == NULL, NULL);
|
||||||
|
@ -64,6 +64,8 @@ gchar * _secret_util_parent_path (const gchar *path
|
|||||||
|
|
||||||
gboolean _secret_util_empty_path (const gchar *path);
|
gboolean _secret_util_empty_path (const gchar *path);
|
||||||
|
|
||||||
|
gchar * _secret_util_collection_to_path (const gchar *collection);
|
||||||
|
|
||||||
gint _secret_util_array_index_of (GVariant *array,
|
gint _secret_util_array_index_of (GVariant *array,
|
||||||
GVariant *value);
|
GVariant *value);
|
||||||
|
|
||||||
|
@ -223,7 +223,7 @@ gint secret_service_unlock_sync (SecretService
|
|||||||
void secret_service_store (SecretService *service,
|
void secret_service_store (SecretService *service,
|
||||||
const SecretSchema *schema,
|
const SecretSchema *schema,
|
||||||
GHashTable *attributes,
|
GHashTable *attributes,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
SecretValue *value,
|
SecretValue *value,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
@ -237,7 +237,7 @@ gboolean secret_service_store_finish (SecretService
|
|||||||
gboolean secret_service_store_sync (SecretService *service,
|
gboolean secret_service_store_sync (SecretService *service,
|
||||||
const SecretSchema *schema,
|
const SecretSchema *schema,
|
||||||
GHashTable *attributes,
|
GHashTable *attributes,
|
||||||
const gchar *collection_path,
|
const gchar *collection,
|
||||||
const gchar *label,
|
const gchar *label,
|
||||||
SecretValue *value,
|
SecretValue *value,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
|
@ -37,9 +37,9 @@ typedef struct _SecretPrompt SecretPrompt;
|
|||||||
typedef struct _SecretService SecretService;
|
typedef struct _SecretService SecretService;
|
||||||
typedef struct _SecretValue SecretValue;
|
typedef struct _SecretValue SecretValue;
|
||||||
|
|
||||||
#define SECRET_COLLECTION_DEFAULT "/org/freedesktop/secrets/aliases/default"
|
#define SECRET_COLLECTION_DEFAULT "default"
|
||||||
|
|
||||||
#define SECRET_COLLECTION_SESSION "/org/freedesktop/secrets/aliases/session"
|
#define SECRET_COLLECTION_SESSION "session"
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
|
@ -109,6 +109,16 @@ _secret_util_empty_path (const gchar *path)
|
|||||||
return (g_str_equal (path, "") || g_str_equal (path, "/"));
|
return (g_str_equal (path, "") || g_str_equal (path, "/"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gchar *
|
||||||
|
_secret_util_collection_to_path (const gchar *collection)
|
||||||
|
{
|
||||||
|
if (collection == NULL)
|
||||||
|
collection = SECRET_COLLECTION_DEFAULT;
|
||||||
|
if (strchr (collection, '/') == NULL)
|
||||||
|
return g_strdup_printf ("/org/freedesktop/secrets/aliases/%s", collection);
|
||||||
|
return g_strdup (collection);
|
||||||
|
}
|
||||||
|
|
||||||
GVariant *
|
GVariant *
|
||||||
_secret_util_variant_for_properties (GHashTable *properties)
|
_secret_util_variant_for_properties (GHashTable *properties)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user