commit b85c8758b07da3ff65cebdbac8a8984d27fe2fd4 Author: Stef Walter Date: 2012-07-09 Release version 0.4 NEWS | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) commit 9c2eca05ff0432ddc9267b693c91d690e7285095 Author: Stef Walter Date: 2012-07-09 Implement per collection search * Use the SearchItems dbus method on the Collection interface * Tweak some issues with the service search code as well docs/reference/libsecret/libsecret-sections.txt | 6 + library/secret-collection.c | 381 +++++++++++++++++++++++ library/secret-collection.h | 20 ++ library/secret-methods.c | 60 ++-- library/secret-paths.c | 150 ++++++++- library/secret-paths.h | 16 + library/secret-service.h | 7 - library/secret-types.h | 7 + library/tests/mock/service.py | 5 + library/tests/test-collection.c | 348 +++++++++++++++++++++ 10 files changed, 964 insertions(+), 36 deletions(-) commit 30d1337a7cb60693fbcee5ce67cc3907d144d35a Author: Stef Walter Date: 2012-07-09 Register secret service errors as DBus errors * and strip remote error codes from error->message so that they don't clutter things. library/secret-item.c | 14 +++++++++---- library/secret-paths.c | 12 ++++++++++- library/secret-private.h | 2 ++ library/secret-prompt.c | 2 ++ library/secret-service.c | 4 ++++ library/secret-session.c | 2 ++ library/secret-types.h | 3 +++ library/secret-util.c | 48 +++++++++++++++++++++++++++++++++++-------- library/tests/test-prompt.c | 11 ++++++++++ 9 files changed, 84 insertions(+), 14 deletions(-) commit 8339f296e884c85cfe7f74f66a0d60323e6b7b9a Author: Martyn Russell Date: 2012-07-08 Don't try to build test-vala-lang if !HAVE_INTROSPECTION or !ENABLE_VAPIGEN * libsecret-@SECRET_MAJOR@.vapi is built only with those 2 defines and these were not checked before depending that target for the test case Found during jhbuild run library/tests/Makefile.am | 6 ++++++ 1 file changed, 6 insertions(+) commit 5ecab6d33ba945bd02fd7ba6c223d4c2e6d1da23 Author: Stef Walter Date: 2012-07-06 Get service correctly for secret_service_set_alias() * We can't use secret_collection_get_service() since a NULL collection can be passed in. library/secret-methods.c | 114 ++++++++++++++++++++++++++++++++++++---------- 1 file changed, 90 insertions(+), 24 deletions(-) commit c1f860d45ff5a87f4e8205ae27c3066598d2a01a Author: Stef Walter Date: 2012-07-06 Fix up documentation docs/reference/libsecret/libsecret-sections.txt | 1 + library/secret-collection.c | 18 +++++++----------- library/secret-item.c | 18 ++++++------------ library/secret-methods.c | 10 ++++++++++ library/secret-paths.c | 2 +- 5 files changed, 25 insertions(+), 24 deletions(-) commit 175ae0898446de247530de47ae2a4edc0340e08e Author: Stef Walter Date: 2012-07-06 Disconnect the cached default SecretService if service goes away * Because the session would no longer be valid if the service was autostarted for the same SecretService proxy docs/reference/libsecret/libsecret-sections.txt | 1 + library/secret-service.c | 116 +++++++++++++++++------ library/tests/mock-service.c | 1 + library/tests/test-password.c | 1 - 4 files changed, 88 insertions(+), 31 deletions(-) commit b535ed1bbfa1f8e78db1f4a27f42e06adcb1b04b Author: Stef Walter Date: 2012-07-06 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. library/secret-collection.c | 15 +++++++++++++++ library/secret-methods.c | 16 ++++++++-------- library/secret-password.c | 32 ++++++++++++++++---------------- library/secret-password.h | 8 ++++---- library/secret-paths.c | 13 ++++--------- library/secret-private.h | 2 ++ library/secret-service.h | 4 ++-- library/secret-types.h | 4 ++-- library/secret-util.c | 10 ++++++++++ 9 files changed, 63 insertions(+), 41 deletions(-) commit 7098b856b79de5f2234d98a203eb62b1d695a4d5 Author: Stef Walter Date: 2012-07-06 Rename the functions that operate on a dbus item path * They all contain '_dbus_path' in their name * Move secret_service_get_session_path() to the paths functionality * Move the secret_collection_new() and secret_item_new() functionality to the path based section. docs/reference/libsecret/libsecret-sections.txt | 80 +-- library/secret-collection.c | 171 +----- library/secret-collection.h | 16 - library/secret-item.c | 155 +---- library/secret-item.h | 16 - library/secret-methods.c | 124 ++-- library/secret-paths.c | 733 +++++++++++++++-------- library/secret-paths.h | 410 +++++++------ library/secret-private.h | 4 + library/secret-service.c | 46 +- library/secret-service.h | 6 +- library/tests/test-collection.c | 70 +-- library/tests/test-item.c | 69 +-- library/tests/test-methods.c | 33 +- library/tests/test-paths.c | 110 ++-- library/tests/test-service.c | 31 +- library/tests/test-session.c | 74 ++- 17 files changed, 1084 insertions(+), 1064 deletions(-) commit 3cb0d8047da1bff2eb7286eef014ff8948c99333 Author: Stef Walter Date: 2012-07-05 Make sure notifications come in for new objects before waiting * In tests make sure notifications settle down before waiting on new notifications. This fixes random test crashes. * Using async here means all signals are delivered by the time we get the new object. library/tests/test-collection.c | 8 ++++++-- library/tests/test-item.c | 14 ++++++++++++-- 2 files changed, 18 insertions(+), 4 deletions(-) commit 600021a30b9266ebf805e86ac3520570ad8c9d56 Author: Stef Walter Date: 2012-07-05 Accept NULL as a SecretService parameter for many methods * We use secret_service_get() to lookup the default SecretService in these cases. * Use this functionality in the secret_password_xxx() functions to greatly simplify them. library/secret-collection.c | 168 ++++++++-- library/secret-item.c | 76 ++++- library/secret-methods.c | 665 +++++++++++++++++++++++++++++---------- library/secret-password.c | 312 ++---------------- library/secret-service.c | 51 +-- library/secret-service.h | 84 ++--- library/tests/test-collection.c | 1 + library/tests/test-item.c | 1 + library/tests/test-methods.c | 1 + library/tests/test-password.c | 1 + library/tests/test-paths.c | 1 + library/tests/test-prompt.c | 1 + library/tests/test-service.c | 11 +- library/tests/test-session.c | 1 + 14 files changed, 820 insertions(+), 554 deletions(-) commit 153dfcec5ff7f9799ae6bbd1d053fa58cc49eb7e Author: Stef Walter Date: 2012-07-05 Add secret_collection_load_items() * And flags to prevent loading of items when creating a SecretCollection object * Rename secret_service_ensure_collections() to secret_service_load_collections() docs/reference/libsecret/libsecret-sections.txt | 13 +- library/secret-collection.c | 465 +++++++++++++++-------- library/secret-collection.h | 22 ++ library/secret-methods.c | 4 +- library/secret-service.c | 64 ++-- library/secret-service.h | 6 +- library/tests/test-collection.c | 46 ++- library/tests/test-item.c | 6 +- library/tests/test-methods.c | 9 +- library/tests/test-service.c | 6 +- 10 files changed, 417 insertions(+), 224 deletions(-) commit 3f0c69d8620ceafb99ec5558b6860b2bc490dc66 Author: Stef Walter Date: 2012-07-05 secret_service_search() accepts a SecretSchema * For validation and adding the xdg:schema attribute library/secret-methods.c | 16 ++++++++++++++-- library/secret-paths.c | 25 +++++++++++++++++++++++-- library/secret-paths.h | 2 ++ library/secret-service.h | 2 ++ library/tests/test-methods.c | 34 ++++++++++++++++++---------------- library/tests/test-paths.c | 18 +++++++++--------- 6 files changed, 68 insertions(+), 29 deletions(-) commit 889f6d66b72904df779ff52054ee86abc03bcd7e Author: Stef Walter Date: 2012-07-05 Make secret_service_search() able to unlock, load secrets * Turn secret_service_search() and friends into a more convenient API, so that callers can get attributes, unlocking, and secrets if so desired. * Also support retrieving either one secret, or all of them. docs/reference/libsecret/libsecret-sections.txt | 3 + library/secret-methods.c | 285 ++++++++++++++++------- library/secret-service.h | 19 +- library/tests/test-methods.c | 268 +++++++++++++++------ 4 files changed, 413 insertions(+), 162 deletions(-) commit 9c44ab0fa23d24a12f4d92e2f737eaf6c76b0b4b Author: Stef Walter Date: 2012-07-05 Update the "Locked" property of items/collections on lock/unlock * Make sure this property is kept in sync so it can be used immediately in the logic to retrieve secrets or other stuff. * We don't wait for a PropertiesChanged, which may come later library/secret-methods.c | 220 ++++++++++++++-------------------------------- library/secret-paths.c | 55 +++++------- library/secret-private.h | 12 +++ 3 files changed, 100 insertions(+), 187 deletions(-) commit 012ed7d620e3736d99648267828d8bded5cdae6f Author: Stef Walter Date: 2012-07-05 Move secret_service_get_secrets() to secret_item_load_secrets() * And cache the secrets on the items instead of returning them in a GHashtable docs/reference/libsecret/libsecret-sections.txt | 6 +- library/secret-item.c | 231 +++++++++++++++++++++++ library/secret-item.h | 12 ++ library/secret-methods.c | 228 ---------------------- library/secret-paths.c | 4 +- library/secret-service.h | 15 -- library/tests/test-item.c | 115 +++++++++++ library/tests/test-methods.c | 113 ----------- 8 files changed, 363 insertions(+), 361 deletions(-) commit ba7fe4fe8c3624f87c9332a0c3b03e96edcdaade Author: Stef Walter Date: 2012-07-05 Fix invalid pre-condition in secret_item_get_service() library/secret-item.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f962662b09ffe9654ab22ce4d2133b3771c552ac Author: Stef Walter Date: 2012-07-05 Separate path based functionality * Move the dbus object path based functionality into its own file and own section of the documentation. docs/reference/libsecret/libsecret-docs.sgml | 1 + docs/reference/libsecret/libsecret-sections.txt | 69 +- library/Makefile.am | 2 + library/secret-collection.c | 1 + library/secret-item.c | 1 + library/secret-methods.c | 2159 +++-------------------- library/secret-paths.c | 2054 +++++++++++++++++++++ library/secret-paths.h | 219 +++ library/secret-private.h | 6 + library/secret-service.c | 87 +- library/secret-service.h | 185 -- library/secret-unstable.h | 1 + library/tests/Makefile.am | 1 + library/tests/test-methods.c | 614 +------ library/tests/test-paths.c | 743 ++++++++ 15 files changed, 3295 insertions(+), 2848 deletions(-) commit 6f4a53f08be4746783f3cf0b448d776e2dedbe12 Author: Stef Walter Date: 2012-07-05 Don't continue initialization of SecretService if failed * Don't open session or load collections on SecretService if the first part of the initialization failed library/secret-service.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) commit fc0549d2ab35573d048c9c369be3afa2a2c9e9e9 Author: Stef Walter Date: 2012-07-05 Uninitialize the mutex in SecretService * Fix resource leak library/secret-service.c | 1 + 1 file changed, 1 insertion(+) commit 49dd623e6e6a688ce7b63dc75fb410a203a58256 Author: Stef Walter Date: 2012-07-05 Keep a cached SecretValue on each SecretItem * This item can be retrieved immediately and loaded asynchronously * It can also be loaded during initialization of the SecretItem object docs/reference/libsecret/libsecret-sections.txt | 9 +- library/secret-collection.c | 5 +- library/secret-item.c | 358 ++++++++++++++++++----- library/secret-item.h | 17 +- library/secret-methods.c | 5 +- library/secret-private.h | 3 + library/tests/test-item.c | 83 ++++-- library/tests/test-methods.c | 12 +- 8 files changed, 377 insertions(+), 115 deletions(-) commit e72c4c5409e72e5f68ae8842d0655ba1c2f6efff Author: Colin Walters Date: 2012-06-28 build: Remove double usage of $(srcdir) This is a regression introduced by commit 3bc89a8971463d21535db1294bdfaadf62761b9b. library/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 541ba2095a9f1b44861d247622348f51034ca17a Author: Colin Walters Date: 2012-06-28 build: Ensure aclocal finds our local macros The vala bindings commit copied in vapigen.m4, but our autogen.sh invocation was depending on it being found in the buildroot. This ensures autogen.sh will work without vala. autogen.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 89550876ff1345e3f348d88a9be46261486c876f Author: Stef Walter Date: 2012-06-28 Remove varargs SecretService methods * The SecretService methods aren't used as frequently as the password methods, and it's not really necessary to have a whole bunch of extra varargs functions. * Add varargs functions for building a GHashTable of attributes docs/reference/libsecret/libsecret-docs.sgml | 1 + docs/reference/libsecret/libsecret-sections.txt | 13 +- library/Makefile.am | 2 + library/secret-attributes.c | 276 +++++++++++++++ library/secret-attributes.h | 38 +++ library/secret-item.c | 8 +- library/secret-methods.c | 406 +++-------------------- library/secret-password.c | 61 ++-- library/secret-private.h | 11 +- library/secret-service.h | 45 --- library/secret-unstable.h | 1 + library/secret-util.c | 199 ----------- library/tests/test-methods.c | 201 ++++++----- tool/secret-tool.c | 6 +- 14 files changed, 539 insertions(+), 729 deletions(-) commit d0df587f088623b01ceaba7e18b8ef939d8c0831 Author: Evan Nemerson Date: 2012-06-28 Add Vala bindings. https://bugzilla.gnome.org/show_bug.cgi?id=678846 .gitignore | 7 +- build/m4/vapigen.m4 | 96 ++++++++++++ configure.ac | 12 ++ docs/reference/libsecret/libsecret-examples.sgml | 168 +++++++++++++++++++++ library/Makefile.am | 24 ++- library/Secret-0.metadata | 26 ++++ library/tests/Makefile.am | 82 ++++++++++- library/tests/test-vala-lang.vala | 172 ++++++++++++++++++++++ 8 files changed, 577 insertions(+), 10 deletions(-) commit 3bc89a8971463d21535db1294bdfaadf62761b9b Author: Evan Nemerson Date: 2012-06-28 Fix VPATH build. library/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 526bba24a41c4173e9fa448e5d47f20f0c89940f Author: Stef Walter Date: 2012-06-28 Fix python tests when libsecret is not installed library/tests/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 30c0afeab1ba1261b0778b2edb79548eed3165d3 Author: Stef Walter Date: 2012-06-28 Add varargs function: secret_schema_new vs. secret_schema_newv * Rename secret_schema_new to secret_schema_newv which accepts a GHashTable * Make secret_schema_new accept varargs similar to the password functions. * This is useful from vala which supports varargs docs/reference/libsecret/libsecret-sections.txt | 1 + library/secret-password.c | 2 +- library/secret-schema.c | 78 +++++++++++++++++++++-- library/secret-schema.h | 6 +- 4 files changed, 78 insertions(+), 9 deletions(-) commit 2ff021044aa7263ef4223a10963180f2056e44e0 Author: Stef Walter Date: 2012-06-27 Ignore built po file .gitignore | 1 + 1 file changed, 1 insertion(+) commit eb5ff30028a5d667941bd0f75152eef7ccf10ac5 Author: Stef Walter Date: 2012-06-27 Bump the version number configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f24984880e02f32adca0b6931ba476fc12fba0f5 Author: Stef Walter Date: 2012-06-27 Fix endless loop when retrieving properties library/secret-util.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d9ec34322d036e108ba945a5b4ca66fbb808db71 Author: Stef Walter Date: 2012-06-27 Use the correct 'g-properties-changed' signal library/secret-util.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5e73621f401a6732c069b5e89c4005b91947a979 Author: Stef Walter Date: 2012-06-27 Use correct path when initializing a collection library/secret-service.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 277e65b87aeb43492a561cf1dc94130e1e75584c Author: Stef Walter Date: 2012-06-27 Call correct method for secret_service_unlock() * Previously erroneously called "Lock" instead of "Unlock" library/secret-methods.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f64cf14f412cc58dd636d285785d040e7709c555 Author: Stef Walter Date: 2012-06-27 Don't dispose SecretItem proxies when they go away * This is strange behavior and causes unexpected results in calling programs library/secret-item.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) commit 738b11c14c672eae6e9a86a8c9b4e0ba076eb205 Author: Stef Walter Date: 2012-06-27 Proper async behavior for seahorse_collection_delete () * The async 'source' object was set to a SecretService instead of a SecretCollection in the callback library/secret-collection.c | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) commit 463c649ca8e227af518042a7dc4c8ed5740c0476 Author: Stef Walter Date: 2012-06-27 Update the collection 'Items' property correctly * Problems due to not setting constructing flag when construction of SecretCollection completed library/secret-collection.c | 4 ++++ 1 file changed, 4 insertions(+) commit 258ef1b8b812ac5a7c5f0468b1fe5ab6a8f700a2 Author: Stef Walter Date: 2012-06-27 Fix null-pointer dereference * In the corner case where we don't know about a collection/item but receive the CollectionChanged or ItemChanged signal, fix use of a null pointer library/secret-collection.c | 6 ++++-- library/secret-service.c | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) commit 9b9db3fb517d8595bcd10595f2607c3b14cb7d90 Author: Stef Walter Date: 2012-06-27 Use correct variant signatures for Secret Service signals * Fix typo for signatures used when receiving CollectionCreated, CollectionChanged, CollectionDeleted, ItemCreated, ItemChanged, ItemDeleted library/secret-collection.c | 6 +++--- library/secret-service.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) commit 52d455f673c5afbd5b0489425c311471358f1f43 Author: Stef Walter Date: 2012-06-27 Notify the 'items' and 'collections' properties when udpated * When SecretCollection updates its 'items' property or SecretService 'collections' property notify that these have been changed. library/secret-collection.c | 1 + library/secret-service.c | 2 ++ 2 files changed, 3 insertions(+) commit fda131178a5e9a302b2447cff03cfb04857cfb55 Author: Stef Walter Date: 2012-06-27 Pass service GType to secret_service_new() and friends. * This allows callers to use a custom SecretService derived type with the rest of libsecret * The default way to get a SecretService is via secret_service_get() which remains simple without the GType parameter library/secret-service.c | 20 ++++++++++++++++---- library/secret-service.h | 6 ++++-- library/tests/test-service.c | 33 ++++++++++++++++++++++----------- 3 files changed, 42 insertions(+), 17 deletions(-) commit 268f2dfd62f6cb97b35d2d2e365ea13669e92175 Author: Stef Walter Date: 2012-06-27 Don't leak extra mock service when running python tests * Were erroneously starting the mock service when loading the python test modules, although already started in setUp() library/tests/test-lookup-password.py | 2 -- library/tests/test-remove-password.py | 2 -- library/tests/test-store-password.py | 2 -- 3 files changed, 6 deletions(-) commit 1e697f6796b24afb23fe64626c099d5794f7dac6 Author: Stef Walter Date: 2012-06-25 Add SECRET_SCHEMA_NOTE * A real simple schema for stuff stored by the user. * No attributes library/secret-schemas.c | 11 +++++++++++ library/secret-schemas.h | 5 +++++ 2 files changed, 16 insertions(+) commit 8e68f748c3df4a41f55f86cc455656964754addd Author: Colin Walters Date: 2012-06-25 secret-tool: Don't read uninitialized variable on error path tool/secret-tool.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 26326a7c8b6700bd36404691a2901030a3005a51 Author: Colin Walters Date: 2012-06-25 build: Fix srcdir != builddir library/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 7d603a4c06000a0fd0afdb28e8420fb13242537e Author: Piotr Drąg Date: 2012-06-25 Added Polish translation po/LINGUAS | 1 + po/pl.po | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+)