summaryrefslogtreecommitdiffstats
path: root/lasso
diff options
context:
space:
mode:
authorBenjamin Dauvergne <bdauvergne@entrouvert.com>2008-11-05 11:23:29 +0000
committerBenjamin Dauvergne <bdauvergne@entrouvert.com>2008-11-05 11:23:29 +0000
commitaff32ad997c347ecb01199b98040ec81957b4b9c (patch)
tree67b696e5e44bfaf0165910e3cee428e32fd416c7 /lasso
parentf60b39eb9a4466a48e873660dd818e51831147cf (diff)
downloadlasso-aff32ad997c347ecb01199b98040ec81957b4b9c.tar.gz
lasso-aff32ad997c347ecb01199b98040ec81957b4b9c.tar.xz
lasso-aff32ad997c347ecb01199b98040ec81957b4b9c.zip
Add log message in the metadata loading process
- lasso/id-ff/provider.c, lasso/saml-2.0/provider.c: add critical log message in each failed loading of metadatas branch cases.
Diffstat (limited to 'lasso')
-rw-r--r--lasso/id-ff/provider.c10
-rw-r--r--lasso/saml-2.0/provider.c9
2 files changed, 16 insertions, 3 deletions
diff --git a/lasso/id-ff/provider.c b/lasso/id-ff/provider.c
index f11e62fe..a1a8d65e 100644
--- a/lasso/id-ff/provider.c
+++ b/lasso/id-ff/provider.c
@@ -700,7 +700,13 @@ lasso_provider_load_metadata_from_buffer(LassoProvider *provider, const gchar *m
g_return_val_if_fail(LASSO_IS_PROVIDER(provider), FALSE);
doc = xmlParseDoc((xmlChar*)metadata);
- goto_exit_if_fail (doc != NULL, FALSE);
+ if (doc == NULL) {
+ char *extract;
+ extract = lasso_safe_prefix_string(metadata, 80);
+ message(G_LOG_LEVEL_CRITICAL, "Cannot parse metadatas: '%s'", extract);
+ lasso_release(extract);
+ return FALSE;
+ }
goto_exit_if_fail (lasso_provider_load_metadata_from_doc(provider, doc), FALSE);
lasso_assign_string(provider->metadata_filename, metadata);
exit:
@@ -755,6 +761,7 @@ lasso_provider_load_metadata_from_doc(LassoProvider *provider, xmlDoc *doc)
node = xmlDocGetRootElement(doc);
if (node == NULL || node->ns == NULL) {
+ message (G_LOG_LEVEL_CRITICAL, "lasso_provider_load_metadata_from_doc: no root element");
return FALSE;
}
@@ -779,6 +786,7 @@ lasso_provider_load_metadata_from_doc(LassoProvider *provider, xmlDoc *doc)
xpathObj = xmlXPathEvalExpression(
(xmlChar*)"/md11:SPDescriptor|/md11:IDPDescriptor", xpathCtx);
if (xpathObj->nodesetval == NULL || xpathObj->nodesetval->nodeNr == 0) {
+ message (G_LOG_LEVEL_CRITICAL, "lasso_saml20_provider_load_metadata_from_doc: no md12:EntityDescriptor or md11:SPDesriptor or md11:IDPDescriptor");
xmlXPathFreeObject(xpathObj);
xmlXPathFreeContext(xpathCtx);
return FALSE;
diff --git a/lasso/saml-2.0/provider.c b/lasso/saml-2.0/provider.c
index f3b4c159..1bc06271 100644
--- a/lasso/saml-2.0/provider.c
+++ b/lasso/saml-2.0/provider.c
@@ -161,16 +161,21 @@ lasso_saml20_provider_load_metadata(LassoProvider *provider, xmlNode *root_node)
while (node && strcmp((char*)node->name, "EntityDescriptor") != 0) {
node = node->next;
}
- if (node == NULL)
+ if (node == NULL) {
+ message (G_LOG_LEVEL_CRITICAL, "lasso_saml20_provider_load_metadata_from_doc: no EntityDescriptor");
return FALSE;
+ }
} else {
+ message (G_LOG_LEVEL_CRITICAL, "lasso_saml20_provider_load_metadata_from_doc: no EntityDescriptor");
/* what? */
return FALSE;
}
provider->ProviderID = (char*)xmlGetProp(node, (xmlChar*)"entityID");
- if (provider->ProviderID == NULL)
+ if (provider->ProviderID == NULL) {
+ message (G_LOG_LEVEL_CRITICAL, "lasso_saml20_provider_load_metadata_from_doc: no entityID attribute");
return FALSE;
+ }
for (descriptor_node = node->children; descriptor_node != NULL;
descriptor_node = descriptor_node->next) {