summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorValery Febvre <vfebvre at easter-eggs.com>2004-06-30 23:29:13 +0000
committerValery Febvre <vfebvre at easter-eggs.com>2004-06-30 23:29:13 +0000
commitddc3dafdabb81f1a4e7b40f17b6d47f9cf236cbf (patch)
tree2e60aec76f63419103d64d52bde7870db4adf00f
parentce45b1e30d6c4153ad710197575268347e14bdb3 (diff)
downloadlasso-ddc3dafdabb81f1a4e7b40f17b6d47f9cf236cbf.tar.gz
lasso-ddc3dafdabb81f1a4e7b40f17b6d47f9cf236cbf.tar.xz
lasso-ddc3dafdabb81f1a4e7b40f17b6d47f9cf236cbf.zip
*** empty log message ***
-rw-r--r--lasso/Attic/protocols/authn_request.c1
-rw-r--r--lasso/Attic/protocols/provider.c46
-rw-r--r--lasso/Attic/protocols/provider.h4
-rw-r--r--lasso/id-ff/authentication.c6
-rw-r--r--lasso/id-ff/server.c8
-rw-r--r--lasso/id-ff/server.h6
6 files changed, 36 insertions, 35 deletions
diff --git a/lasso/Attic/protocols/authn_request.c b/lasso/Attic/protocols/authn_request.c
index c72e52c8..cf343487 100644
--- a/lasso/Attic/protocols/authn_request.c
+++ b/lasso/Attic/protocols/authn_request.c
@@ -251,7 +251,6 @@ lasso_authn_request_new_from_query(gchar *query)
/* ForceAuthn */
str = lasso_g_ptr_array_index((GPtrArray *)g_datalist_get_data(&gd, "ForceAuthn"), 0);
- printf("%s\n", str);
if (str != NULL){
if(!strcmp(str, "true"))
lasso_lib_authn_request_set_forceAuthn(LASSO_LIB_AUTHN_REQUEST(request), TRUE);
diff --git a/lasso/Attic/protocols/provider.c b/lasso/Attic/protocols/provider.c
index 3ef19f27..c9633024 100644
--- a/lasso/Attic/protocols/provider.c
+++ b/lasso/Attic/protocols/provider.c
@@ -115,29 +115,25 @@ GType lasso_provider_get_type() {
return this_type;
}
-LassoNode* lasso_provider_new(){
- LassoNode *provider;
-
- provider = LASSO_NODE(g_object_new(LASSO_TYPE_PROVIDER, NULL));
-
- return (provider);
-}
-
-LassoProvider *lasso_provider_new_from_filename(char *filename){
- LassoProvider *provider;
- xmlDocPtr doc;
- xmlNodePtr root;
-
- provider = g_object_new(LASSO_TYPE_PROVIDER, NULL);
-
- /* get root element of doc and duplicate it */
- doc = xmlParseFile(filename);
- root = xmlCopyNode(xmlDocGetRootElement(doc), 1);
- xmlFreeDoc(doc);
- provider->metadata = lasso_node_new_from_xmlNode(root);
-
- provider->public_key = NULL;
- provider->certificate = NULL;
-
- return(provider);
+LassoProvider*
+lasso_provider_new(gchar *metadata,
+ const gchar *public_key,
+ const gchar *certificate)
+{
+ LassoProvider *provider;
+ xmlDocPtr doc;
+ xmlNodePtr root;
+
+ provider = LASSO_PROVIDER(g_object_new(LASSO_TYPE_PROVIDER, NULL));
+
+ /* get root element of doc and duplicate it */
+ doc = xmlParseFile(metadata);
+ root = xmlCopyNode(xmlDocGetRootElement(doc), 1);
+ xmlFreeDoc(doc);
+ provider->metadata = lasso_node_new_from_xmlNode(root);
+
+ provider->public_key = public_key;
+ provider->certificate = certificate;
+
+ return(provider);
}
diff --git a/lasso/Attic/protocols/provider.h b/lasso/Attic/protocols/provider.h
index 6a5bbd1d..3d15c407 100644
--- a/lasso/Attic/protocols/provider.h
+++ b/lasso/Attic/protocols/provider.h
@@ -57,7 +57,9 @@ struct _LassoProviderClass {
};
LASSO_EXPORT GType lasso_provider_get_type (void);
-LASSO_EXPORT LassoNode* lasso_provider_new (void);
+LASSO_EXPORT LassoProvider* lasso_provider_new (gchar *metadata,
+ const gchar *public_key,
+ const gchar *certificate);
LASSO_EXPORT LassoProvider *lasso_provider_new_from_filename (char *filename);
diff --git a/lasso/id-ff/authentication.c b/lasso/id-ff/authentication.c
index 3a5ee8a2..1c5d0132 100644
--- a/lasso/id-ff/authentication.c
+++ b/lasso/id-ff/authentication.c
@@ -99,7 +99,6 @@ lasso_authentication_process_request(LassoAuthentication *authn,
return;
break;
}
- printf("%s\n", lasso_node_export(LASSO_PROFILE_CONTEXT(authn)->request));
authn->protocolProfile = lasso_node_get_child_content(LASSO_PROFILE_CONTEXT(authn)->request,
"ProtocolProfile", NULL);
@@ -208,7 +207,7 @@ lasso_authentication_build_response_msg(LassoAuthentication *authn,
nameIDPolicy = lasso_node_get_child_content(LASSO_PROFILE_CONTEXT(authn)->request,
"NameIDPolicy", NULL);
printf("NameIDPolicy %s\n", nameIDPolicy);
- if (xmlStrEqual(nameIDPolicy, lassoLibNameIDPolicyTypeNone)) {
+ if (nameIDPolicy == NULL || xmlStrEqual(nameIDPolicy, lassoLibNameIDPolicyTypeNone)) {
if (identity == NULL) {
lasso_profile_context_set_response_status(LASSO_PROFILE_CONTEXT(authn),
lassoLibStatusCodeFederationDoesNotExist);
@@ -240,10 +239,11 @@ lasso_authentication_build_response_msg(LassoAuthentication *authn,
lasso_samlp_response_add_assertion(LASSO_SAMLP_RESPONSE(LASSO_PROFILE_CONTEXT(authn)->response),
assertion);
}
+ else printf("No identity !!!\n");
if (xmlStrEqual(authn->protocolProfile, lassoLibProtocolProfilePost)) {
/* return an authnResponse (base64 encoded) */
- //str = lasso_node_export_to_base64(LASSO_PROFILE_CONTEXT(authn)->response);
+ str = lasso_node_export_to_base64(LASSO_PROFILE_CONTEXT(authn)->response);
}
else if (xmlStrEqual(protocolProfile, lassoLibProtocolProfileArtifact)) {
/* return an artifact */
diff --git a/lasso/id-ff/server.c b/lasso/id-ff/server.c
index 131c6745..e47d05ad 100644
--- a/lasso/id-ff/server.c
+++ b/lasso/id-ff/server.c
@@ -29,12 +29,14 @@
/*****************************************************************************/
gint
-lasso_server_add_provider_from_file(LassoServer *server,
- gchar *filename)
+lasso_server_add_provider(LassoServer *server,
+ gchar *metadata,
+ const gchar *public_key,
+ const gchar *certificate)
{
LassoProvider *provider;
- provider = lasso_provider_new_from_filename(filename);
+ provider = lasso_provider_new(metadata, public_key, certificate);
g_ptr_array_add(server->providers, provider);
return (1);
diff --git a/lasso/id-ff/server.h b/lasso/id-ff/server.h
index 50d1df35..8bfd17d1 100644
--- a/lasso/id-ff/server.h
+++ b/lasso/id-ff/server.h
@@ -64,8 +64,10 @@ LASSO_EXPORT LassoServer* lasso_server_new (const gchar *pu
const gchar *private_key,
const gchar *certificate);
-LASSO_EXPORT gint lasso_server_add_provider_from_file (LassoServer *server,
- gchar *filename);
+LASSO_EXPORT gint lasso_server_add_provider (LassoServer *server,
+ gchar *metadata,
+ const gchar *public_key,
+ const gchar *certificate);
LASSO_EXPORT LassoProvider* lasso_server_get_provider (LassoServer *server,
gchar *providerID);