summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorValery Febvre <vfebvre at easter-eggs.com>2004-07-13 10:36:32 +0000
committerValery Febvre <vfebvre at easter-eggs.com>2004-07-13 10:36:32 +0000
commiteb4def6b08edcfe68b338cdec823c131fea171d4 (patch)
tree96f7e624362f86efb2f18bf3ec8ca8a04d3819bf
parenta959a65fd5467fbdb9123d52943f94c264237fdc (diff)
downloadlasso-eb4def6b08edcfe68b338cdec823c131fea171d4.tar.gz
lasso-eb4def6b08edcfe68b338cdec823c131fea171d4.tar.xz
lasso-eb4def6b08edcfe68b338cdec823c131fea171d4.zip
*** empty log message ***
-rw-r--r--lasso/Attic/protocols/authn_response.c1
-rw-r--r--lasso/Attic/protocols/provider.c12
-rw-r--r--lasso/id-ff/profile_context.c4
-rw-r--r--lasso/id-ff/server.c19
-rw-r--r--python/environs/py_server.c6
-rw-r--r--python/examples/login.py2
6 files changed, 32 insertions, 12 deletions
diff --git a/lasso/Attic/protocols/authn_response.c b/lasso/Attic/protocols/authn_response.c
index 30b1ae92..2e2cf7e8 100644
--- a/lasso/Attic/protocols/authn_response.c
+++ b/lasso/Attic/protocols/authn_response.c
@@ -24,7 +24,6 @@
*/
#include <lasso/protocols/authn_response.h>
-#include <lasso/protocols/authn_request.h>
static void
lasso_authn_response_set_status(LassoAuthnResponse *response,
diff --git a/lasso/Attic/protocols/provider.c b/lasso/Attic/protocols/provider.c
index 81443e81..7471d429 100644
--- a/lasso/Attic/protocols/provider.c
+++ b/lasso/Attic/protocols/provider.c
@@ -29,6 +29,8 @@ struct _LassoProviderPrivate
gboolean dispose_has_run;
};
+static GObjectClass *parent_class = NULL;
+
/*****************************************************************************/
/* public methods */
/*****************************************************************************/
@@ -161,9 +163,13 @@ lasso_provider_dispose(LassoProvider *provider)
}
provider->private->dispose_has_run = TRUE;
+ debug(INFO, "Provider object 0x%x disposed ...\n", provider);
+
/* unref reference counted objects */
/* we don't have any here */
- debug(INFO, "Provider object 0x%x disposed ...\n", provider);
+ lasso_node_destroy(provider->metadata);
+
+ parent_class->dispose(G_OBJECT(provider));
}
static void
@@ -171,10 +177,11 @@ lasso_provider_finalize(LassoProvider *provider)
{
debug(INFO, "Provider object 0x%x finalized ...\n", provider);
- lasso_node_destroy(provider->metadata);
g_free(provider->public_key);
g_free(provider->ca_certificate);
g_free(provider->private);
+
+ parent_class->finalize(G_OBJECT(provider));
}
/*****************************************************************************/
@@ -195,6 +202,7 @@ static void
lasso_provider_class_init(LassoProviderClass *class) {
GObjectClass *gobject_class = G_OBJECT_CLASS(class);
+ parent_class = g_type_class_peek_parent(class);
/* override parent class methods */
gobject_class->dispose = (void *)lasso_provider_dispose;
gobject_class->finalize = (void *)lasso_provider_finalize;
diff --git a/lasso/id-ff/profile_context.c b/lasso/id-ff/profile_context.c
index df14d58f..43ae9dac 100644
--- a/lasso/id-ff/profile_context.c
+++ b/lasso/id-ff/profile_context.c
@@ -130,11 +130,13 @@ lasso_profile_context_dispose(LassoProfileContext *ctx)
ctx->private->dispose_has_run = TRUE;
debug(INFO, "ProfileContext object 0x%x disposed ...\n", ctx);
+
/* unref reference counted objects */
/* we don't have any here */
lasso_node_destroy(ctx->request);
lasso_node_destroy(ctx->response);
/* BEWARE: server and user shouldn't be destroyed */
+
parent_class->dispose(G_OBJECT(ctx));
}
@@ -144,11 +146,11 @@ lasso_profile_context_finalize(LassoProfileContext *ctx)
debug(INFO, "ProfileContext object 0x%x finalized ...\n", ctx);
g_free(ctx->remote_providerID);
-
g_free(ctx->msg_url);
g_free(ctx->msg_body);
g_free (ctx->private);
+
parent_class->finalize(G_OBJECT(ctx));
}
diff --git a/lasso/id-ff/server.c b/lasso/id-ff/server.c
index b1cf9d68..2091e706 100644
--- a/lasso/id-ff/server.c
+++ b/lasso/id-ff/server.c
@@ -147,14 +147,24 @@ lasso_server_get_provider(LassoServer *server,
/*****************************************************************************/
static void
-lasso_server_finalize(LassoServer *server)
+lasso_server_dispose(LassoServer *server)
{
- parent_class->finalize(LASSO_PROVIDER(server));
+ debug(INFO, "Server object 0x%x finalized ...\n", server);
+
/* TODO destroy the providers */
+
+ parent_class->dispose(LASSO_PROVIDER(server));
+}
+
+static void
+lasso_server_finalize(LassoServer *server)
+{
+ debug(INFO, "Server object 0x%x finalized ...\n", server);
+
g_free(server->private_key);
g_free(server->certificate);
-
- debug(INFO, "Server object 0x%x finalized ...\n", server);
+
+ parent_class->finalize(LASSO_PROVIDER(server));
}
/*****************************************************************************/
@@ -176,6 +186,7 @@ lasso_server_class_init(LassoServerClass *class) {
parent_class = g_type_class_peek_parent(class);
/* override parent class methods */
+ gobject_class->dispose = (void *)lasso_server_dispose;
gobject_class->finalize = (void *)lasso_server_finalize;
}
diff --git a/python/environs/py_server.c b/python/environs/py_server.c
index 6f625829..f8e4d596 100644
--- a/python/environs/py_server.c
+++ b/python/environs/py_server.c
@@ -83,17 +83,17 @@ PyObject *server_add_provider(PyObject *self, PyObject *args) {
PyObject *server_obj;
gchar *metadata;
gchar *public_key = NULL;
- gchar *certificat = NULL;
+ gchar *ca_certificat = NULL;
if (CheckArgs(args, "OSss:server_add_provider")) {
if(!PyArg_ParseTuple(args, (char *) "Oszz:server_add_provider",
- &server_obj, &metadata, &public_key, &certificat))
+ &server_obj, &metadata, &public_key, &ca_certificat))
return NULL;
}
else return NULL;
lasso_server_add_provider(LassoServer_get(server_obj),
- metadata, public_key, certificat);
+ metadata, public_key, ca_certificat);
Py_INCREF(Py_None);
return (Py_None);
diff --git a/python/examples/login.py b/python/examples/login.py
index c167b92c..7aa30453 100644
--- a/python/examples/login.py
+++ b/python/examples/login.py
@@ -26,7 +26,7 @@ splogin = lasso.Login.new(server, None)
ret = splogin.init_authn_request("https://identity-provider:2003/liberty-alliance/metadata")
splogin.request.set_isPassive(0)
splogin.request.set_forceAuthn(1)
-#splogin.request.set_nameIDPolicy(lasso.LibNameIDPolicyTypeFederated)
+splogin.request.set_nameIDPolicy(lasso.libNameIDPolicyTypeFederated)
splogin.request.set_relayState("fake")
splogin.request.set_protocolProfile(lasso.libProtocolProfileBrwsArt)