diff options
| author | Benjamin Dauvergne <bdauvergne@entrouvert.com> | 2009-03-27 15:05:45 +0000 |
|---|---|---|
| committer | Benjamin Dauvergne <bdauvergne@entrouvert.com> | 2009-03-27 15:05:45 +0000 |
| commit | c3b0ca25b8cd2bc7009d47fb7e9c949701808391 (patch) | |
| tree | dfeead245359bf6900dd3eab6551c94848e9c7b1 | |
| parent | f55ff8ea5e3f1387e101c1792200cc391f33bcae (diff) | |
XML SAML 2.0: add a build query to request base class
* lasso/xml/saml-2.0/samlp2_request_abstract.c: add a build query
overloaded function to LassoSamlp2RequestAbstract class, the base
class of all saml 2.0 request nodes.
| -rw-r--r-- | lasso/xml/saml-2.0/samlp2_request_abstract.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/lasso/xml/saml-2.0/samlp2_request_abstract.c b/lasso/xml/saml-2.0/samlp2_request_abstract.c index 5672d0a3..e500bbd6 100644 --- a/lasso/xml/saml-2.0/samlp2_request_abstract.c +++ b/lasso/xml/saml-2.0/samlp2_request_abstract.c @@ -91,7 +91,19 @@ static struct XmlSnippet schema_snippets[] = { static LassoNodeClass *parent_class = NULL; +static gchar* +build_query(LassoNode *node) +{ + char *ret, *deflated_message; + deflated_message = lasso_node_build_deflated_query(node); + if (deflated_message == NULL) { + return NULL; + } + ret = g_strdup_printf("SAMLRequest=%s", deflated_message); + g_free(deflated_message); + return ret; +} static xmlNode* get_xmlNode(LassoNode *node, gboolean lasso_dump) @@ -142,6 +154,7 @@ class_init(LassoSamlp2RequestAbstractClass *klass) LassoNodeClass *nclass = LASSO_NODE_CLASS(klass); parent_class = g_type_class_peek_parent(klass); + nclass->build_query = build_query; nclass->get_xmlNode = get_xmlNode; nclass->node_data = g_new0(LassoNodeClassData, 1); lasso_node_class_set_nodename(nclass, "RequestAbstract"); |
