diff options
Diffstat (limited to 'lasso/xml/samlp_request.c')
-rw-r--r-- | lasso/xml/samlp_request.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/lasso/xml/samlp_request.c b/lasso/xml/samlp_request.c index 079fe154..e6a17bb2 100644 --- a/lasso/xml/samlp_request.c +++ b/lasso/xml/samlp_request.c @@ -51,28 +51,32 @@ /* private methods */ /*****************************************************************************/ +#define snippets() \ + LassoSamlpRequest *request = LASSO_SAMLP_REQUEST(node); \ + struct XmlSnippet snippets[] = { \ + { "AssertionArtifact", 'c', (void**)&(request->AssertionArtifact) }, \ + { NULL, 0, NULL} \ + }; + static LassoNodeClass *parent_class = NULL; static xmlNode* get_xmlNode(LassoNode *node) { xmlNode *xmlnode; + snippets(); xmlnode = parent_class->get_xmlNode(node); - xmlNewTextChild(xmlnode, NULL, "AssertionArtifact", - LASSO_SAMLP_REQUEST(node)->AssertionArtifact); xmlNodeSetName(xmlnode, "Request"); + lasso_node_build_xml_with_snippets(xmlnode, snippets); + return xmlnode; } static int init_from_xml(LassoNode *node, xmlNode *xmlnode) { - LassoSamlpRequest *request = LASSO_SAMLP_REQUEST(node); - struct XmlSnippet snippets[] = { - { "AssertionArtifact", 'c', (void**)&(request->AssertionArtifact) }, - { NULL, 0, NULL} - }; + snippets(); if (parent_class->init_from_xml(node, xmlnode)) return -1; |