[gnome-keyring] Move gkr_cleanup code into egg component.
- From: Stefan Walter <stefw src gnome org>
- To: svn-commits-list gnome org
- Subject: [gnome-keyring] Move gkr_cleanup code into egg component.
- Date: Mon, 11 May 2009 21:40:18 -0400 (EDT)
commit 6208f071cf6b2b08e0c939104c9981ad9a3505a4
Author: Stef Walter <stef memberwebs com>
Date: Sun May 10 14:56:19 2009 +0000
Move gkr_cleanup code into egg component.
Update tests to new style as well.
---
common/Makefile.am | 1 -
common/gkr-location.c | 5 +-
common/tests/Makefile.am | 1 -
daemon/gkr-daemon-dbus.c | 5 +-
daemon/gkr-daemon-io.c | 5 +-
daemon/gkr-daemon-util.c | 7 ++-
daemon/gkr-daemon.c | 10 ++--
daemon/keyrings/gkr-keyrings.c | 5 +-
daemon/pkcs11/gkr-pkcs11-auth.c | 2 +-
daemon/pkcs11/gkr-pkcs11-daemon.c | 9 ++--
daemon/ui/gkr-ask-daemon.c | 5 +-
egg/Makefile.am | 1 +
common/gkr-cleanup.c => egg/egg-cleanup.c | 24 +++++-----
common/gkr-cleanup.h => egg/egg-cleanup.h | 14 +++---
egg/tests/Makefile.am | 1 +
{common => egg}/tests/unit-test-cleanup.c | 75 ++++++++++++-----------------
16 files changed, 80 insertions(+), 90 deletions(-)
diff --git a/common/Makefile.am b/common/Makefile.am
index d5f2991..569c950 100644
--- a/common/Makefile.am
+++ b/common/Makefile.am
@@ -20,7 +20,6 @@ libgkr_common_la_CFLAGS = \
libgkr_common_la_SOURCES = \
gkr-async.c gkr-async.h \
- gkr-cleanup.c gkr-cleanup.h \
gkr-location.c gkr-location.h \
gkr-location-watch.c gkr-location-watch.h
diff --git a/common/gkr-location.c b/common/gkr-location.c
index 703c82c..190b1d9 100644
--- a/common/gkr-location.c
+++ b/common/gkr-location.c
@@ -25,8 +25,7 @@
#include "gkr-location.h"
-#include "gkr-cleanup.h"
-
+#include "egg/egg-cleanup.h"
#include "egg/egg-dbus.h"
#ifdef WITH_HAL
@@ -634,7 +633,7 @@ gkr_location_manager_get (void)
{
if (!location_manager_singleton) {
location_manager_singleton = g_object_new (GKR_TYPE_LOCATION_MANAGER, NULL);
- gkr_cleanup_register (cleanup_location_manager, NULL);
+ egg_cleanup_register (cleanup_location_manager, NULL);
}
return location_manager_singleton;
diff --git a/common/tests/Makefile.am b/common/tests/Makefile.am
index fbcfe7e..7df5edd 100644
--- a/common/tests/Makefile.am
+++ b/common/tests/Makefile.am
@@ -1,6 +1,5 @@
UNIT_AUTO = \
unit-test-async.c \
- unit-test-cleanup.c \
unit-test-location.c \
unit-test-location-watch.c
diff --git a/daemon/gkr-daemon-dbus.c b/daemon/gkr-daemon-dbus.c
index e3a64b5..cec4e51 100644
--- a/daemon/gkr-daemon-dbus.c
+++ b/daemon/gkr-daemon-dbus.c
@@ -25,8 +25,7 @@
#include "gkr-daemon.h"
#include "gkr-daemon-util.h"
-#include "common/gkr-cleanup.h"
-
+#include "egg/egg-cleanup.h"
#include "egg/egg-dbus.h"
#include "library/gnome-keyring.h"
@@ -413,7 +412,7 @@ gkr_daemon_dbus_setup (void)
return;
}
- gkr_cleanup_register (daemon_dbus_cleanup, NULL);
+ egg_cleanup_register (daemon_dbus_cleanup, NULL);
egg_dbus_connect_with_mainloop (dbus_conn, NULL);
diff --git a/daemon/gkr-daemon-io.c b/daemon/gkr-daemon-io.c
index e342658..beef44a 100644
--- a/daemon/gkr-daemon-io.c
+++ b/daemon/gkr-daemon-io.c
@@ -36,8 +36,9 @@
#include "gkr-daemon-util.h"
#include "common/gkr-async.h"
+
#include "egg/egg-buffer.h"
-#include "common/gkr-cleanup.h"
+#include "egg/egg-cleanup.h"
#include "egg/egg-secure-memory.h"
#include "egg/egg-unix-credentials.h"
@@ -408,7 +409,7 @@ gkr_daemon_io_create_master_socket (void)
unlink (socket_path);
#endif
- gkr_cleanup_register (cleanup_socket_dir, NULL);
+ egg_cleanup_register (cleanup_socket_dir, NULL);
sock = socket(AF_UNIX, SOCK_STREAM, 0);
if (sock < 0) {
diff --git a/daemon/gkr-daemon-util.c b/daemon/gkr-daemon-util.c
index 043897e..4d2f0bf 100644
--- a/daemon/gkr-daemon-util.c
+++ b/daemon/gkr-daemon-util.c
@@ -26,7 +26,8 @@
#include "gkr-daemon-util.h"
#include "common/gkr-async.h"
-#include "common/gkr-cleanup.h"
+
+#include "egg/egg-cleanup.h"
#include <glib.h>
@@ -290,7 +291,7 @@ init_master_directory (void)
g_warning ("couldn't create socket directory: %s", g_strerror (errno));
}
- gkr_cleanup_register (uninit_master_directory, NULL);
+ egg_cleanup_register (uninit_master_directory, NULL);
}
const gchar*
@@ -322,7 +323,7 @@ init_environment ()
if (published_environ)
return;
published_environ = g_array_new (TRUE, TRUE, sizeof (gchar*));
- gkr_cleanup_register (uninit_environment, NULL);
+ egg_cleanup_register (uninit_environment, NULL);
}
void
diff --git a/daemon/gkr-daemon.c b/daemon/gkr-daemon.c
index e1ec935..b70a4fe 100644
--- a/daemon/gkr-daemon.c
+++ b/daemon/gkr-daemon.c
@@ -26,8 +26,8 @@
#include "gkr-daemon-util.h"
#include "common/gkr-async.h"
-#include "common/gkr-cleanup.h"
+#include "egg/egg-cleanup.h"
#include "egg/egg-libgcrypt.h"
#include "egg/egg-secure-memory.h"
#include "egg/egg-unix-credentials.h"
@@ -125,7 +125,7 @@ parse_arguments (int *argc, char** argv[])
/* Take ownership of the string */
if (run_components) {
run_components = g_strdup (run_components);
- gkr_cleanup_register (g_free, run_components);
+ egg_cleanup_register (g_free, run_components);
}
/* Check the arguments */
@@ -402,7 +402,7 @@ read_login_password (int fd)
static void
cleanup_and_exit (int code)
{
- gkr_cleanup_perform ();
+ egg_cleanup_perform ();
exit (code);
}
@@ -419,7 +419,7 @@ lifetime_slave_pipe_io (GIOChannel *channel,
GIOCondition cond,
gpointer callback_data)
{
- gkr_cleanup_perform ();
+ egg_cleanup_perform ();
_exit (2);
return FALSE;
}
@@ -768,7 +768,7 @@ main (int argc, char *argv[])
gkr_async_workers_stop_all ();
/* This wraps everything up in order */
- gkr_cleanup_perform ();
+ egg_cleanup_perform ();
/* Final shutdown of anything workers running about */
gkr_async_workers_uninit ();
diff --git a/daemon/keyrings/gkr-keyrings.c b/daemon/keyrings/gkr-keyrings.c
index d7615aa..495f643 100644
--- a/daemon/keyrings/gkr-keyrings.c
+++ b/daemon/keyrings/gkr-keyrings.c
@@ -26,10 +26,11 @@
#include "gkr-keyrings.h"
-#include "common/gkr-cleanup.h"
#include "common/gkr-location.h"
#include "common/gkr-location-watch.h"
+#include "egg/egg-cleanup.h"
+
#include "library/gnome-keyring-proto.h"
#include <unistd.h>
@@ -200,7 +201,7 @@ keyrings_init (void)
g_signal_connect (location_watch, "location-changed", G_CALLBACK (load_keyring), NULL);
g_signal_connect (location_watch, "location-removed", G_CALLBACK (remove_keyring), NULL);
- gkr_cleanup_register (keyrings_cleanup, NULL);
+ egg_cleanup_register (keyrings_cleanup, NULL);
}
/* -----------------------------------------------------------------------------
diff --git a/daemon/pkcs11/gkr-pkcs11-auth.c b/daemon/pkcs11/gkr-pkcs11-auth.c
index 336234e..3537d27 100644
--- a/daemon/pkcs11/gkr-pkcs11-auth.c
+++ b/daemon/pkcs11/gkr-pkcs11-auth.c
@@ -23,8 +23,8 @@
#include "gkr-pkcs11-auth.h"
+#include "egg/egg-cleanup.h"
#include "egg/egg-secure-memory.h"
-#include "common/gkr-cleanup.h"
#include "keyrings/gkr-keyring-login.h"
diff --git a/daemon/pkcs11/gkr-pkcs11-daemon.c b/daemon/pkcs11/gkr-pkcs11-daemon.c
index 38e7cd8..3b4f1a2 100644
--- a/daemon/pkcs11/gkr-pkcs11-daemon.c
+++ b/daemon/pkcs11/gkr-pkcs11-daemon.c
@@ -32,10 +32,11 @@
#include "pkcs11/user-store/gck-user-store.h"
#include "common/gkr-async.h"
-#include "common/gkr-cleanup.h"
#include "daemon/gkr-daemon-util.h"
+#include "egg/egg-cleanup.h"
+
/*
* ALL calls into PKCS#11 and anything starting with 'gck'
* must be concurrent. That is must UNLOCK the demon lock,
@@ -114,7 +115,7 @@ gkr_pkcs11_daemon_initialize (void)
return FALSE;
}
- gkr_cleanup_register (pkcs11_daemon_cleanup, NULL);
+ egg_cleanup_register (pkcs11_daemon_cleanup, NULL);
return TRUE;
}
@@ -166,7 +167,7 @@ gkr_pkcs11_daemon_setup_pkcs11 (void)
g_io_add_watch (channel, G_IO_IN | G_IO_HUP, accept_rpc_client, NULL);
g_io_channel_unref (channel);
- gkr_cleanup_register (pkcs11_rpc_cleanup, NULL);
+ egg_cleanup_register (pkcs11_rpc_cleanup, NULL);
return TRUE;
}
@@ -222,7 +223,7 @@ gkr_pkcs11_daemon_setup_ssh (void)
/* gck-ssh-agent sets the environment variable */
gkr_daemon_util_push_environment ("SSH_AUTH_SOCK", g_getenv ("SSH_AUTH_SOCK"));
- gkr_cleanup_register (pkcs11_ssh_cleanup, NULL);
+ egg_cleanup_register (pkcs11_ssh_cleanup, NULL);
return TRUE;
}
diff --git a/daemon/ui/gkr-ask-daemon.c b/daemon/ui/gkr-ask-daemon.c
index 12b1dec..94b09b4 100644
--- a/daemon/ui/gkr-ask-daemon.c
+++ b/daemon/ui/gkr-ask-daemon.c
@@ -27,10 +27,11 @@
#include "gkr-ask-request.h"
#include "common/gkr-async.h"
-#include "common/gkr-cleanup.h"
#include "daemon/gkr-daemon-util.h"
+#include "egg/egg-cleanup.h"
+
#include <glib.h>
static gboolean ask_daemon_inited = FALSE;
@@ -65,7 +66,7 @@ ask_daemon_init (void)
wait_condition = gkr_async_wait_new ();
- gkr_cleanup_register (ask_daemon_cleanup, NULL);
+ egg_cleanup_register (ask_daemon_cleanup, NULL);
}
static gboolean
diff --git a/egg/Makefile.am b/egg/Makefile.am
index 3c429a8..68770d9 100644
--- a/egg/Makefile.am
+++ b/egg/Makefile.am
@@ -21,6 +21,7 @@ libegg_la_CFLAGS = \
libegg_la_SOURCES = \
egg-asn1.c egg-asn1.h \
egg-buffer.c egg-buffer.h \
+ egg-cleanup.c egg-cleanup.h \
egg-hex.c egg-hex.h \
egg-libgcrypt.c egg-libgcrypt.h \
egg-oid.c egg-oid.h \
diff --git a/common/gkr-cleanup.c b/egg/egg-cleanup.c
similarity index 81%
rename from common/gkr-cleanup.c
rename to egg/egg-cleanup.c
index 41364d9..943c344 100644
--- a/common/gkr-cleanup.c
+++ b/egg/egg-cleanup.c
@@ -1,5 +1,5 @@
/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
-/* gkr-cleanup.c - for data cleanup at end of program
+/* egg-cleanup.c - for data cleanup at end of program
Copyright (C) 2007 Stefan Walter
@@ -21,19 +21,19 @@
Author: Stef Walter <stef memberwebs com>
*/
-#include "gkr-cleanup.h"
+#include "egg-cleanup.h"
-typedef struct _GkrCleanup {
+typedef struct _EggCleanup {
GDestroyNotify notify;
gpointer user_data;
-} GkrCleanup;
+} EggCleanup;
static GSList *registered_cleanups = NULL;
void
-gkr_cleanup_register (GDestroyNotify notify, gpointer user_data)
+egg_cleanup_register (GDestroyNotify notify, gpointer user_data)
{
- GkrCleanup *cleanup = g_new0 (GkrCleanup, 1);
+ EggCleanup *cleanup = g_new0 (EggCleanup, 1);
g_assert (notify);
cleanup->notify = notify;
@@ -44,13 +44,13 @@ gkr_cleanup_register (GDestroyNotify notify, gpointer user_data)
}
void
-gkr_cleanup_unregister (GDestroyNotify notify, gpointer user_data)
+egg_cleanup_unregister (GDestroyNotify notify, gpointer user_data)
{
- GkrCleanup *cleanup;
+ EggCleanup *cleanup;
GSList *l;
for (l = registered_cleanups; l; l = g_slist_next (l)) {
- cleanup = (GkrCleanup*)l->data;
+ cleanup = (EggCleanup*)l->data;
if (cleanup->notify == notify && cleanup->user_data == user_data) {
registered_cleanups = g_slist_remove (registered_cleanups, cleanup);
break;
@@ -60,10 +60,10 @@ gkr_cleanup_unregister (GDestroyNotify notify, gpointer user_data)
void
-gkr_cleanup_perform (void)
+egg_cleanup_perform (void)
{
GSList *cleanups, *l;
- GkrCleanup *cleanup;
+ EggCleanup *cleanup;
while (registered_cleanups) {
@@ -76,7 +76,7 @@ gkr_cleanup_perform (void)
registered_cleanups = NULL;
for (l = cleanups; l; l = g_slist_next (l)) {
- cleanup = (GkrCleanup*)l->data;
+ cleanup = (EggCleanup*)l->data;
g_assert (cleanup->notify);
(cleanup->notify) (cleanup->user_data);
diff --git a/common/gkr-cleanup.h b/egg/egg-cleanup.h
similarity index 77%
rename from common/gkr-cleanup.h
rename to egg/egg-cleanup.h
index ffa4a56..a347027 100644
--- a/common/gkr-cleanup.h
+++ b/egg/egg-cleanup.h
@@ -1,5 +1,5 @@
/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
-/* gkr-cleanup.h - for data cleanup at end of program
+/* egg-cleanup.h - for data cleanup at end of program
Copyright (C) 2007 Stefan Walter
@@ -21,15 +21,15 @@
Author: Stef Walter <stef memberwebs com>
*/
-#ifndef GKRCLEANUP_H_
-#define GKRCLEANUP_H_
+#ifndef EGGCLEANUP_H_
+#define EGGCLEANUP_H_
#include <glib.h>
-void gkr_cleanup_register (GDestroyNotify notify, gpointer user_data);
+void egg_cleanup_register (GDestroyNotify notify, gpointer user_data);
-void gkr_cleanup_unregister (GDestroyNotify notify, gpointer user_data);
+void egg_cleanup_unregister (GDestroyNotify notify, gpointer user_data);
-void gkr_cleanup_perform (void);
+void egg_cleanup_perform (void);
-#endif /* GKRCLEANUP_H_ */
+#endif /* EGGCLEANUP_H_ */
diff --git a/egg/tests/Makefile.am b/egg/tests/Makefile.am
index dec508c..f254a25 100644
--- a/egg/tests/Makefile.am
+++ b/egg/tests/Makefile.am
@@ -8,6 +8,7 @@ asn1-def-test.h: test.asn
# Test files should be listed in order they need to run
UNIT_AUTO = \
unit-test-asn1.c \
+ unit-test-cleanup.c \
unit-test-hex.c \
unit-test-oid.c \
unit-test-secmem.c \
diff --git a/common/tests/unit-test-cleanup.c b/egg/tests/unit-test-cleanup.c
similarity index 60%
rename from common/tests/unit-test-cleanup.c
rename to egg/tests/unit-test-cleanup.c
index e692a1c..43ce642 100644
--- a/common/tests/unit-test-cleanup.c
+++ b/egg/tests/unit-test-cleanup.c
@@ -27,25 +27,11 @@
#include "run-auto-test.h"
-#include "common/gkr-cleanup.h"
-
-/*
- * Each test looks like (on one line):
- * void unit_test_xxxxx (CuTest* cu)
- *
- * Each setup looks like (on one line):
- * void unit_setup_xxxxx (void);
- *
- * Each teardown looks like (on one line):
- * void unit_teardown_xxxxx (void);
- *
- * Tests be run in the order specified here.
- */
-
+#include "egg/egg-cleanup.h"
+
#define DATA "some string"
typedef struct _CleanupParam {
- CuTest *cu;
gpointer value;
} CleanupParam;
@@ -53,23 +39,21 @@ static void
cleanup_callback (gpointer user_data)
{
CleanupParam *param = (CleanupParam*)user_data;
- CuAssert (param->cu, "invalid user_data passed to callback",
- param->value && strcmp(param->value, DATA) == 0);
+ g_assert (param->value && strcmp(param->value, DATA) == 0);
param->value = NULL;
}
-void unit_test_cleanup (CuTest* cu)
+DEFINE_TEST(cleanup)
{
CleanupParam param;
- param.cu = cu;
param.value = DATA;
- gkr_cleanup_register (cleanup_callback, ¶m);
+ egg_cleanup_register (cleanup_callback, ¶m);
- gkr_cleanup_perform ();
+ egg_cleanup_perform ();
- CuAssert (cu, "cleanup handler not called", param.value == NULL);
+ g_assert (param.value == NULL);
}
/* -----------------------------------------------------------------------------
@@ -79,7 +63,6 @@ void unit_test_cleanup (CuTest* cu)
static gint order_value = 0;
typedef struct _OrderParam {
- CuTest *cu;
gint reference;
} OrderParam;
@@ -87,30 +70,32 @@ static void
order_callback (gpointer user_data)
{
OrderParam *param = (OrderParam*)user_data;
- CuAssert (param->cu, "cleanup handler called out of order", order_value == param->reference);
+ /* cleanup handler called out of order */
+ g_assert_cmpint (order_value, ==, param->reference);
param->reference = -1;
--order_value;
}
-
-void unit_test_order (CuTest* cu)
+
+DEFINE_TEST(order)
{
OrderParam param[8];
int i;
for (i = 0; i < 8; ++i) {
- param[i].cu = cu;
param[i].reference = i;
- gkr_cleanup_register (order_callback, ¶m[i]);
+ egg_cleanup_register (order_callback, ¶m[i]);
}
order_value = i - 1;
- gkr_cleanup_perform ();
+ egg_cleanup_perform ();
for (i = 0; i < 8; ++i)
- CuAssert (cu, "cleanup handler not called", param[i].reference == -1);
+ /* "cleanup handler not called" */
+ g_assert (param[i].reference == -1);
- CuAssert (cu, "not all cleanup handlers called", order_value == -1);
+ /* "not all cleanup handlers called" */
+ g_assert_cmpint (order_value, ==, -1);
}
/* -----------------------------------------------------------------------------
@@ -128,18 +113,19 @@ second_callback (gpointer user_data)
static void
reregister_callback (gpointer user_data)
{
- gkr_cleanup_register (second_callback, NULL);
+ egg_cleanup_register (second_callback, NULL);
}
-void unit_test_reregister (CuTest* cu)
+DEFINE_TEST(reregister)
{
cleaned_up = FALSE;
- gkr_cleanup_register (reregister_callback, NULL);
+ egg_cleanup_register (reregister_callback, NULL);
- gkr_cleanup_perform ();
+ egg_cleanup_perform ();
- CuAssert (cu, "second cleanup handler not called", cleaned_up == TRUE);
+ /* "second cleanup handler not called" */
+ g_assert (cleaned_up == TRUE);
}
/* -----------------------------------------------------------------------------
@@ -154,13 +140,14 @@ remove_callback (gpointer user_data)
test_cleaned_up = TRUE;
}
-void unit_test_remove (CuTest* cu)
+DEFINE_TEST(remove)
{
- gkr_cleanup_register (remove_callback, NULL);
- gkr_cleanup_register (remove_callback, DATA);
- gkr_cleanup_unregister (remove_callback, DATA);
- gkr_cleanup_unregister (remove_callback, NULL);
- gkr_cleanup_perform ();
+ egg_cleanup_register (remove_callback, NULL);
+ egg_cleanup_register (remove_callback, DATA);
+ egg_cleanup_unregister (remove_callback, DATA);
+ egg_cleanup_unregister (remove_callback, NULL);
+ egg_cleanup_perform ();
- CuAssert (cu, "removed callback was called", test_cleaned_up == FALSE);
+ /* "removed callback was called" */
+ g_assert (test_cleaned_up == FALSE);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]