/*
- * Copyright (c) 2010, JANET(UK)
+ * Copyright (c) 2011, JANET(UK)
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
DOMDocument *doc;
const XMLObjectBuilder *b;
- doc = XMLToolingConfig::getConfig().getParser().parse(istream);
- if (doc == NULL)
- return NULL;
+ try {
+ doc = XMLToolingConfig::getConfig().getParser().parse(istream);
+ if (doc == NULL)
+ return NULL;
- b = XMLObjectBuilder::getBuilder(doc->getDocumentElement());
+ b = XMLObjectBuilder::getBuilder(doc->getDocumentElement());
#ifdef __APPLE__
- return (saml2::Assertion *)((void *)b->buildFromDocument(doc));
+ return (saml2::Assertion *)((void *)b->buildFromDocument(doc));
#else
- return dynamic_cast<saml2::Assertion *>(b->buildFromDocument(doc));
+ return dynamic_cast<saml2::Assertion *>(b->buildFromDocument(doc));
#endif
+ } catch (exception &e) {
+ return NULL;
+ }
}
bool
}
bool
-gss_eap_saml_assertion_provider::setAttribute(int complete,
+gss_eap_saml_assertion_provider::setAttribute(int complete GSSEAP_UNUSED,
const gss_buffer_t attr,
const gss_buffer_t value)
{
}
bool
-gss_eap_saml_assertion_provider::deleteAttribute(const gss_buffer_t value)
+gss_eap_saml_assertion_provider::deleteAttribute(const gss_buffer_t value GSSEAP_UNUSED)
{
delete m_assertion;
m_assertion = NULL;
int *authenticated,
int *complete,
gss_buffer_t value,
- gss_buffer_t display_value,
+ gss_buffer_t display_value GSSEAP_UNUSED,
int *more) const
{
string str;
gss_any_t
gss_eap_saml_assertion_provider::mapToAny(int authenticated,
- gss_buffer_t type_id) const
+ gss_buffer_t type_id GSSEAP_UNUSED) const
{
if (authenticated && !m_authenticated)
return (gss_any_t)NULL;
}
void
-gss_eap_saml_assertion_provider::releaseAnyNameMapping(gss_buffer_t type_id,
+gss_eap_saml_assertion_provider::releaseAnyNameMapping(gss_buffer_t type_id GSSEAP_UNUSED,
gss_any_t input) const
{
delete ((saml2::Assertion *)input);
{
gss_eap_attr_ctx::registerProvider(ATTR_TYPE_SAML_ASSERTION,
"urn:ietf:params:gss-eap:saml-aaa-assertion",
- gss_eap_saml_assertion_provider::createAttrContext);
+ createAttrContext);
return true;
}
}
bool
-gss_eap_saml_attr_provider::setAttribute(int complete,
+gss_eap_saml_attr_provider::setAttribute(int complete GSSEAP_UNUSED,
const gss_buffer_t attr,
const gss_buffer_t value)
{
}
gss_any_t
-gss_eap_saml_attr_provider::mapToAny(int authenticated,
- gss_buffer_t type_id) const
+gss_eap_saml_attr_provider::mapToAny(int authenticated GSSEAP_UNUSED,
+ gss_buffer_t type_id GSSEAP_UNUSED) const
{
return (gss_any_t)NULL;
}
void
-gss_eap_saml_attr_provider::releaseAnyNameMapping(gss_buffer_t type_id,
- gss_any_t input) const
+gss_eap_saml_attr_provider::releaseAnyNameMapping(gss_buffer_t type_id GSSEAP_UNUSED,
+ gss_any_t input GSSEAP_UNUSED) const
{
}
{
gss_eap_attr_ctx::registerProvider(ATTR_TYPE_SAML,
"urn:ietf:params:gss-eap:saml-attr",
- gss_eap_saml_attr_provider::createAttrContext);
+ createAttrContext);
return true;
}
{
gss_eap_saml_attr_provider::finalize();
gss_eap_saml_assertion_provider::finalize();
+
+ *minor = 0;
return GSS_S_COMPLETE;
}