summaryrefslogtreecommitdiffstats
path: root/swig
diff options
context:
space:
mode:
authorFrederic Peters <fpeters@entrouvert.com>2005-11-20 15:38:19 +0000
committerFrederic Peters <fpeters@entrouvert.com>2005-11-20 15:38:19 +0000
commitebb9f7dffc22196e6c1cb18b218fc411b4d190c2 (patch)
treefce2aedd2eebee66103da6dc0f811063b8934f12 /swig
parent56c88d1921c3b05c0213d2a1321502b2290b0b6f (diff)
downloadlasso-ebb9f7dffc22196e6c1cb18b218fc411b4d190c2.tar.gz
lasso-ebb9f7dffc22196e6c1cb18b218fc411b4d190c2.tar.xz
lasso-ebb9f7dffc22196e6c1cb18b218fc411b4d190c2.zip
SAML 2.0 support (only web-sso for the moment)
Diffstat (limited to 'swig')
-rw-r--r--swig/Lasso.i168
-rw-r--r--swig/Makefile.am1
-rw-r--r--swig/saml-2.0/Makefile.am54
-rw-r--r--swig/saml-2.0/saml2_action.i34
-rw-r--r--swig/saml-2.0/saml2_advice.i32
-rw-r--r--swig/saml-2.0/saml2_assertion.i91
-rw-r--r--swig/saml-2.0/saml2_attribute.i35
-rw-r--r--swig/saml-2.0/saml2_attribute_statement.i33
-rw-r--r--swig/saml-2.0/saml2_audience_restriction.i34
-rw-r--r--swig/saml-2.0/saml2_authn_context.i35
-rw-r--r--swig/saml-2.0/saml2_authn_statement.i64
-rw-r--r--swig/saml-2.0/saml2_authz_decision_statement.i63
-rw-r--r--swig/saml-2.0/saml2_base_idabstract.i34
-rw-r--r--swig/saml-2.0/saml2_condition_abstract.i32
-rw-r--r--swig/saml-2.0/saml2_conditions.i34
-rw-r--r--swig/saml-2.0/saml2_encrypted_element.i32
-rw-r--r--swig/saml-2.0/saml2_evidence.i32
-rw-r--r--swig/saml-2.0/saml2_key_info_confirmation_data.i32
-rw-r--r--swig/saml-2.0/saml2_name_id.i37
-rw-r--r--swig/saml-2.0/saml2_one_time_use.i33
-rw-r--r--swig/saml-2.0/saml2_proxy_restriction.i35
-rw-r--r--swig/saml-2.0/saml2_statement_abstract.i32
-rw-r--r--swig/saml-2.0/saml2_subject.i88
-rw-r--r--swig/saml-2.0/saml2_subject_confirmation.i89
-rw-r--r--swig/saml-2.0/saml2_subject_confirmation_data.i37
-rw-r--r--swig/saml-2.0/saml2_subject_locality.i34
-rw-r--r--swig/saml-2.0/samlp2_artifact_resolve.i124
-rw-r--r--swig/saml-2.0/samlp2_artifact_response.i160
-rw-r--r--swig/saml-2.0/samlp2_assertion_idrequest.i124
-rw-r--r--swig/saml-2.0/samlp2_attribute_query.i154
-rw-r--r--swig/saml-2.0/samlp2_authn_query.i155
-rw-r--r--swig/saml-2.0/samlp2_authn_request.i212
-rw-r--r--swig/saml-2.0/samlp2_authz_decision_query.i169
-rw-r--r--swig/saml-2.0/samlp2_extensions.i32
-rw-r--r--swig/saml-2.0/samlp2_idp_entry.i35
-rw-r--r--swig/saml-2.0/samlp2_idp_list.i47
-rw-r--r--swig/saml-2.0/samlp2_logout_request.i168
-rw-r--r--swig/saml-2.0/samlp2_manage_name_id_request.i180
-rw-r--r--swig/saml-2.0/samlp2_name_id_mapping_request.i179
-rw-r--r--swig/saml-2.0/samlp2_name_id_mapping_response.i177
-rw-r--r--swig/saml-2.0/samlp2_name_id_policy.i38
-rw-r--r--swig/saml-2.0/samlp2_request_abstract.i65
-rw-r--r--swig/saml-2.0/samlp2_requested_authn_context.i35
-rw-r--r--swig/saml-2.0/samlp2_response.i149
-rw-r--r--swig/saml-2.0/samlp2_scoping.i48
-rw-r--r--swig/saml-2.0/samlp2_status.i61
-rw-r--r--swig/saml-2.0/samlp2_status_code.i47
-rw-r--r--swig/saml-2.0/samlp2_status_detail.i32
-rw-r--r--swig/saml-2.0/samlp2_status_response.i80
-rw-r--r--swig/saml-2.0/samlp2_subject_query_abstract.i137
-rw-r--r--swig/saml-2.0/samlp2_terminate.i32
51 files changed, 3841 insertions, 24 deletions
diff --git a/swig/Lasso.i b/swig/Lasso.i
index d0c2900c..ff88d3b2 100644
--- a/swig/Lasso.i
+++ b/swig/Lasso.i
@@ -40,6 +40,11 @@
#define LASSO_WSF_ENABLED
#endif
+#ifndef SWIGPHP4
+%rename(SAML2_SUPPORT) LASSO_SAML2_SUPPORT;
+#endif
+%include Lasso-saml2.i
+
%{
#if defined(SWIGRUBY) || defined (PHP_VERSION)
@@ -518,7 +523,7 @@ typedef struct node_info {
#endif
} node_info;
-static node_info node_infos[100]; /* FIXME: Size should be computed */
+static node_info node_infos[250]; /* FIXME: Size should be computed */
/* Cast a LassoNode into the appropriate derivated class. */
static swig_type_info *dynamic_cast_node(void **nodePointer) {
@@ -649,6 +654,7 @@ DYNAMIC_CAST(SWIGTYPE_p_LassoSamlpResponseAbstract, dynamic_cast_node);
SET_NODE_INFO(Node, DowncastableNode)
%include inheritance.h
+%include saml-2.0/inheritance.h
#else /* ifdef SWIGCSHARP */
@@ -663,6 +669,7 @@ SET_NODE_INFO(Node, DowncastableNode)
SET_NODE_INFO(Node, DowncastableNode)
%include inheritance.h
+%include saml-2.0/inheritance.h
#else /* ifdef SWIGJAVA */
@@ -684,6 +691,7 @@ SET_NODE_INFO(Node, DowncastableNode)
#endif
#include <swig/inheritance.h>
+#include <swig/saml-2.0/inheritance.h>
info->name = NULL;
info->swig = NULL;
@@ -716,6 +724,8 @@ SET_NODE_INFO(Node, DowncastableNode)
%rename(HTTP_METHOD_POST) LASSO_HTTP_METHOD_POST;
%rename(HTTP_METHOD_REDIRECT) LASSO_HTTP_METHOD_REDIRECT;
%rename(HTTP_METHOD_SOAP) LASSO_HTTP_METHOD_SOAP;
+%rename(HTTP_METHOD_ARTIFACT_GET) LASSO_HTTP_METHOD_ARTIFACT_GET;
+%rename(HTTP_METHOD_ARTIFACT_POST) LASSO_HTTP_METHOD_ARTIFACT_POST;
%rename(HttpMethod) LassoHttpMethod;
#endif
typedef enum {
@@ -725,7 +735,9 @@ typedef enum {
LASSO_HTTP_METHOD_GET,
LASSO_HTTP_METHOD_POST,
LASSO_HTTP_METHOD_REDIRECT,
- LASSO_HTTP_METHOD_SOAP
+ LASSO_HTTP_METHOD_SOAP,
+ LASSO_HTTP_METHOD_ARTIFACT_GET,
+ LASSO_HTTP_METHOD_ARTIFACT_POST
} LassoHttpMethod;
/* Consent */
@@ -816,6 +828,21 @@ typedef enum {
LASSO_PROVIDER_ROLE_IDP
} LassoProviderRole;
+/* ProtocolConformance */
+#ifndef SWIGPHP4
+%rename(PROTOCOL_LIBERTY_1_0) LASSO_PROTOCOL_LIBERTY_1_0;
+%rename(PROTOCOL_LIBERTY_1_1) LASSO_PROTOCOL_LIBERTY_1_1;
+%rename(PROTOCOL_LIBERTY_1_2) LASSO_PROTOCOL_LIBERTY_1_2;
+%rename(PROTOCOL_SAML_2_0) LASSO_PROTOCOL_SAML_2_0;
+%rename(ProtocolConformance) LassoProtocolConformance;
+#endif
+typedef enum {
+ LASSO_PROTOCOL_LIBERTY_1_0,
+ LASSO_PROTOCOL_LIBERTY_1_1,
+ LASSO_PROTOCOL_LIBERTY_1_2,
+ LASSO_PROTOCOL_SAML_2_0
+} LassoProtocolConformance;
+
/* RequestType */
#ifndef SWIGPHP4
%rename(REQUEST_TYPE_INVALID) LASSO_REQUEST_TYPE_INVALID;
@@ -4903,7 +4930,7 @@ typedef struct {
char* getOrganization();
LassoHttpMethod getFirstHttpMethod(
- LassoProvider *remote_provider, LassoMdProtocolType protocol_type);
+ LassoProvider *remote_provider, int protocol_type);
// FIXME: GList* lasso_provider_get_metadata_list(char *name);
@@ -4911,6 +4938,8 @@ typedef struct {
char* getMetadataOne(char *name);
gboolean hasProtocolProfile(LassoMdProtocolType protocol_type, char *protocol_profile);
+
+ LassoProtocolConformance getProtocolConformance();
}
%{
@@ -4936,9 +4965,11 @@ typedef struct {
#define LassoProvider_getBase64SuccinctId lasso_provider_get_base64_succinct_id
#define LassoProvider_getFirstHttpMethod lasso_provider_get_first_http_method
#define LassoProvider_getMetadataOne lasso_provider_get_metadata_one
+#define LassoProvider_getProtocolConformance lasso_provider_get_protocol_conformance
#define LassoProvider_hasProtocolProfile lasso_provider_has_protocol_profile
#define LassoProvider_getOrganization(self) get_xml_string(lasso_provider_get_organization(self))
+
%}
@@ -5027,7 +5058,7 @@ typedef struct {
char* getOrganization();
LassoHttpMethod getFirstHttpMethod(
- LassoProvider *remote_provider, LassoMdProtocolType protocol_type);
+ LassoProvider *remote_provider, int protocol_type);
// FIXME: GList* lasso_provider_get_metadata_list(char *name);
@@ -5036,6 +5067,8 @@ typedef struct {
gboolean hasProtocolProfile(LassoMdProtocolType protocol_type, char *protocol_profile);
+ LassoProtocolConformance getProtocolConformance();
+
/* Methods */
THROW_ERROR
@@ -5120,6 +5153,7 @@ LassoStringList *LassoServer_providerIds_get(LassoServer *self) {
#define LassoServer_getBase64SuccinctId(server) lasso_provider_get_base64_succinct_id(LASSO_PROVIDER(server))
#define LassoServer_getFirstHttpMethod(server, remote_provider, protocol_type) lasso_provider_get_first_http_method(LASSO_PROVIDER(server), remote_provider, protocol_type)
#define LassoServer_getMetadataOne(server, name) lasso_provider_get_metadata_one(LASSO_PROVIDER(server), name)
+#define LassoServer_getProtocolConformance(server) lasso_provider_get_protocol_conformance(LASSO_PROVIDER(server))
#define LassoServer_hasProtocolProfile(server, protocol_type, protocol_profile) lasso_provider_has_protocol_profile(LASSO_PROVIDER(server), protocol_type, protocol_profile)
#define LassoServer_getOrganization(server) get_xml_string(lasso_provider_get_organization(LASSO_PROVIDER(server)))
@@ -5157,13 +5191,13 @@ typedef struct {
%rename(localNameIdentifier) local_nameIdentifier;
#endif
%newobject local_nameIdentifier_get;
- LassoSamlNameIdentifier *local_nameIdentifier;
+ LassoNode *local_nameIdentifier;
#ifndef SWIGPHP4
%rename(remoteNameIdentifier) remote_nameIdentifier;
#endif
%newobject remote_nameIdentifier_get;
- LassoSamlNameIdentifier *remote_nameIdentifier;
+ LassoNode *remote_nameIdentifier;
/* Constructor, Destructor & Static Methods */
@@ -5435,6 +5469,10 @@ typedef struct {
} LassoDefederation;
%extend LassoDefederation {
/* Attributes inherited from Profile */
+ %immutable artifact;
+ char *artifact;
+
+ char *artifactMessage;
%newobject identity_get;
LassoIdentity *identity;
@@ -5455,15 +5493,15 @@ typedef struct {
char *msgUrl;
%newobject nameIdentifier_get;
- LassoSamlNameIdentifier *nameIdentifier;
+ LassoNode *nameIdentifier;
char *remoteProviderId;
%newobject request_get;
- LassoSamlpRequestAbstract *request;
+ LassoNode *request;
%newobject response_get;
- LassoSamlpResponseAbstract *response;
+ LassoNode *response;
%newobject server_get;
LassoServer *server;
@@ -5517,6 +5555,16 @@ typedef struct {
#define LassoDefederation_set_identity(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
#define LassoDefederation_identity_set(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
+/* artifact */
+#define LassoDefederation_get_artifact(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+#define LassoDefederation_artifact_get(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+
+/* artifactMessage */
+#define LassoDefederation_get_artifactMessage(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoDefederation_artifactMessage_get(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoDefederation_set_artifactMessage(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+#define LassoDefederation_artifactMessage_set(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+
/* isIdentityDirty */
#define LassoDefederation_get_isIdentityDirty(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
#define LassoDefederation_isIdentityDirty_get(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
@@ -5617,6 +5665,10 @@ typedef struct {
} LassoLogin;
%extend LassoLogin {
/* Attributes inherited from Profile */
+ %immutable artifact;
+ char *artifact;
+
+ char *artifactMessage;
%newobject identity_get;
LassoIdentity *identity;
@@ -5637,15 +5689,15 @@ typedef struct {
char *msgUrl;
%newobject nameIdentifier_get;
- LassoSamlNameIdentifier *nameIdentifier;
+ LassoNode *nameIdentifier;
char *remoteProviderId;
%newobject request_get;
- LassoSamlpRequestAbstract *request;
+ LassoNode *request;
%newobject response_get;
- LassoSamlpResponseAbstract *response;
+ LassoNode *response;
%newobject server_get;
LassoServer *server;
@@ -5766,6 +5818,16 @@ typedef struct {
#define LassoLogin_set_identity(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
#define LassoLogin_identity_set(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
+/* artifact */
+#define LassoLogin_get_artifact(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+#define LassoLogin_artifact_get(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+
+/* artifactMessage */
+#define LassoLogin_get_artifactMessage(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoLogin_artifactMessage_get(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoLogin_set_artifactMessage(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+#define LassoLogin_artifactMessage_set(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+
/* isIdentityDirty */
#define LassoLogin_get_isIdentityDirty(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
#define LassoLogin_isIdentityDirty_get(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
@@ -5880,6 +5942,10 @@ typedef struct {
} LassoLogout;
%extend LassoLogout {
/* Attributes inherited from Profile */
+ %immutable artifact;
+ char *artifact;
+
+ char *artifactMessage;
%newobject identity_get;
LassoIdentity *identity;
@@ -5900,15 +5966,15 @@ typedef struct {
char *msgUrl;
%newobject nameIdentifier_get;
- LassoSamlNameIdentifier *nameIdentifier;
+ LassoNode *nameIdentifier;
char *remoteProviderId;
%newobject request_get;
- LassoSamlpRequestAbstract *request;
+ LassoNode *request;
%newobject response_get;
- LassoSamlpResponseAbstract *response;
+ LassoNode *response;
%newobject server_get;
LassoServer *server;
@@ -5983,6 +6049,16 @@ typedef struct {
#define LassoLogout_set_identity(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
#define LassoLogout_identity_set(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
+/* artifact */
+#define LassoLogout_get_artifact(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+#define LassoLogout_artifact_get(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+
+/* artifactMessage */
+#define LassoLogout_get_artifactMessage(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoLogout_artifactMessage_get(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoLogout_set_artifactMessage(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+#define LassoLogout_artifactMessage_set(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+
/* isIdentityDirty */
#define LassoLogout_get_isIdentityDirty(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
#define LassoLogout_isIdentityDirty_get(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
@@ -6089,6 +6165,10 @@ typedef struct {
} LassoLecp;
%extend LassoLecp {
/* Attributes inherited from Profile */
+ %immutable artifact;
+ char *artifact;
+
+ char *artifactMessage;
%newobject identity_get;
LassoIdentity *identity;
@@ -6109,15 +6189,15 @@ typedef struct {
char *msgUrl;
%newobject nameIdentifier_get;
- LassoSamlNameIdentifier *nameIdentifier;
+ LassoNode *nameIdentifier;
char *remoteProviderId;
%newobject request_get;
- LassoSamlpRequestAbstract *request;
+ LassoNode *request;
%newobject response_get;
- LassoSamlpResponseAbstract *response;
+ LassoNode *response;
%newobject server_get;
LassoServer *server;
@@ -6208,6 +6288,16 @@ typedef struct {
#define LassoLecp_set_identity(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
#define LassoLecp_identity_set(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
+/* artifact */
+#define LassoLecp_get_artifact(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+#define LassoLecp_artifact_get(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+
+/* artifactMessage */
+#define LassoLecp_get_artifactMessage(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoLecp_artifactMessage_get(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoLecp_set_artifactMessage(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+#define LassoLecp_artifactMessage_set(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+
/* isIdentityDirty */
#define LassoLecp_get_isIdentityDirty(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
#define LassoLecp_isIdentityDirty_get(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
@@ -6333,6 +6423,10 @@ typedef struct {
} LassoNameIdentifierMapping;
%extend LassoNameIdentifierMapping {
/* Attributes inherited from Profile */
+ %immutable artifact;
+ char *artifact;
+
+ char *artifactMessage;
%newobject identity_get;
LassoIdentity *identity;
@@ -6350,15 +6444,15 @@ typedef struct {
char *msgUrl;
%newobject nameIdentifier_get;
- LassoSamlNameIdentifier *nameIdentifier;
+ LassoNode *nameIdentifier;
char *remoteProviderId;
%newobject request_get;
- LassoSamlpRequestAbstract *request;
+ LassoNode *request;
%newobject response_get;
- LassoSamlpResponseAbstract *response;
+ LassoNode *response;
%newobject server_get;
LassoServer *server;
@@ -6419,6 +6513,16 @@ typedef struct {
#define LassoNameIdentifierMapping_set_identity(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
#define LassoNameIdentifierMapping_identity_set(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
+/* artifact */
+#define LassoNameIdentifierMapping_get_artifact(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+#define LassoNameIdentifierMapping_artifact_get(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+
+/* artifactMessage */
+#define LassoNameIdentifierMapping_get_artifactMessage(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoNameIdentifierMapping_artifactMessage_get(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoNameIdentifierMapping_set_artifactMessage(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+#define LassoNameIdentifierMapping_artifactMessage_set(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+
/* isIdentityDirty */
#define LassoNameIdentifierMapping_get_isIdentityDirty(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
#define LassoNameIdentifierMapping_isIdentityDirty_get(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
@@ -6514,6 +6618,10 @@ typedef struct {
} LassoNameRegistration;
%extend LassoNameRegistration {
/* Attributes inherited from Profile */
+ %immutable artifact;
+ char *artifact;
+
+ char *artifactMessage;
%newobject identity_get;
LassoIdentity *identity;
@@ -6534,15 +6642,15 @@ typedef struct {
char *msgUrl;
%newobject nameIdentifier_get;
- LassoSamlNameIdentifier *nameIdentifier;
+ LassoNode *nameIdentifier;
char *remoteProviderId;
%newobject request_get;
- LassoSamlpRequestAbstract *request;
+ LassoNode *request;
%newobject response_get;
- LassoSamlpResponseAbstract *response;
+ LassoNode *response;
%newobject server_get;
LassoServer *server;
@@ -6615,6 +6723,16 @@ typedef struct {
#define LassoNameRegistration_set_identity(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
#define LassoNameRegistration_identity_set(self, value) set_node((gpointer *) &LASSO_PROFILE(self)->identity, (value))
+/* artifact */
+#define LassoNameRegistration_get_artifact(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+#define LassoNameRegistration_artifact_get(self) lasso_profile_get_artifact(LASSO_PROFILE(self))
+
+/* artifactMessage */
+#define LassoNameRegistration_get_artifactMessage(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoNameRegistration_artifactMessage_get(self) lasso_profile_get_artifact_message(LASSO_PROFILE(self))
+#define LassoNameRegistration_set_artifactMessage(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+#define LassoNameRegistration_artifactMessage_set(self, value) lasso_profile_set_artifact_message(LASSO_PROFILE(self), value)
+
/* isIdentityDirty */
#define LassoNameRegistration_get_isIdentityDirty(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
#define LassoNameRegistration_isIdentityDirty_get(self) lasso_profile_is_identity_dirty(LASSO_PROFILE(self))
@@ -6715,3 +6833,5 @@ int LassoNameRegistration_setSessionFromDump(LassoNameRegistration *self, char *
%include Lasso-wsf.i
#endif
+%include saml-2.0/main.h
+
diff --git a/swig/Makefile.am b/swig/Makefile.am
index dc138d72..2062d6fa 100644
--- a/swig/Makefile.am
+++ b/swig/Makefile.am
@@ -3,3 +3,4 @@ EXTRA_DIST = Lasso.i Lasso-wsf.i Lasso-wsf-disco.i Lasso-wsf-dst.i \
Lasso-wsf-is.i Lasso-wsf-sa.i Lasso-wsf-soap.i inheritance.h \
wsf-support.i.in
+SUBDIRS = saml-2.0
diff --git a/swig/saml-2.0/Makefile.am b/swig/saml-2.0/Makefile.am
new file mode 100644
index 00000000..7a670b90
--- /dev/null
+++ b/swig/saml-2.0/Makefile.am
@@ -0,0 +1,54 @@
+
+EXTRA_DIST = \
+ inheritance.h \
+ main.h \
+ Makefile.am \
+ saml2_action.i \
+ saml2_advice.i \
+ saml2_assertion.i \
+ saml2_attribute.i \
+ saml2_attribute_statement.i \
+ saml2_audience_restriction.i \
+ saml2_authn_context.i \
+ saml2_authn_statement.i \
+ saml2_authz_decision_statement.i \
+ saml2_base_idabstract.i \
+ saml2_condition_abstract.i \
+ saml2_conditions.i \
+ saml2_encrypted_element.i \
+ saml2_evidence.i \
+ saml2_key_info_confirmation_data.i \
+ saml2_name_id.i \
+ saml2_one_time_use.i \
+ saml2_proxy_restriction.i \
+ saml2_statement_abstract.i \
+ saml2_subject_confirmation_data.i \
+ saml2_subject_confirmation.i \
+ saml2_subject.i \
+ saml2_subject_locality.i \
+ samlp2_artifact_resolve.i \
+ samlp2_artifact_response.i \
+ samlp2_assertion_idrequest.i \
+ samlp2_attribute_query.i \
+ samlp2_authn_query.i \
+ samlp2_authn_request.i \
+ samlp2_authz_decision_query.i \
+ samlp2_extensions.i \
+ samlp2_idp_entry.i \
+ samlp2_idp_list.i \
+ samlp2_logout_request.i \
+ samlp2_manage_name_id_request.i \
+ samlp2_name_id_mapping_request.i \
+ samlp2_name_id_mapping_response.i \
+ samlp2_name_id_policy.i \
+ samlp2_request_abstract.i \
+ samlp2_requested_authn_context.i \
+ samlp2_response.i \
+ samlp2_scoping.i \
+ samlp2_status_code.i \
+ samlp2_status_detail.i \
+ samlp2_status.i \
+ samlp2_status_response.i \
+ samlp2_subject_query_abstract.i \
+ samlp2_terminate.i
+
diff --git a/swig/saml-2.0/saml2_action.i b/swig/saml-2.0/saml2_action.i
new file mode 100644
index 00000000..a4a5f7b3
--- /dev/null
+++ b/swig/saml-2.0/saml2_action.i
@@ -0,0 +1,34 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2Action) LassoSaml2Action;
+#endif
+typedef struct {
+ char *content;
+ char *Namespace;
+} LassoSaml2Action;
+%extend LassoSaml2Action {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2Action();
+ ~LassoSaml2Action();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2Action lasso_saml2_action_new
+#define delete_LassoSaml2Action(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2Action_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_advice.i b/swig/saml-2.0/saml2_advice.i
new file mode 100644
index 00000000..fe70c0d5
--- /dev/null
+++ b/swig/saml-2.0/saml2_advice.i
@@ -0,0 +1,32 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2Advice) LassoSaml2Advice;
+#endif
+typedef struct {
+} LassoSaml2Advice;
+%extend LassoSaml2Advice {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2Advice();
+ ~LassoSaml2Advice();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2Advice lasso_saml2_advice_new
+#define delete_LassoSaml2Advice(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2Advice_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_assertion.i b/swig/saml-2.0/saml2_assertion.i
new file mode 100644
index 00000000..0206003b
--- /dev/null
+++ b/swig/saml-2.0/saml2_assertion.i
@@ -0,0 +1,91 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2Assertion) LassoSaml2Assertion;
+#endif
+typedef struct {
+ char *Version;
+ char *ID;
+ char *IssueInstant;
+} LassoSaml2Assertion;
+%extend LassoSaml2Assertion {
+
+#ifndef SWIGPHP4
+ %rename(issuer) Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(subject) Subject;
+#endif
+ %newobject *Subject_get;
+ LassoSaml2Subject *Subject;
+
+#ifndef SWIGPHP4
+ %rename(conditions) Conditions;
+#endif
+ %newobject *Conditions_get;
+ LassoSaml2Conditions *Conditions;
+
+#ifndef SWIGPHP4
+ %rename(advice) Advice;
+#endif
+ %newobject *Advice_get;
+ LassoSaml2Advice *Advice;
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2Assertion();
+ ~LassoSaml2Assertion();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* Issuer */
+
+#define LassoSaml2Assertion_get_Issuer(self) get_node((self)->Issuer)
+#define LassoSaml2Assertion_Issuer_get(self) get_node((self)->Issuer)
+#define LassoSaml2Assertion_set_Issuer(self,value) set_node((gpointer*)&(self)->Issuer, (value))
+#define LassoSaml2Assertion_Issuer_set(self,value) set_node((gpointer*)&(self)->Issuer, (value))
+
+
+/* Subject */
+
+#define LassoSaml2Assertion_get_Subject(self) get_node((self)->Subject)
+#define LassoSaml2Assertion_Subject_get(self) get_node((self)->Subject)
+#define LassoSaml2Assertion_set_Subject(self,value) set_node((gpointer*)&(self)->Subject, (value))
+#define LassoSaml2Assertion_Subject_set(self,value) set_node((gpointer*)&(self)->Subject, (value))
+
+
+/* Conditions */
+
+#define LassoSaml2Assertion_get_Conditions(self) get_node((self)->Conditions)
+#define LassoSaml2Assertion_Conditions_get(self) get_node((self)->Conditions)
+#define LassoSaml2Assertion_set_Conditions(self,value) set_node((gpointer*)&(self)->Conditions, (value))
+#define LassoSaml2Assertion_Conditions_set(self,value) set_node((gpointer*)&(self)->Conditions, (value))
+
+
+/* Advice */
+
+#define LassoSaml2Assertion_get_Advice(self) get_node((self)->Advice)
+#define LassoSaml2Assertion_Advice_get(self) get_node((self)->Advice)
+#define LassoSaml2Assertion_set_Advice(self,value) set_node((gpointer*)&(self)->Advice, (value))
+#define LassoSaml2Assertion_Advice_set(self,value) set_node((gpointer*)&(self)->Advice, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2Assertion lasso_saml2_assertion_new
+#define delete_LassoSaml2Assertion(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2Assertion_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_attribute.i b/swig/saml-2.0/saml2_attribute.i
new file mode 100644
index 00000000..522636cb
--- /dev/null
+++ b/swig/saml-2.0/saml2_attribute.i
@@ -0,0 +1,35 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2Attribute) LassoSaml2Attribute;
+#endif
+typedef struct {
+ char *Name;
+ char *NameFormat;
+ char *FriendlyName;
+} LassoSaml2Attribute;
+%extend LassoSaml2Attribute {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2Attribute();
+ ~LassoSaml2Attribute();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2Attribute lasso_saml2_attribute_new
+#define delete_LassoSaml2Attribute(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2Attribute_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_attribute_statement.i b/swig/saml-2.0/saml2_attribute_statement.i
new file mode 100644
index 00000000..0eaa3eab
--- /dev/null
+++ b/swig/saml-2.0/saml2_attribute_statement.i
@@ -0,0 +1,33 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2AttributeStatement) LassoSaml2AttributeStatement;
+#endif
+typedef struct {
+} LassoSaml2AttributeStatement;
+%extend LassoSaml2AttributeStatement {
+
+ /* inherited from Saml2StatementAbstract */
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2AttributeStatement();
+ ~LassoSaml2AttributeStatement();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2AttributeStatement lasso_saml2_attribute_statement_new
+#define delete_LassoSaml2AttributeStatement(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2AttributeStatement_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_audience_restriction.i b/swig/saml-2.0/saml2_audience_restriction.i
new file mode 100644
index 00000000..5b635ce8
--- /dev/null
+++ b/swig/saml-2.0/saml2_audience_restriction.i
@@ -0,0 +1,34 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2AudienceRestriction) LassoSaml2AudienceRestriction;
+#endif
+typedef struct {
+ char *Audience;
+} LassoSaml2AudienceRestriction;
+%extend LassoSaml2AudienceRestriction {
+
+ /* inherited from Saml2ConditionAbstract */
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2AudienceRestriction();
+ ~LassoSaml2AudienceRestriction();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2AudienceRestriction lasso_saml2_audience_restriction_new
+#define delete_LassoSaml2AudienceRestriction(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2AudienceRestriction_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_authn_context.i b/swig/saml-2.0/saml2_authn_context.i
new file mode 100644
index 00000000..db3d5391
--- /dev/null
+++ b/swig/saml-2.0/saml2_authn_context.i
@@ -0,0 +1,35 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2AuthnContext) LassoSaml2AuthnContext;
+#endif
+typedef struct {
+ char *AuthnContextClassRef;
+ char *AuthnContextDeclRef;
+ char *AuthenticatingAuthority;
+} LassoSaml2AuthnContext;
+%extend LassoSaml2AuthnContext {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2AuthnContext();
+ ~LassoSaml2AuthnContext();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2AuthnContext lasso_saml2_authn_context_new
+#define delete_LassoSaml2AuthnContext(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2AuthnContext_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_authn_statement.i b/swig/saml-2.0/saml2_authn_statement.i
new file mode 100644
index 00000000..76583356
--- /dev/null
+++ b/swig/saml-2.0/saml2_authn_statement.i
@@ -0,0 +1,64 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2AuthnStatement) LassoSaml2AuthnStatement;
+#endif
+typedef struct {
+ char *AuthnInstant;
+ char *SessionIndex;
+ char *SessionNotOnOrAfter;
+} LassoSaml2AuthnStatement;
+%extend LassoSaml2AuthnStatement {
+
+#ifndef SWIGPHP4
+ %rename(subjectLocality) SubjectLocality;
+#endif
+ %newobject *SubjectLocality_get;
+ LassoSaml2SubjectLocality *SubjectLocality;
+
+#ifndef SWIGPHP4
+ %rename(authnContext) AuthnContext;
+#endif
+ %newobject *AuthnContext_get;
+ LassoSaml2AuthnContext *AuthnContext;
+
+ /* inherited from Saml2StatementAbstract */
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2AuthnStatement();
+ ~LassoSaml2AuthnStatement();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* SubjectLocality */
+
+#define LassoSaml2AuthnStatement_get_SubjectLocality(self) get_node((self)->SubjectLocality)
+#define LassoSaml2AuthnStatement_SubjectLocality_get(self) get_node((self)->SubjectLocality)
+#define LassoSaml2AuthnStatement_set_SubjectLocality(self,value) set_node((gpointer*)&(self)->SubjectLocality, (value))
+#define LassoSaml2AuthnStatement_SubjectLocality_set(self,value) set_node((gpointer*)&(self)->SubjectLocality, (value))
+
+
+/* AuthnContext */
+
+#define LassoSaml2AuthnStatement_get_AuthnContext(self) get_node((self)->AuthnContext)
+#define LassoSaml2AuthnStatement_AuthnContext_get(self) get_node((self)->AuthnContext)
+#define LassoSaml2AuthnStatement_set_AuthnContext(self,value) set_node((gpointer*)&(self)->AuthnContext, (value))
+#define LassoSaml2AuthnStatement_AuthnContext_set(self,value) set_node((gpointer*)&(self)->AuthnContext, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2AuthnStatement lasso_saml2_authn_statement_new
+#define delete_LassoSaml2AuthnStatement(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2AuthnStatement_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_authz_decision_statement.i b/swig/saml-2.0/saml2_authz_decision_statement.i
new file mode 100644
index 00000000..956b7e2d
--- /dev/null
+++ b/swig/saml-2.0/saml2_authz_decision_statement.i
@@ -0,0 +1,63 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2AuthzDecisionStatement) LassoSaml2AuthzDecisionStatement;
+#endif
+typedef struct {
+ char *Resource;
+ char *Decision;
+} LassoSaml2AuthzDecisionStatement;
+%extend LassoSaml2AuthzDecisionStatement {
+
+#ifndef SWIGPHP4
+ %rename(action) Action;
+#endif
+ %newobject *Action_get;
+ LassoSaml2Action *Action;
+
+#ifndef SWIGPHP4
+ %rename(evidence) Evidence;
+#endif
+ %newobject *Evidence_get;
+ LassoSaml2Evidence *Evidence;
+
+ /* inherited from Saml2StatementAbstract */
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2AuthzDecisionStatement();
+ ~LassoSaml2AuthzDecisionStatement();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* Action */
+
+#define LassoSaml2AuthzDecisionStatement_get_Action(self) get_node((self)->Action)
+#define LassoSaml2AuthzDecisionStatement_Action_get(self) get_node((self)->Action)
+#define LassoSaml2AuthzDecisionStatement_set_Action(self,value) set_node((gpointer*)&(self)->Action, (value))
+#define LassoSaml2AuthzDecisionStatement_Action_set(self,value) set_node((gpointer*)&(self)->Action, (value))
+
+
+/* Evidence */
+
+#define LassoSaml2AuthzDecisionStatement_get_Evidence(self) get_node((self)->Evidence)
+#define LassoSaml2AuthzDecisionStatement_Evidence_get(self) get_node((self)->Evidence)
+#define LassoSaml2AuthzDecisionStatement_set_Evidence(self,value) set_node((gpointer*)&(self)->Evidence, (value))
+#define LassoSaml2AuthzDecisionStatement_Evidence_set(self,value) set_node((gpointer*)&(self)->Evidence, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2AuthzDecisionStatement lasso_saml2_authz_decision_statement_new
+#define delete_LassoSaml2AuthzDecisionStatement(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2AuthzDecisionStatement_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_base_idabstract.i b/swig/saml-2.0/saml2_base_idabstract.i
new file mode 100644
index 00000000..05919ac9
--- /dev/null
+++ b/swig/saml-2.0/saml2_base_idabstract.i
@@ -0,0 +1,34 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2BaseIDAbstract) LassoSaml2BaseIDAbstract;
+#endif
+typedef struct {
+ char *NameQualifier;
+ char *SPNameQualifier;
+} LassoSaml2BaseIDAbstract;
+%extend LassoSaml2BaseIDAbstract {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2BaseIDAbstract();
+ ~LassoSaml2BaseIDAbstract();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2BaseIDAbstract lasso_saml2_base_idabstract_new
+#define delete_LassoSaml2BaseIDAbstract(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2BaseIDAbstract_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_condition_abstract.i b/swig/saml-2.0/saml2_condition_abstract.i
new file mode 100644
index 00000000..117b3676
--- /dev/null
+++ b/swig/saml-2.0/saml2_condition_abstract.i
@@ -0,0 +1,32 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2ConditionAbstract) LassoSaml2ConditionAbstract;
+#endif
+typedef struct {
+} LassoSaml2ConditionAbstract;
+%extend LassoSaml2ConditionAbstract {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2ConditionAbstract();
+ ~LassoSaml2ConditionAbstract();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2ConditionAbstract lasso_saml2_condition_abstract_new
+#define delete_LassoSaml2ConditionAbstract(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2ConditionAbstract_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_conditions.i b/swig/saml-2.0/saml2_conditions.i
new file mode 100644
index 00000000..30cc9daf
--- /dev/null
+++ b/swig/saml-2.0/saml2_conditions.i
@@ -0,0 +1,34 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2Conditions) LassoSaml2Conditions;
+#endif
+typedef struct {
+ char *NotBefore;
+ char *NotOnOrAfter;
+} LassoSaml2Conditions;
+%extend LassoSaml2Conditions {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2Conditions();
+ ~LassoSaml2Conditions();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2Conditions lasso_saml2_conditions_new
+#define delete_LassoSaml2Conditions(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2Conditions_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_encrypted_element.i b/swig/saml-2.0/saml2_encrypted_element.i
new file mode 100644
index 00000000..d8f3cde7
--- /dev/null
+++ b/swig/saml-2.0/saml2_encrypted_element.i
@@ -0,0 +1,32 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2EncryptedElement) LassoSaml2EncryptedElement;
+#endif
+typedef struct {
+} LassoSaml2EncryptedElement;
+%extend LassoSaml2EncryptedElement {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2EncryptedElement();
+ ~LassoSaml2EncryptedElement();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2EncryptedElement lasso_saml2_encrypted_element_new
+#define delete_LassoSaml2EncryptedElement(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2EncryptedElement_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_evidence.i b/swig/saml-2.0/saml2_evidence.i
new file mode 100644
index 00000000..fa5f42f1
--- /dev/null
+++ b/swig/saml-2.0/saml2_evidence.i
@@ -0,0 +1,32 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2Evidence) LassoSaml2Evidence;
+#endif
+typedef struct {
+} LassoSaml2Evidence;
+%extend LassoSaml2Evidence {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2Evidence();
+ ~LassoSaml2Evidence();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2Evidence lasso_saml2_evidence_new
+#define delete_LassoSaml2Evidence(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2Evidence_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_key_info_confirmation_data.i b/swig/saml-2.0/saml2_key_info_confirmation_data.i
new file mode 100644
index 00000000..e8bd1f30
--- /dev/null
+++ b/swig/saml-2.0/saml2_key_info_confirmation_data.i
@@ -0,0 +1,32 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2KeyInfoConfirmationData) LassoSaml2KeyInfoConfirmationData;
+#endif
+typedef struct {
+} LassoSaml2KeyInfoConfirmationData;
+%extend LassoSaml2KeyInfoConfirmationData {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2KeyInfoConfirmationData();
+ ~LassoSaml2KeyInfoConfirmationData();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2KeyInfoConfirmationData lasso_saml2_key_info_confirmation_data_new
+#define delete_LassoSaml2KeyInfoConfirmationData(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2KeyInfoConfirmationData_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_name_id.i b/swig/saml-2.0/saml2_name_id.i
new file mode 100644
index 00000000..832a5417
--- /dev/null
+++ b/swig/saml-2.0/saml2_name_id.i
@@ -0,0 +1,37 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2NameID) LassoSaml2NameID;
+#endif
+typedef struct {
+ char *content;
+ char *Format;
+ char *SPProvidedID;
+ char *NameQualifier;
+ char *SPNameQualifier;
+} LassoSaml2NameID;
+%extend LassoSaml2NameID {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2NameID();
+ ~LassoSaml2NameID();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2NameID lasso_saml2_name_id_new
+#define delete_LassoSaml2NameID(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2NameID_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_one_time_use.i b/swig/saml-2.0/saml2_one_time_use.i
new file mode 100644
index 00000000..4dd7d5f4
--- /dev/null
+++ b/swig/saml-2.0/saml2_one_time_use.i
@@ -0,0 +1,33 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2OneTimeUse) LassoSaml2OneTimeUse;
+#endif
+typedef struct {
+} LassoSaml2OneTimeUse;
+%extend LassoSaml2OneTimeUse {
+
+ /* inherited from Saml2ConditionAbstract */
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2OneTimeUse();
+ ~LassoSaml2OneTimeUse();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2OneTimeUse lasso_saml2_one_time_use_new
+#define delete_LassoSaml2OneTimeUse(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2OneTimeUse_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_proxy_restriction.i b/swig/saml-2.0/saml2_proxy_restriction.i
new file mode 100644
index 00000000..84604473
--- /dev/null
+++ b/swig/saml-2.0/saml2_proxy_restriction.i
@@ -0,0 +1,35 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2ProxyRestriction) LassoSaml2ProxyRestriction;
+#endif
+typedef struct {
+ char *Audience;
+ char *Count;
+} LassoSaml2ProxyRestriction;
+%extend LassoSaml2ProxyRestriction {
+
+ /* inherited from Saml2ConditionAbstract */
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2ProxyRestriction();
+ ~LassoSaml2ProxyRestriction();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2ProxyRestriction lasso_saml2_proxy_restriction_new
+#define delete_LassoSaml2ProxyRestriction(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2ProxyRestriction_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_statement_abstract.i b/swig/saml-2.0/saml2_statement_abstract.i
new file mode 100644
index 00000000..5cbecb35
--- /dev/null
+++ b/swig/saml-2.0/saml2_statement_abstract.i
@@ -0,0 +1,32 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2StatementAbstract) LassoSaml2StatementAbstract;
+#endif
+typedef struct {
+} LassoSaml2StatementAbstract;
+%extend LassoSaml2StatementAbstract {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2StatementAbstract();
+ ~LassoSaml2StatementAbstract();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2StatementAbstract lasso_saml2_statement_abstract_new
+#define delete_LassoSaml2StatementAbstract(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2StatementAbstract_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_subject.i b/swig/saml-2.0/saml2_subject.i
new file mode 100644
index 00000000..0cb7b943
--- /dev/null
+++ b/swig/saml-2.0/saml2_subject.i
@@ -0,0 +1,88 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2Subject) LassoSaml2Subject;
+#endif
+typedef struct {
+} LassoSaml2Subject;
+%extend LassoSaml2Subject {
+
+#ifndef SWIGPHP4
+ %rename(baseID) BaseID;
+#endif
+ %newobject *BaseID_get;
+ LassoSaml2BaseIDAbstract *BaseID;
+
+#ifndef SWIGPHP4
+ %rename(nameID) NameID;
+#endif
+ %newobject *NameID_get;
+ LassoSaml2NameID *NameID;
+
+#ifndef SWIGPHP4
+ %rename(encryptedID) EncryptedID;
+#endif
+ %newobject *EncryptedID_get;
+ LassoSaml2EncryptedElement *EncryptedID;
+
+#ifndef SWIGPHP4
+ %rename(subjectConfirmation) SubjectConfirmation;
+#endif
+ %newobject *SubjectConfirmation_get;
+ LassoSaml2SubjectConfirmation *SubjectConfirmation;
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2Subject();
+ ~LassoSaml2Subject();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* BaseID */
+
+#define LassoSaml2Subject_get_BaseID(self) get_node((self)->BaseID)
+#define LassoSaml2Subject_BaseID_get(self) get_node((self)->BaseID)
+#define LassoSaml2Subject_set_BaseID(self,value) set_node((gpointer*)&(self)->BaseID, (value))
+#define LassoSaml2Subject_BaseID_set(self,value) set_node((gpointer*)&(self)->BaseID, (value))
+
+
+/* NameID */
+
+#define LassoSaml2Subject_get_NameID(self) get_node((self)->NameID)
+#define LassoSaml2Subject_NameID_get(self) get_node((self)->NameID)
+#define LassoSaml2Subject_set_NameID(self,value) set_node((gpointer*)&(self)->NameID, (value))
+#define LassoSaml2Subject_NameID_set(self,value) set_node((gpointer*)&(self)->NameID, (value))
+
+
+/* EncryptedID */
+
+#define LassoSaml2Subject_get_EncryptedID(self) get_node((self)->EncryptedID)
+#define LassoSaml2Subject_EncryptedID_get(self) get_node((self)->EncryptedID)
+#define LassoSaml2Subject_set_EncryptedID(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+#define LassoSaml2Subject_EncryptedID_set(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+
+
+/* SubjectConfirmation */
+
+#define LassoSaml2Subject_get_SubjectConfirmation(self) get_node((self)->SubjectConfirmation)
+#define LassoSaml2Subject_SubjectConfirmation_get(self) get_node((self)->SubjectConfirmation)
+#define LassoSaml2Subject_set_SubjectConfirmation(self,value) set_node((gpointer*)&(self)->SubjectConfirmation, (value))
+#define LassoSaml2Subject_SubjectConfirmation_set(self,value) set_node((gpointer*)&(self)->SubjectConfirmation, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2Subject lasso_saml2_subject_new
+#define delete_LassoSaml2Subject(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2Subject_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_subject_confirmation.i b/swig/saml-2.0/saml2_subject_confirmation.i
new file mode 100644
index 00000000..55a6ea4c
--- /dev/null
+++ b/swig/saml-2.0/saml2_subject_confirmation.i
@@ -0,0 +1,89 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2SubjectConfirmation) LassoSaml2SubjectConfirmation;
+#endif
+typedef struct {
+ char *Method;
+} LassoSaml2SubjectConfirmation;
+%extend LassoSaml2SubjectConfirmation {
+
+#ifndef SWIGPHP4
+ %rename(baseID) BaseID;
+#endif
+ %newobject *BaseID_get;
+ LassoSaml2BaseIDAbstract *BaseID;
+
+#ifndef SWIGPHP4
+ %rename(nameID) NameID;
+#endif
+ %newobject *NameID_get;
+ LassoSaml2NameID *NameID;
+
+#ifndef SWIGPHP4
+ %rename(encryptedID) EncryptedID;
+#endif
+ %newobject *EncryptedID_get;
+ LassoSaml2EncryptedElement *EncryptedID;
+
+#ifndef SWIGPHP4
+ %rename(subjectConfirmationData) SubjectConfirmationData;
+#endif
+ %newobject *SubjectConfirmationData_get;
+ LassoSaml2SubjectConfirmationData *SubjectConfirmationData;
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2SubjectConfirmation();
+ ~LassoSaml2SubjectConfirmation();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* BaseID */
+
+#define LassoSaml2SubjectConfirmation_get_BaseID(self) get_node((self)->BaseID)
+#define LassoSaml2SubjectConfirmation_BaseID_get(self) get_node((self)->BaseID)
+#define LassoSaml2SubjectConfirmation_set_BaseID(self,value) set_node((gpointer*)&(self)->BaseID, (value))
+#define LassoSaml2SubjectConfirmation_BaseID_set(self,value) set_node((gpointer*)&(self)->BaseID, (value))
+
+
+/* NameID */
+
+#define LassoSaml2SubjectConfirmation_get_NameID(self) get_node((self)->NameID)
+#define LassoSaml2SubjectConfirmation_NameID_get(self) get_node((self)->NameID)
+#define LassoSaml2SubjectConfirmation_set_NameID(self,value) set_node((gpointer*)&(self)->NameID, (value))
+#define LassoSaml2SubjectConfirmation_NameID_set(self,value) set_node((gpointer*)&(self)->NameID, (value))
+
+
+/* EncryptedID */
+
+#define LassoSaml2SubjectConfirmation_get_EncryptedID(self) get_node((self)->EncryptedID)
+#define LassoSaml2SubjectConfirmation_EncryptedID_get(self) get_node((self)->EncryptedID)
+#define LassoSaml2SubjectConfirmation_set_EncryptedID(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+#define LassoSaml2SubjectConfirmation_EncryptedID_set(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+
+
+/* SubjectConfirmationData */
+
+#define LassoSaml2SubjectConfirmation_get_SubjectConfirmationData(self) get_node((self)->SubjectConfirmationData)
+#define LassoSaml2SubjectConfirmation_SubjectConfirmationData_get(self) get_node((self)->SubjectConfirmationData)
+#define LassoSaml2SubjectConfirmation_set_SubjectConfirmationData(self,value) set_node((gpointer*)&(self)->SubjectConfirmationData, (value))
+#define LassoSaml2SubjectConfirmation_SubjectConfirmationData_set(self,value) set_node((gpointer*)&(self)->SubjectConfirmationData, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2SubjectConfirmation lasso_saml2_subject_confirmation_new
+#define delete_LassoSaml2SubjectConfirmation(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2SubjectConfirmation_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_subject_confirmation_data.i b/swig/saml-2.0/saml2_subject_confirmation_data.i
new file mode 100644
index 00000000..db587cd5
--- /dev/null
+++ b/swig/saml-2.0/saml2_subject_confirmation_data.i
@@ -0,0 +1,37 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2SubjectConfirmationData) LassoSaml2SubjectConfirmationData;
+#endif
+typedef struct {
+ char *NotBefore;
+ char *NotOnOrAfter;
+ char *Recipient;
+ char *InResponseTo;
+ char *Address;
+} LassoSaml2SubjectConfirmationData;
+%extend LassoSaml2SubjectConfirmationData {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2SubjectConfirmationData();
+ ~LassoSaml2SubjectConfirmationData();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2SubjectConfirmationData lasso_saml2_subject_confirmation_data_new
+#define delete_LassoSaml2SubjectConfirmationData(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2SubjectConfirmationData_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/saml2_subject_locality.i b/swig/saml-2.0/saml2_subject_locality.i
new file mode 100644
index 00000000..f51cdbb3
--- /dev/null
+++ b/swig/saml-2.0/saml2_subject_locality.i
@@ -0,0 +1,34 @@
+
+#ifndef SWIGPHP4
+%rename(Saml2SubjectLocality) LassoSaml2SubjectLocality;
+#endif
+typedef struct {
+ char *Address;
+ char *DNSName;
+} LassoSaml2SubjectLocality;
+%extend LassoSaml2SubjectLocality {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSaml2SubjectLocality();
+ ~LassoSaml2SubjectLocality();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSaml2SubjectLocality lasso_saml2_subject_locality_new
+#define delete_LassoSaml2SubjectLocality(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSaml2SubjectLocality_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_artifact_resolve.i b/swig/saml-2.0/samlp2_artifact_resolve.i
new file mode 100644
index 00000000..111f447a
--- /dev/null
+++ b/swig/saml-2.0/samlp2_artifact_resolve.i
@@ -0,0 +1,124 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2ArtifactResolve) LassoSamlp2ArtifactResolve;
+#endif
+typedef struct {
+ char *Artifact;
+} LassoSamlp2ArtifactResolve;
+%extend LassoSamlp2ArtifactResolve {
+
+ /* inherited from Samlp2RequestAbstract */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2ArtifactResolve();
+ ~LassoSamlp2ArtifactResolve();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* inherited from RequestAbstract */
+
+/* Issuer */
+
+#define LassoSamlp2ArtifactResolve_get_Issuer(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2ArtifactResolve_Issuer_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2ArtifactResolve_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+#define LassoSamlp2ArtifactResolve_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2ArtifactResolve_get_Extensions(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2ArtifactResolve_Extensions_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2ArtifactResolve_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+#define LassoSamlp2ArtifactResolve_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+
+
+/* ID */
+
+#define LassoSamlp2ArtifactResolve_get_ID(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+#define LassoSamlp2ArtifactResolve_ID_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+
+#define LassoSamlp2ArtifactResolve_set_ID(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+#define LassoSamlp2ArtifactResolve_ID_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+
+/* Version */
+
+#define LassoSamlp2ArtifactResolve_get_Version(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+#define LassoSamlp2ArtifactResolve_Version_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+
+#define LassoSamlp2ArtifactResolve_set_Version(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+#define LassoSamlp2ArtifactResolve_Version_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2ArtifactResolve_get_IssueInstant(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+#define LassoSamlp2ArtifactResolve_IssueInstant_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+
+#define LassoSamlp2ArtifactResolve_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+#define LassoSamlp2ArtifactResolve_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2ArtifactResolve_get_Destination(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+#define LassoSamlp2ArtifactResolve_Destination_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+
+#define LassoSamlp2ArtifactResolve_set_Destination(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+#define LassoSamlp2ArtifactResolve_Destination_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2ArtifactResolve_get_Consent(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+#define LassoSamlp2ArtifactResolve_Consent_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+
+#define LassoSamlp2ArtifactResolve_set_Consent(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+#define LassoSamlp2ArtifactResolve_Consent_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2ArtifactResolve lasso_samlp2_artifact_resolve_new
+#define delete_LassoSamlp2ArtifactResolve(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2ArtifactResolve_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_artifact_response.i b/swig/saml-2.0/samlp2_artifact_response.i
new file mode 100644
index 00000000..2e2ecbf9
--- /dev/null
+++ b/swig/saml-2.0/samlp2_artifact_response.i
@@ -0,0 +1,160 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2ArtifactResponse) LassoSamlp2ArtifactResponse;
+#endif
+typedef struct {
+} LassoSamlp2ArtifactResponse;
+%extend LassoSamlp2ArtifactResponse {
+
+ %newobject *any_get;
+ LassoNode *any;
+
+ /* inherited from Samlp2StatusResponse */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(status) *Status;
+#endif
+ %newobject *Status_get;
+ LassoSamlp2Status *Status;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(inResponseTo) *InResponseTo;
+#endif
+ char *InResponseTo;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2ArtifactResponse();
+ ~LassoSamlp2ArtifactResponse();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* any */
+
+#define LassoSamlp2ArtifactResponse_get_any(self) get_node((self)->any)
+#define LassoSamlp2ArtifactResponse_any_get(self) get_node((self)->any)
+#define LassoSamlp2ArtifactResponse_set_any(self,value) set_node((gpointer*)&(self)->any, (value))
+#define LassoSamlp2ArtifactResponse_any_set(self,value) set_node((gpointer*)&(self)->any, (value))
+
+
+/* inherited from StatusResponse */
+
+/* Issuer */
+
+#define LassoSamlp2ArtifactResponse_get_Issuer(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer)
+#define LassoSamlp2ArtifactResponse_Issuer_get(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer)
+#define LassoSamlp2ArtifactResponse_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer, (value))
+#define LassoSamlp2ArtifactResponse_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2ArtifactResponse_get_Extensions(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions)
+#define LassoSamlp2ArtifactResponse_Extensions_get(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions)
+#define LassoSamlp2ArtifactResponse_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions, (value))
+#define LassoSamlp2ArtifactResponse_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions, (value))
+
+
+/* Status */
+
+#define LassoSamlp2ArtifactResponse_get_Status(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Status)
+#define LassoSamlp2ArtifactResponse_Status_get(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Status)
+#define LassoSamlp2ArtifactResponse_set_Status(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Status, (value))
+#define LassoSamlp2ArtifactResponse_Status_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Status, (value))
+
+
+/* ID */
+
+#define LassoSamlp2ArtifactResponse_get_ID(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->ID
+#define LassoSamlp2ArtifactResponse_ID_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->ID
+
+#define LassoSamlp2ArtifactResponse_set_ID(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->ID, (value))
+#define LassoSamlp2ArtifactResponse_ID_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->ID, (value))
+
+/* InResponseTo */
+
+#define LassoSamlp2ArtifactResponse_get_InResponseTo(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo
+#define LassoSamlp2ArtifactResponse_InResponseTo_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo
+
+#define LassoSamlp2ArtifactResponse_set_InResponseTo(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo, (value))
+#define LassoSamlp2ArtifactResponse_InResponseTo_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo, (value))
+
+/* Version */
+
+#define LassoSamlp2ArtifactResponse_get_Version(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Version
+#define LassoSamlp2ArtifactResponse_Version_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Version
+
+#define LassoSamlp2ArtifactResponse_set_Version(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Version, (value))
+#define LassoSamlp2ArtifactResponse_Version_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2ArtifactResponse_get_IssueInstant(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant
+#define LassoSamlp2ArtifactResponse_IssueInstant_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant
+
+#define LassoSamlp2ArtifactResponse_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant, (value))
+#define LassoSamlp2ArtifactResponse_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2ArtifactResponse_get_Destination(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination
+#define LassoSamlp2ArtifactResponse_Destination_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination
+
+#define LassoSamlp2ArtifactResponse_set_Destination(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination, (value))
+#define LassoSamlp2ArtifactResponse_Destination_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2ArtifactResponse_get_Consent(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent
+#define LassoSamlp2ArtifactResponse_Consent_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent
+
+#define LassoSamlp2ArtifactResponse_set_Consent(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent, (value))
+#define LassoSamlp2ArtifactResponse_Consent_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2ArtifactResponse lasso_samlp2_artifact_response_new
+#define delete_LassoSamlp2ArtifactResponse(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2ArtifactResponse_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_assertion_idrequest.i b/swig/saml-2.0/samlp2_assertion_idrequest.i
new file mode 100644
index 00000000..a95d6d5b
--- /dev/null
+++ b/swig/saml-2.0/samlp2_assertion_idrequest.i
@@ -0,0 +1,124 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2AssertionIDRequest) LassoSamlp2AssertionIDRequest;
+#endif
+typedef struct {
+ char *AssertionIDRef;
+} LassoSamlp2AssertionIDRequest;
+%extend LassoSamlp2AssertionIDRequest {
+
+ /* inherited from Samlp2RequestAbstract */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2AssertionIDRequest();
+ ~LassoSamlp2AssertionIDRequest();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* inherited from RequestAbstract */
+
+/* Issuer */
+
+#define LassoSamlp2AssertionIDRequest_get_Issuer(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2AssertionIDRequest_Issuer_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2AssertionIDRequest_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+#define LassoSamlp2AssertionIDRequest_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2AssertionIDRequest_get_Extensions(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2AssertionIDRequest_Extensions_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2AssertionIDRequest_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+#define LassoSamlp2AssertionIDRequest_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+
+
+/* ID */
+
+#define LassoSamlp2AssertionIDRequest_get_ID(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+#define LassoSamlp2AssertionIDRequest_ID_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+
+#define LassoSamlp2AssertionIDRequest_set_ID(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+#define LassoSamlp2AssertionIDRequest_ID_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+
+/* Version */
+
+#define LassoSamlp2AssertionIDRequest_get_Version(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+#define LassoSamlp2AssertionIDRequest_Version_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+
+#define LassoSamlp2AssertionIDRequest_set_Version(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+#define LassoSamlp2AssertionIDRequest_Version_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2AssertionIDRequest_get_IssueInstant(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+#define LassoSamlp2AssertionIDRequest_IssueInstant_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+
+#define LassoSamlp2AssertionIDRequest_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+#define LassoSamlp2AssertionIDRequest_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2AssertionIDRequest_get_Destination(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+#define LassoSamlp2AssertionIDRequest_Destination_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+
+#define LassoSamlp2AssertionIDRequest_set_Destination(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+#define LassoSamlp2AssertionIDRequest_Destination_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2AssertionIDRequest_get_Consent(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+#define LassoSamlp2AssertionIDRequest_Consent_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+
+#define LassoSamlp2AssertionIDRequest_set_Consent(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+#define LassoSamlp2AssertionIDRequest_Consent_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2AssertionIDRequest lasso_samlp2_assertion_idrequest_new
+#define delete_LassoSamlp2AssertionIDRequest(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2AssertionIDRequest_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_attribute_query.i b/swig/saml-2.0/samlp2_attribute_query.i
new file mode 100644
index 00000000..02685136
--- /dev/null
+++ b/swig/saml-2.0/samlp2_attribute_query.i
@@ -0,0 +1,154 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2AttributeQuery) LassoSamlp2AttributeQuery;
+#endif
+typedef struct {
+} LassoSamlp2AttributeQuery;
+%extend LassoSamlp2AttributeQuery {
+
+#ifndef SWIGPHP4
+ %rename(attribute) Attribute;
+#endif
+ %newobject *Attribute_get;
+ LassoSaml2Attribute *Attribute;
+
+ /* inherited from Samlp2SubjectQueryAbstract */
+#ifndef SWIGPHP4
+ %rename(subject) *Subject;
+#endif
+ %newobject *Subject_get;
+ LassoSaml2Subject *Subject;
+
+ /* inherited from RequestAbstract */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2AttributeQuery();
+ ~LassoSamlp2AttributeQuery();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* Attribute */
+
+#define LassoSamlp2AttributeQuery_get_Attribute(self) get_node((self)->Attribute)
+#define LassoSamlp2AttributeQuery_Attribute_get(self) get_node((self)->Attribute)
+#define LassoSamlp2AttributeQuery_set_Attribute(self,value) set_node((gpointer*)&(self)->Attribute, (value))
+#define LassoSamlp2AttributeQuery_Attribute_set(self,value) set_node((gpointer*)&(self)->Attribute, (value))
+
+
+/* inherited from SubjectQueryAbstract */
+
+/* Subject */
+
+#define LassoSamlp2AttributeQuery_get_Subject(self) get_node(LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject)
+#define LassoSamlp2AttributeQuery_Subject_get(self) get_node(LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject)
+#define LassoSamlp2AttributeQuery_set_Subject(self,value) set_node((gpointer*)&LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject, (value))
+#define LassoSamlp2AttributeQuery_Subject_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject, (value))
+
+
+/* inherited from RequestAbstract */
+
+/* Issuer */
+
+#define LassoSamlp2AttributeQuery_get_Issuer(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2AttributeQuery_Issuer_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2AttributeQuery_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+#define LassoSamlp2AttributeQuery_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2AttributeQuery_get_Extensions(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2AttributeQuery_Extensions_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2AttributeQuery_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+#define LassoSamlp2AttributeQuery_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+
+
+/* ID */
+
+#define LassoSamlp2AttributeQuery_get_ID(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+#define LassoSamlp2AttributeQuery_ID_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+
+#define LassoSamlp2AttributeQuery_set_ID(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+#define LassoSamlp2AttributeQuery_ID_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+
+/* Version */
+
+#define LassoSamlp2AttributeQuery_get_Version(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+#define LassoSamlp2AttributeQuery_Version_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+
+#define LassoSamlp2AttributeQuery_set_Version(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+#define LassoSamlp2AttributeQuery_Version_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2AttributeQuery_get_IssueInstant(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+#define LassoSamlp2AttributeQuery_IssueInstant_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+
+#define LassoSamlp2AttributeQuery_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+#define LassoSamlp2AttributeQuery_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2AttributeQuery_get_Destination(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+#define LassoSamlp2AttributeQuery_Destination_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+
+#define LassoSamlp2AttributeQuery_set_Destination(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+#define LassoSamlp2AttributeQuery_Destination_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2AttributeQuery_get_Consent(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+#define LassoSamlp2AttributeQuery_Consent_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+
+#define LassoSamlp2AttributeQuery_set_Consent(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+#define LassoSamlp2AttributeQuery_Consent_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2AttributeQuery lasso_samlp2_attribute_query_new
+#define delete_LassoSamlp2AttributeQuery(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2AttributeQuery_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_authn_query.i b/swig/saml-2.0/samlp2_authn_query.i
new file mode 100644
index 00000000..279531f1
--- /dev/null
+++ b/swig/saml-2.0/samlp2_authn_query.i
@@ -0,0 +1,155 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2AuthnQuery) LassoSamlp2AuthnQuery;
+#endif
+typedef struct {
+ char *SessionIndex;
+} LassoSamlp2AuthnQuery;
+%extend LassoSamlp2AuthnQuery {
+
+#ifndef SWIGPHP4
+ %rename(requestedAuthnContext) RequestedAuthnContext;
+#endif
+ %newobject *RequestedAuthnContext_get;
+ LassoSamlp2RequestedAuthnContext *RequestedAuthnContext;
+
+ /* inherited from Samlp2SubjectQueryAbstract */
+#ifndef SWIGPHP4
+ %rename(subject) *Subject;
+#endif
+ %newobject *Subject_get;
+ LassoSaml2Subject *Subject;
+
+ /* inherited from Samlp2RequestAbstract */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2AuthnQuery();
+ ~LassoSamlp2AuthnQuery();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* RequestedAuthnContext */
+
+#define LassoSamlp2AuthnQuery_get_RequestedAuthnContext(self) get_node((self)->RequestedAuthnContext)
+#define LassoSamlp2AuthnQuery_RequestedAuthnContext_get(self) get_node((self)->RequestedAuthnContext)
+#define LassoSamlp2AuthnQuery_set_RequestedAuthnContext(self,value) set_node((gpointer*)&(self)->RequestedAuthnContext, (value))
+#define LassoSamlp2AuthnQuery_RequestedAuthnContext_set(self,value) set_node((gpointer*)&(self)->RequestedAuthnContext, (value))
+
+
+/* inherited from SubjectQueryAbstract */
+
+/* Subject */
+
+#define LassoSamlp2AuthnQuery_get_Subject(self) get_node(LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject)
+#define LassoSamlp2AuthnQuery_Subject_get(self) get_node(LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject)
+#define LassoSamlp2AuthnQuery_set_Subject(self,value) set_node((gpointer*)&LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject, (value))
+#define LassoSamlp2AuthnQuery_Subject_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject, (value))
+
+
+/* inherited from RequestAbstract */
+
+/* Issuer */
+
+#define LassoSamlp2AuthnQuery_get_Issuer(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2AuthnQuery_Issuer_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2AuthnQuery_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+#define LassoSamlp2AuthnQuery_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2AuthnQuery_get_Extensions(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2AuthnQuery_Extensions_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2AuthnQuery_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+#define LassoSamlp2AuthnQuery_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+
+
+/* ID */
+
+#define LassoSamlp2AuthnQuery_get_ID(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+#define LassoSamlp2AuthnQuery_ID_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+
+#define LassoSamlp2AuthnQuery_set_ID(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+#define LassoSamlp2AuthnQuery_ID_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+
+/* Version */
+
+#define LassoSamlp2AuthnQuery_get_Version(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+#define LassoSamlp2AuthnQuery_Version_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+
+#define LassoSamlp2AuthnQuery_set_Version(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+#define LassoSamlp2AuthnQuery_Version_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2AuthnQuery_get_IssueInstant(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+#define LassoSamlp2AuthnQuery_IssueInstant_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+
+#define LassoSamlp2AuthnQuery_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+#define LassoSamlp2AuthnQuery_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2AuthnQuery_get_Destination(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+#define LassoSamlp2AuthnQuery_Destination_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+
+#define LassoSamlp2AuthnQuery_set_Destination(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+#define LassoSamlp2AuthnQuery_Destination_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2AuthnQuery_get_Consent(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+#define LassoSamlp2AuthnQuery_Consent_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+
+#define LassoSamlp2AuthnQuery_set_Consent(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+#define LassoSamlp2AuthnQuery_Consent_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2AuthnQuery lasso_samlp2_authn_query_new
+#define delete_LassoSamlp2AuthnQuery(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2AuthnQuery_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_authn_request.i b/swig/saml-2.0/samlp2_authn_request.i
new file mode 100644
index 00000000..a0b4193c
--- /dev/null
+++ b/swig/saml-2.0/samlp2_authn_request.i
@@ -0,0 +1,212 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2AuthnRequest) LassoSamlp2AuthnRequest;
+#endif
+typedef struct {
+#ifndef SWIGPHP4
+ %rename(forceAuthn) ForceAuthn;
+#endif
+ gboolean ForceAuthn;
+#ifndef SWIGPHP4
+ %rename(isPassive) IsPassive;
+#endif
+ gboolean IsPassive;
+ char *ProtocolBinding;
+#ifndef SWIGPHP4
+ %rename(assertionConsumerServiceIndex) AssertionConsumerServiceIndex;
+#endif
+ int AssertionConsumerServiceIndex;
+ char *AssertionConsumerServiceURL;
+#ifndef SWIGPHP4
+ %rename(attributeConsumingServiceIndex) AttributeConsumingServiceIndex;
+#endif
+ int AttributeConsumingServiceIndex;
+ char *ProviderName;
+} LassoSamlp2AuthnRequest;
+%extend LassoSamlp2AuthnRequest {
+
+#ifndef SWIGPHP4
+ %rename(subject) Subject;
+#endif
+ %newobject *Subject_get;
+ LassoSaml2Subject *Subject;
+
+#ifndef SWIGPHP4
+ %rename(nameIDPolicy) NameIDPolicy;
+#endif
+ %newobject *NameIDPolicy_get;
+ LassoSamlp2NameIDPolicy *NameIDPolicy;
+
+#ifndef SWIGPHP4
+ %rename(conditions) Conditions;
+#endif
+ %newobject *Conditions_get;
+ LassoSaml2Conditions *Conditions;
+
+#ifndef SWIGPHP4
+ %rename(requestedAuthnContext) RequestedAuthnContext;
+#endif
+ %newobject *RequestedAuthnContext_get;
+ LassoSamlp2RequestedAuthnContext *RequestedAuthnContext;
+
+#ifndef SWIGPHP4
+ %rename(scoping) Scoping;
+#endif
+ %newobject *Scoping_get;
+ LassoSamlp2Scoping *Scoping;
+
+ /* inherited from Samlp2RequestAbstract */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2AuthnRequest();
+ ~LassoSamlp2AuthnRequest();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* Subject */
+
+#define LassoSamlp2AuthnRequest_get_Subject(self) get_node((self)->Subject)
+#define LassoSamlp2AuthnRequest_Subject_get(self) get_node((self)->Subject)
+#define LassoSamlp2AuthnRequest_set_Subject(self,value) set_node((gpointer*)&(self)->Subject, (value))
+#define LassoSamlp2AuthnRequest_Subject_set(self,value) set_node((gpointer*)&(self)->Subject, (value))
+
+
+/* NameIDPolicy */
+
+#define LassoSamlp2AuthnRequest_get_NameIDPolicy(self) get_node((self)->NameIDPolicy)
+#define LassoSamlp2AuthnRequest_NameIDPolicy_get(self) get_node((self)->NameIDPolicy)
+#define LassoSamlp2AuthnRequest_set_NameIDPolicy(self,value) set_node((gpointer*)&(self)->NameIDPolicy, (value))
+#define LassoSamlp2AuthnRequest_NameIDPolicy_set(self,value) set_node((gpointer*)&(self)->NameIDPolicy, (value))
+
+
+/* Conditions */
+
+#define LassoSamlp2AuthnRequest_get_Conditions(self) get_node((self)->Conditions)
+#define LassoSamlp2AuthnRequest_Conditions_get(self) get_node((self)->Conditions)
+#define LassoSamlp2AuthnRequest_set_Conditions(self,value) set_node((gpointer*)&(self)->Conditions, (value))
+#define LassoSamlp2AuthnRequest_Conditions_set(self,value) set_node((gpointer*)&(self)->Conditions, (value))
+
+
+/* RequestedAuthnContext */
+
+#define LassoSamlp2AuthnRequest_get_RequestedAuthnContext(self) get_node((self)->RequestedAuthnContext)
+#define LassoSamlp2AuthnRequest_RequestedAuthnContext_get(self) get_node((self)->RequestedAuthnContext)
+#define LassoSamlp2AuthnRequest_set_RequestedAuthnContext(self,value) set_node((gpointer*)&(self)->RequestedAuthnContext, (value))
+#define LassoSamlp2AuthnRequest_RequestedAuthnContext_set(self,value) set_node((gpointer*)&(self)->RequestedAuthnContext, (value))
+
+
+/* Scoping */
+
+#define LassoSamlp2AuthnRequest_get_Scoping(self) get_node((self)->Scoping)
+#define LassoSamlp2AuthnRequest_Scoping_get(self) get_node((self)->Scoping)
+#define LassoSamlp2AuthnRequest_set_Scoping(self,value) set_node((gpointer*)&(self)->Scoping, (value))
+#define LassoSamlp2AuthnRequest_Scoping_set(self,value) set_node((gpointer*)&(self)->Scoping, (value))
+
+
+/* inherited from RequestAbstract */
+
+/* Issuer */
+
+#define LassoSamlp2AuthnRequest_get_Issuer(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2AuthnRequest_Issuer_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2AuthnRequest_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+#define LassoSamlp2AuthnRequest_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2AuthnRequest_get_Extensions(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2AuthnRequest_Extensions_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2AuthnRequest_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+#define LassoSamlp2AuthnRequest_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+
+
+/* ID */
+
+#define LassoSamlp2AuthnRequest_get_ID(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+#define LassoSamlp2AuthnRequest_ID_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+
+#define LassoSamlp2AuthnRequest_set_ID(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+#define LassoSamlp2AuthnRequest_ID_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+
+/* Version */
+
+#define LassoSamlp2AuthnRequest_get_Version(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+#define LassoSamlp2AuthnRequest_Version_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+
+#define LassoSamlp2AuthnRequest_set_Version(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+#define LassoSamlp2AuthnRequest_Version_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2AuthnRequest_get_IssueInstant(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+#define LassoSamlp2AuthnRequest_IssueInstant_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+
+#define LassoSamlp2AuthnRequest_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+#define LassoSamlp2AuthnRequest_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2AuthnRequest_get_Destination(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+#define LassoSamlp2AuthnRequest_Destination_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+
+#define LassoSamlp2AuthnRequest_set_Destination(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+#define LassoSamlp2AuthnRequest_Destination_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2AuthnRequest_get_Consent(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+#define LassoSamlp2AuthnRequest_Consent_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+
+#define LassoSamlp2AuthnRequest_set_Consent(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+#define LassoSamlp2AuthnRequest_Consent_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2AuthnRequest lasso_samlp2_authn_request_new
+#define delete_LassoSamlp2AuthnRequest(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2AuthnRequest_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_authz_decision_query.i b/swig/saml-2.0/samlp2_authz_decision_query.i
new file mode 100644
index 00000000..d69222ff
--- /dev/null
+++ b/swig/saml-2.0/samlp2_authz_decision_query.i
@@ -0,0 +1,169 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2AuthzDecisionQuery) LassoSamlp2AuthzDecisionQuery;
+#endif
+typedef struct {
+ char *Resource;
+} LassoSamlp2AuthzDecisionQuery;
+%extend LassoSamlp2AuthzDecisionQuery {
+
+#ifndef SWIGPHP4
+ %rename(action) Action;
+#endif
+ %newobject *Action_get;
+ LassoSaml2Action *Action;
+
+#ifndef SWIGPHP4
+ %rename(evidence) Evidence;
+#endif
+ %newobject *Evidence_get;
+ LassoSaml2Evidence *Evidence;
+
+ /* inherited from Samlp2SubjectQueryAbstract */
+#ifndef SWIGPHP4
+ %rename(subject) *Subject;
+#endif
+ %newobject *Subject_get;
+ LassoSaml2Subject *Subject;
+
+ /* inherited from RequestAbstract */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2AuthzDecisionQuery();
+ ~LassoSamlp2AuthzDecisionQuery();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* Action */
+
+#define LassoSamlp2AuthzDecisionQuery_get_Action(self) get_node((self)->Action)
+#define LassoSamlp2AuthzDecisionQuery_Action_get(self) get_node((self)->Action)
+#define LassoSamlp2AuthzDecisionQuery_set_Action(self,value) set_node((gpointer*)&(self)->Action, (value))
+#define LassoSamlp2AuthzDecisionQuery_Action_set(self,value) set_node((gpointer*)&(self)->Action, (value))
+
+
+/* Evidence */
+
+#define LassoSamlp2AuthzDecisionQuery_get_Evidence(self) get_node((self)->Evidence)
+#define LassoSamlp2AuthzDecisionQuery_Evidence_get(self) get_node((self)->Evidence)
+#define LassoSamlp2AuthzDecisionQuery_set_Evidence(self,value) set_node((gpointer*)&(self)->Evidence, (value))
+#define LassoSamlp2AuthzDecisionQuery_Evidence_set(self,value) set_node((gpointer*)&(self)->Evidence, (value))
+
+
+/* inherited from SubjectQueryAbstract */
+
+/* Subject */
+
+#define LassoSamlp2AuthzDecisionQuery_get_Subject(self) get_node(LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject)
+#define LassoSamlp2AuthzDecisionQuery_Subject_get(self) get_node(LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject)
+#define LassoSamlp2AuthzDecisionQuery_set_Subject(self,value) set_node((gpointer*)&LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject, (value))
+#define LassoSamlp2AuthzDecisionQuery_Subject_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_SUBJECT_QUERY_ABSTRACT(self)->Subject, (value))
+
+
+/* inherited from RequestAbstract */
+
+/* Issuer */
+
+#define LassoSamlp2AuthzDecisionQuery_get_Issuer(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2AuthzDecisionQuery_Issuer_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2AuthzDecisionQuery_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+#define LassoSamlp2AuthzDecisionQuery_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2AuthzDecisionQuery_get_Extensions(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2AuthzDecisionQuery_Extensions_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2AuthzDecisionQuery_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+#define LassoSamlp2AuthzDecisionQuery_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+
+
+/* ID */
+
+#define LassoSamlp2AuthzDecisionQuery_get_ID(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+#define LassoSamlp2AuthzDecisionQuery_ID_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+
+#define LassoSamlp2AuthzDecisionQuery_set_ID(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+#define LassoSamlp2AuthzDecisionQuery_ID_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+
+/* Version */
+
+#define LassoSamlp2AuthzDecisionQuery_get_Version(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+#define LassoSamlp2AuthzDecisionQuery_Version_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+
+#define LassoSamlp2AuthzDecisionQuery_set_Version(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+#define LassoSamlp2AuthzDecisionQuery_Version_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2AuthzDecisionQuery_get_IssueInstant(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+#define LassoSamlp2AuthzDecisionQuery_IssueInstant_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+
+#define LassoSamlp2AuthzDecisionQuery_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+#define LassoSamlp2AuthzDecisionQuery_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2AuthzDecisionQuery_get_Destination(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+#define LassoSamlp2AuthzDecisionQuery_Destination_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+
+#define LassoSamlp2AuthzDecisionQuery_set_Destination(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+#define LassoSamlp2AuthzDecisionQuery_Destination_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2AuthzDecisionQuery_get_Consent(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+#define LassoSamlp2AuthzDecisionQuery_Consent_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+
+#define LassoSamlp2AuthzDecisionQuery_set_Consent(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+#define LassoSamlp2AuthzDecisionQuery_Consent_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2AuthzDecisionQuery lasso_samlp2_authz_decision_query_new
+#define delete_LassoSamlp2AuthzDecisionQuery(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2AuthzDecisionQuery_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_extensions.i b/swig/saml-2.0/samlp2_extensions.i
new file mode 100644
index 00000000..9b9c887d
--- /dev/null
+++ b/swig/saml-2.0/samlp2_extensions.i
@@ -0,0 +1,32 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2Extensions) LassoSamlp2Extensions;
+#endif
+typedef struct {
+} LassoSamlp2Extensions;
+%extend LassoSamlp2Extensions {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2Extensions();
+ ~LassoSamlp2Extensions();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2Extensions lasso_samlp2_extensions_new
+#define delete_LassoSamlp2Extensions(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2Extensions_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_idp_entry.i b/swig/saml-2.0/samlp2_idp_entry.i
new file mode 100644
index 00000000..b4c9f8ea
--- /dev/null
+++ b/swig/saml-2.0/samlp2_idp_entry.i
@@ -0,0 +1,35 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2IDPEntry) LassoSamlp2IDPEntry;
+#endif
+typedef struct {
+ char *ProviderID;
+ char *Name;
+ char *Loc;
+} LassoSamlp2IDPEntry;
+%extend LassoSamlp2IDPEntry {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2IDPEntry();
+ ~LassoSamlp2IDPEntry();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2IDPEntry lasso_samlp2_idp_entry_new
+#define delete_LassoSamlp2IDPEntry(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2IDPEntry_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_idp_list.i b/swig/saml-2.0/samlp2_idp_list.i
new file mode 100644
index 00000000..f7b3260a
--- /dev/null
+++ b/swig/saml-2.0/samlp2_idp_list.i
@@ -0,0 +1,47 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2IDPList) LassoSamlp2IDPList;
+#endif
+typedef struct {
+ char *GetComplete;
+} LassoSamlp2IDPList;
+%extend LassoSamlp2IDPList {
+
+#ifndef SWIGPHP4
+ %rename(iDPEntry) IDPEntry;
+#endif
+ %newobject *IDPEntry_get;
+ LassoSamlp2IDPEntry *IDPEntry;
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2IDPList();
+ ~LassoSamlp2IDPList();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* IDPEntry */
+
+#define LassoSamlp2IDPList_get_IDPEntry(self) get_node((self)->IDPEntry)
+#define LassoSamlp2IDPList_IDPEntry_get(self) get_node((self)->IDPEntry)
+#define LassoSamlp2IDPList_set_IDPEntry(self,value) set_node((gpointer*)&(self)->IDPEntry, (value))
+#define LassoSamlp2IDPList_IDPEntry_set(self,value) set_node((gpointer*)&(self)->IDPEntry, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2IDPList lasso_samlp2_idp_list_new
+#define delete_LassoSamlp2IDPList(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2IDPList_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_logout_request.i b/swig/saml-2.0/samlp2_logout_request.i
new file mode 100644
index 00000000..53916300
--- /dev/null
+++ b/swig/saml-2.0/samlp2_logout_request.i
@@ -0,0 +1,168 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2LogoutRequest) LassoSamlp2LogoutRequest;
+#endif
+typedef struct {
+ char *SessionIndex;
+ char *Reason;
+ char *NotOnOrAfter;
+} LassoSamlp2LogoutRequest;
+%extend LassoSamlp2LogoutRequest {
+
+#ifndef SWIGPHP4
+ %rename(baseID) BaseID;
+#endif
+ %newobject *BaseID_get;
+ LassoSaml2BaseIDAbstract *BaseID;
+
+#ifndef SWIGPHP4
+ %rename(nameID) NameID;
+#endif
+ %newobject *NameID_get;
+ LassoSaml2NameID *NameID;
+
+#ifndef SWIGPHP4
+ %rename(encryptedID) EncryptedID;
+#endif
+ %newobject *EncryptedID_get;
+ LassoSaml2EncryptedElement *EncryptedID;
+
+ /* inherited from Samlp2RequestAbstract */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2LogoutRequest();
+ ~LassoSamlp2LogoutRequest();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* BaseID */
+
+#define LassoSamlp2LogoutRequest_get_BaseID(self) get_node((self)->BaseID)
+#define LassoSamlp2LogoutRequest_BaseID_get(self) get_node((self)->BaseID)
+#define LassoSamlp2LogoutRequest_set_BaseID(self,value) set_node((gpointer*)&(self)->BaseID, (value))
+#define LassoSamlp2LogoutRequest_BaseID_set(self,value) set_node((gpointer*)&(self)->BaseID, (value))
+
+
+/* NameID */
+
+#define LassoSamlp2LogoutRequest_get_NameID(self) get_node((self)->NameID)
+#define LassoSamlp2LogoutRequest_NameID_get(self) get_node((self)->NameID)
+#define LassoSamlp2LogoutRequest_set_NameID(self,value) set_node((gpointer*)&(self)->NameID, (value))
+#define LassoSamlp2LogoutRequest_NameID_set(self,value) set_node((gpointer*)&(self)->NameID, (value))
+
+
+/* EncryptedID */
+
+#define LassoSamlp2LogoutRequest_get_EncryptedID(self) get_node((self)->EncryptedID)
+#define LassoSamlp2LogoutRequest_EncryptedID_get(self) get_node((self)->EncryptedID)
+#define LassoSamlp2LogoutRequest_set_EncryptedID(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+#define LassoSamlp2LogoutRequest_EncryptedID_set(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+
+
+/* inherited from RequestAbstract */
+
+/* Issuer */
+
+#define LassoSamlp2LogoutRequest_get_Issuer(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2LogoutRequest_Issuer_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2LogoutRequest_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+#define LassoSamlp2LogoutRequest_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2LogoutRequest_get_Extensions(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2LogoutRequest_Extensions_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2LogoutRequest_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+#define LassoSamlp2LogoutRequest_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+
+
+/* ID */
+
+#define LassoSamlp2LogoutRequest_get_ID(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+#define LassoSamlp2LogoutRequest_ID_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+
+#define LassoSamlp2LogoutRequest_set_ID(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+#define LassoSamlp2LogoutRequest_ID_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+
+/* Version */
+
+#define LassoSamlp2LogoutRequest_get_Version(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+#define LassoSamlp2LogoutRequest_Version_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+
+#define LassoSamlp2LogoutRequest_set_Version(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+#define LassoSamlp2LogoutRequest_Version_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2LogoutRequest_get_IssueInstant(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+#define LassoSamlp2LogoutRequest_IssueInstant_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+
+#define LassoSamlp2LogoutRequest_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+#define LassoSamlp2LogoutRequest_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2LogoutRequest_get_Destination(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+#define LassoSamlp2LogoutRequest_Destination_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+
+#define LassoSamlp2LogoutRequest_set_Destination(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+#define LassoSamlp2LogoutRequest_Destination_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2LogoutRequest_get_Consent(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+#define LassoSamlp2LogoutRequest_Consent_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+
+#define LassoSamlp2LogoutRequest_set_Consent(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+#define LassoSamlp2LogoutRequest_Consent_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2LogoutRequest lasso_samlp2_logout_request_new
+#define delete_LassoSamlp2LogoutRequest(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2LogoutRequest_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_manage_name_id_request.i b/swig/saml-2.0/samlp2_manage_name_id_request.i
new file mode 100644
index 00000000..5832508c
--- /dev/null
+++ b/swig/saml-2.0/samlp2_manage_name_id_request.i
@@ -0,0 +1,180 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2ManageNameIDRequest) LassoSamlp2ManageNameIDRequest;
+#endif
+typedef struct {
+ char *NewID;
+} LassoSamlp2ManageNameIDRequest;
+%extend LassoSamlp2ManageNameIDRequest {
+
+#ifndef SWIGPHP4
+ %rename(nameID) NameID;
+#endif
+ %newobject *NameID_get;
+ LassoSaml2NameID *NameID;
+
+#ifndef SWIGPHP4
+ %rename(encryptedID) EncryptedID;
+#endif
+ %newobject *EncryptedID_get;
+ LassoSaml2EncryptedElement *EncryptedID;
+
+#ifndef SWIGPHP4
+ %rename(newEncryptedID) NewEncryptedID;
+#endif
+ %newobject *NewEncryptedID_get;
+ LassoSaml2EncryptedElement *NewEncryptedID;
+
+#ifndef SWIGPHP4
+ %rename(terminate) Terminate;
+#endif
+ %newobject *Terminate_get;
+ LassoSamlp2Terminate *Terminate;
+
+ /* inherited from Samlp2RequestAbstract */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2ManageNameIDRequest();
+ ~LassoSamlp2ManageNameIDRequest();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* NameID */
+
+#define LassoSamlp2ManageNameIDRequest_get_NameID(self) get_node((self)->NameID)
+#define LassoSamlp2ManageNameIDRequest_NameID_get(self) get_node((self)->NameID)
+#define LassoSamlp2ManageNameIDRequest_set_NameID(self,value) set_node((gpointer*)&(self)->NameID, (value))
+#define LassoSamlp2ManageNameIDRequest_NameID_set(self,value) set_node((gpointer*)&(self)->NameID, (value))
+
+
+/* EncryptedID */
+
+#define LassoSamlp2ManageNameIDRequest_get_EncryptedID(self) get_node((self)->EncryptedID)
+#define LassoSamlp2ManageNameIDRequest_EncryptedID_get(self) get_node((self)->EncryptedID)
+#define LassoSamlp2ManageNameIDRequest_set_EncryptedID(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+#define LassoSamlp2ManageNameIDRequest_EncryptedID_set(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+
+
+/* NewEncryptedID */
+
+#define LassoSamlp2ManageNameIDRequest_get_NewEncryptedID(self) get_node((self)->NewEncryptedID)
+#define LassoSamlp2ManageNameIDRequest_NewEncryptedID_get(self) get_node((self)->NewEncryptedID)
+#define LassoSamlp2ManageNameIDRequest_set_NewEncryptedID(self,value) set_node((gpointer*)&(self)->NewEncryptedID, (value))
+#define LassoSamlp2ManageNameIDRequest_NewEncryptedID_set(self,value) set_node((gpointer*)&(self)->NewEncryptedID, (value))
+
+
+/* Terminate */
+
+#define LassoSamlp2ManageNameIDRequest_get_Terminate(self) get_node((self)->Terminate)
+#define LassoSamlp2ManageNameIDRequest_Terminate_get(self) get_node((self)->Terminate)
+#define LassoSamlp2ManageNameIDRequest_set_Terminate(self,value) set_node((gpointer*)&(self)->Terminate, (value))
+#define LassoSamlp2ManageNameIDRequest_Terminate_set(self,value) set_node((gpointer*)&(self)->Terminate, (value))
+
+
+/* inherited from RequestAbstract */
+
+/* Issuer */
+
+#define LassoSamlp2ManageNameIDRequest_get_Issuer(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2ManageNameIDRequest_Issuer_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2ManageNameIDRequest_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+#define LassoSamlp2ManageNameIDRequest_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2ManageNameIDRequest_get_Extensions(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2ManageNameIDRequest_Extensions_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2ManageNameIDRequest_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+#define LassoSamlp2ManageNameIDRequest_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+
+
+/* ID */
+
+#define LassoSamlp2ManageNameIDRequest_get_ID(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+#define LassoSamlp2ManageNameIDRequest_ID_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+
+#define LassoSamlp2ManageNameIDRequest_set_ID(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+#define LassoSamlp2ManageNameIDRequest_ID_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+
+/* Version */
+
+#define LassoSamlp2ManageNameIDRequest_get_Version(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+#define LassoSamlp2ManageNameIDRequest_Version_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+
+#define LassoSamlp2ManageNameIDRequest_set_Version(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+#define LassoSamlp2ManageNameIDRequest_Version_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2ManageNameIDRequest_get_IssueInstant(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+#define LassoSamlp2ManageNameIDRequest_IssueInstant_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+
+#define LassoSamlp2ManageNameIDRequest_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+#define LassoSamlp2ManageNameIDRequest_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2ManageNameIDRequest_get_Destination(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+#define LassoSamlp2ManageNameIDRequest_Destination_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+
+#define LassoSamlp2ManageNameIDRequest_set_Destination(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+#define LassoSamlp2ManageNameIDRequest_Destination_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2ManageNameIDRequest_get_Consent(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+#define LassoSamlp2ManageNameIDRequest_Consent_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+
+#define LassoSamlp2ManageNameIDRequest_set_Consent(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+#define LassoSamlp2ManageNameIDRequest_Consent_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2ManageNameIDRequest lasso_samlp2_manage_name_id_request_new
+#define delete_LassoSamlp2ManageNameIDRequest(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2ManageNameIDRequest_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_name_id_mapping_request.i b/swig/saml-2.0/samlp2_name_id_mapping_request.i
new file mode 100644
index 00000000..9bcfa686
--- /dev/null
+++ b/swig/saml-2.0/samlp2_name_id_mapping_request.i
@@ -0,0 +1,179 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2NameIDMappingRequest) LassoSamlp2NameIDMappingRequest;
+#endif
+typedef struct {
+} LassoSamlp2NameIDMappingRequest;
+%extend LassoSamlp2NameIDMappingRequest {
+
+#ifndef SWIGPHP4
+ %rename(baseID) BaseID;
+#endif
+ %newobject *BaseID_get;
+ LassoSaml2BaseIDAbstract *BaseID;
+
+#ifndef SWIGPHP4
+ %rename(nameID) NameID;
+#endif
+ %newobject *NameID_get;
+ LassoSaml2NameID *NameID;
+
+#ifndef SWIGPHP4
+ %rename(encryptedID) EncryptedID;
+#endif
+ %newobject *EncryptedID_get;
+ LassoSaml2EncryptedElement *EncryptedID;
+
+#ifndef SWIGPHP4
+ %rename(nameIDPolicy) NameIDPolicy;
+#endif
+ %newobject *NameIDPolicy_get;
+ LassoSamlp2NameIDPolicy *NameIDPolicy;
+
+ /* inherited from Samlp2RequestAbstract */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2NameIDMappingRequest();
+ ~LassoSamlp2NameIDMappingRequest();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* BaseID */
+
+#define LassoSamlp2NameIDMappingRequest_get_BaseID(self) get_node((self)->BaseID)
+#define LassoSamlp2NameIDMappingRequest_BaseID_get(self) get_node((self)->BaseID)
+#define LassoSamlp2NameIDMappingRequest_set_BaseID(self,value) set_node((gpointer*)&(self)->BaseID, (value))
+#define LassoSamlp2NameIDMappingRequest_BaseID_set(self,value) set_node((gpointer*)&(self)->BaseID, (value))
+
+
+/* NameID */
+
+#define LassoSamlp2NameIDMappingRequest_get_NameID(self) get_node((self)->NameID)
+#define LassoSamlp2NameIDMappingRequest_NameID_get(self) get_node((self)->NameID)
+#define LassoSamlp2NameIDMappingRequest_set_NameID(self,value) set_node((gpointer*)&(self)->NameID, (value))
+#define LassoSamlp2NameIDMappingRequest_NameID_set(self,value) set_node((gpointer*)&(self)->NameID, (value))
+
+
+/* EncryptedID */
+
+#define LassoSamlp2NameIDMappingRequest_get_EncryptedID(self) get_node((self)->EncryptedID)
+#define LassoSamlp2NameIDMappingRequest_EncryptedID_get(self) get_node((self)->EncryptedID)
+#define LassoSamlp2NameIDMappingRequest_set_EncryptedID(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+#define LassoSamlp2NameIDMappingRequest_EncryptedID_set(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+
+
+/* NameIDPolicy */
+
+#define LassoSamlp2NameIDMappingRequest_get_NameIDPolicy(self) get_node((self)->NameIDPolicy)
+#define LassoSamlp2NameIDMappingRequest_NameIDPolicy_get(self) get_node((self)->NameIDPolicy)
+#define LassoSamlp2NameIDMappingRequest_set_NameIDPolicy(self,value) set_node((gpointer*)&(self)->NameIDPolicy, (value))
+#define LassoSamlp2NameIDMappingRequest_NameIDPolicy_set(self,value) set_node((gpointer*)&(self)->NameIDPolicy, (value))
+
+
+/* inherited from RequestAbstract */
+
+/* Issuer */
+
+#define LassoSamlp2NameIDMappingRequest_get_Issuer(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2NameIDMappingRequest_Issuer_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2NameIDMappingRequest_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+#define LassoSamlp2NameIDMappingRequest_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2NameIDMappingRequest_get_Extensions(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2NameIDMappingRequest_Extensions_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2NameIDMappingRequest_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+#define LassoSamlp2NameIDMappingRequest_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+
+
+/* ID */
+
+#define LassoSamlp2NameIDMappingRequest_get_ID(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+#define LassoSamlp2NameIDMappingRequest_ID_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+
+#define LassoSamlp2NameIDMappingRequest_set_ID(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+#define LassoSamlp2NameIDMappingRequest_ID_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+
+/* Version */
+
+#define LassoSamlp2NameIDMappingRequest_get_Version(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+#define LassoSamlp2NameIDMappingRequest_Version_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+
+#define LassoSamlp2NameIDMappingRequest_set_Version(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+#define LassoSamlp2NameIDMappingRequest_Version_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2NameIDMappingRequest_get_IssueInstant(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+#define LassoSamlp2NameIDMappingRequest_IssueInstant_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+
+#define LassoSamlp2NameIDMappingRequest_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+#define LassoSamlp2NameIDMappingRequest_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2NameIDMappingRequest_get_Destination(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+#define LassoSamlp2NameIDMappingRequest_Destination_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+
+#define LassoSamlp2NameIDMappingRequest_set_Destination(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+#define LassoSamlp2NameIDMappingRequest_Destination_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2NameIDMappingRequest_get_Consent(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+#define LassoSamlp2NameIDMappingRequest_Consent_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+
+#define LassoSamlp2NameIDMappingRequest_set_Consent(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+#define LassoSamlp2NameIDMappingRequest_Consent_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2NameIDMappingRequest lasso_samlp2_name_id_mapping_request_new
+#define delete_LassoSamlp2NameIDMappingRequest(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2NameIDMappingRequest_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_name_id_mapping_response.i b/swig/saml-2.0/samlp2_name_id_mapping_response.i
new file mode 100644
index 00000000..96999068
--- /dev/null
+++ b/swig/saml-2.0/samlp2_name_id_mapping_response.i
@@ -0,0 +1,177 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2NameIDMappingResponse) LassoSamlp2NameIDMappingResponse;
+#endif
+typedef struct {
+} LassoSamlp2NameIDMappingResponse;
+%extend LassoSamlp2NameIDMappingResponse {
+
+#ifndef SWIGPHP4
+ %rename(nameID) NameID;
+#endif
+ %newobject *NameID_get;
+ LassoSaml2NameID *NameID;
+
+#ifndef SWIGPHP4
+ %rename(encryptedID) EncryptedID;
+#endif
+ %newobject *EncryptedID_get;
+ LassoSaml2EncryptedElement *EncryptedID;
+
+ /* inherited from Samlp2StatusResponse */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(status) *Status;
+#endif
+ %newobject *Status_get;
+ LassoSamlp2Status *Status;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(inResponseTo) *InResponseTo;
+#endif
+ char *InResponseTo;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2NameIDMappingResponse();
+ ~LassoSamlp2NameIDMappingResponse();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* NameID */
+
+#define LassoSamlp2NameIDMappingResponse_get_NameID(self) get_node((self)->NameID)
+#define LassoSamlp2NameIDMappingResponse_NameID_get(self) get_node((self)->NameID)
+#define LassoSamlp2NameIDMappingResponse_set_NameID(self,value) set_node((gpointer*)&(self)->NameID, (value))
+#define LassoSamlp2NameIDMappingResponse_NameID_set(self,value) set_node((gpointer*)&(self)->NameID, (value))
+
+
+/* EncryptedID */
+
+#define LassoSamlp2NameIDMappingResponse_get_EncryptedID(self) get_node((self)->EncryptedID)
+#define LassoSamlp2NameIDMappingResponse_EncryptedID_get(self) get_node((self)->EncryptedID)
+#define LassoSamlp2NameIDMappingResponse_set_EncryptedID(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+#define LassoSamlp2NameIDMappingResponse_EncryptedID_set(self,value) set_node((gpointer*)&(self)->EncryptedID, (value))
+
+
+/* inherited from StatusResponse */
+
+/* Issuer */
+
+#define LassoSamlp2NameIDMappingResponse_get_Issuer(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer)
+#define LassoSamlp2NameIDMappingResponse_Issuer_get(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer)
+#define LassoSamlp2NameIDMappingResponse_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer, (value))
+#define LassoSamlp2NameIDMappingResponse_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2NameIDMappingResponse_get_Extensions(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions)
+#define LassoSamlp2NameIDMappingResponse_Extensions_get(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions)
+#define LassoSamlp2NameIDMappingResponse_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions, (value))
+#define LassoSamlp2NameIDMappingResponse_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions, (value))
+
+
+/* Status */
+
+#define LassoSamlp2NameIDMappingResponse_get_Status(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Status)
+#define LassoSamlp2NameIDMappingResponse_Status_get(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Status)
+#define LassoSamlp2NameIDMappingResponse_set_Status(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Status, (value))
+#define LassoSamlp2NameIDMappingResponse_Status_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Status, (value))
+
+
+/* ID */
+
+#define LassoSamlp2NameIDMappingResponse_get_ID(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->ID
+#define LassoSamlp2NameIDMappingResponse_ID_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->ID
+
+#define LassoSamlp2NameIDMappingResponse_set_ID(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->ID, (value))
+#define LassoSamlp2NameIDMappingResponse_ID_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->ID, (value))
+
+/* InResponseTo */
+
+#define LassoSamlp2NameIDMappingResponse_get_InResponseTo(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo
+#define LassoSamlp2NameIDMappingResponse_InResponseTo_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo
+
+#define LassoSamlp2NameIDMappingResponse_set_InResponseTo(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo, (value))
+#define LassoSamlp2NameIDMappingResponse_InResponseTo_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo, (value))
+
+/* Version */
+
+#define LassoSamlp2NameIDMappingResponse_get_Version(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Version
+#define LassoSamlp2NameIDMappingResponse_Version_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Version
+
+#define LassoSamlp2NameIDMappingResponse_set_Version(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Version, (value))
+#define LassoSamlp2NameIDMappingResponse_Version_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2NameIDMappingResponse_get_IssueInstant(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant
+#define LassoSamlp2NameIDMappingResponse_IssueInstant_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant
+
+#define LassoSamlp2NameIDMappingResponse_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant, (value))
+#define LassoSamlp2NameIDMappingResponse_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2NameIDMappingResponse_get_Destination(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination
+#define LassoSamlp2NameIDMappingResponse_Destination_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination
+
+#define LassoSamlp2NameIDMappingResponse_set_Destination(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination, (value))
+#define LassoSamlp2NameIDMappingResponse_Destination_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2NameIDMappingResponse_get_Consent(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent
+#define LassoSamlp2NameIDMappingResponse_Consent_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent
+
+#define LassoSamlp2NameIDMappingResponse_set_Consent(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent, (value))
+#define LassoSamlp2NameIDMappingResponse_Consent_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2NameIDMappingResponse lasso_samlp2_name_id_mapping_response_new
+#define delete_LassoSamlp2NameIDMappingResponse(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2NameIDMappingResponse_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_name_id_policy.i b/swig/saml-2.0/samlp2_name_id_policy.i
new file mode 100644
index 00000000..5f573b4d
--- /dev/null
+++ b/swig/saml-2.0/samlp2_name_id_policy.i
@@ -0,0 +1,38 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2NameIDPolicy) LassoSamlp2NameIDPolicy;
+#endif
+typedef struct {
+ char *Format;
+ char *SPNameQualifier;
+#ifndef SWIGPHP4
+ %rename(allowCreate) AllowCreate;
+#endif
+ gboolean AllowCreate;
+} LassoSamlp2NameIDPolicy;
+%extend LassoSamlp2NameIDPolicy {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2NameIDPolicy();
+ ~LassoSamlp2NameIDPolicy();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2NameIDPolicy lasso_samlp2_name_id_policy_new
+#define delete_LassoSamlp2NameIDPolicy(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2NameIDPolicy_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_request_abstract.i b/swig/saml-2.0/samlp2_request_abstract.i
new file mode 100644
index 00000000..2b4aa582
--- /dev/null
+++ b/swig/saml-2.0/samlp2_request_abstract.i
@@ -0,0 +1,65 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2RequestAbstract) LassoSamlp2RequestAbstract;
+#endif
+typedef struct {
+ char *ID;
+ char *Version;
+ char *IssueInstant;
+ char *Destination;
+ char *Consent;
+} LassoSamlp2RequestAbstract;
+%extend LassoSamlp2RequestAbstract {
+
+#ifndef SWIGPHP4
+ %rename(issuer) Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2RequestAbstract();
+ ~LassoSamlp2RequestAbstract();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* Issuer */
+
+#define LassoSamlp2RequestAbstract_get_Issuer(self) get_node((self)->Issuer)
+#define LassoSamlp2RequestAbstract_Issuer_get(self) get_node((self)->Issuer)
+#define LassoSamlp2RequestAbstract_set_Issuer(self,value) set_node((gpointer*)&(self)->Issuer, (value))
+#define LassoSamlp2RequestAbstract_Issuer_set(self,value) set_node((gpointer*)&(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2RequestAbstract_get_Extensions(self) get_node((self)->Extensions)
+#define LassoSamlp2RequestAbstract_Extensions_get(self) get_node((self)->Extensions)
+#define LassoSamlp2RequestAbstract_set_Extensions(self,value) set_node((gpointer*)&(self)->Extensions, (value))
+#define LassoSamlp2RequestAbstract_Extensions_set(self,value) set_node((gpointer*)&(self)->Extensions, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2RequestAbstract lasso_samlp2_request_abstract_new
+#define delete_LassoSamlp2RequestAbstract(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2RequestAbstract_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_requested_authn_context.i b/swig/saml-2.0/samlp2_requested_authn_context.i
new file mode 100644
index 00000000..6fc3d75d
--- /dev/null
+++ b/swig/saml-2.0/samlp2_requested_authn_context.i
@@ -0,0 +1,35 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2RequestedAuthnContext) LassoSamlp2RequestedAuthnContext;
+#endif
+typedef struct {
+ char *AuthnContextClassRef;
+ char *AuthnContextDeclRef;
+ char *Comparison;
+} LassoSamlp2RequestedAuthnContext;
+%extend LassoSamlp2RequestedAuthnContext {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2RequestedAuthnContext();
+ ~LassoSamlp2RequestedAuthnContext();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2RequestedAuthnContext lasso_samlp2_requested_authn_context_new
+#define delete_LassoSamlp2RequestedAuthnContext(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2RequestedAuthnContext_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_response.i b/swig/saml-2.0/samlp2_response.i
new file mode 100644
index 00000000..81c93156
--- /dev/null
+++ b/swig/saml-2.0/samlp2_response.i
@@ -0,0 +1,149 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2Response) LassoSamlp2Response;
+#endif
+typedef struct {
+} LassoSamlp2Response;
+%extend LassoSamlp2Response {
+
+ /* inherited from Samlp2StatusResponse */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(status) *Status;
+#endif
+ %newobject *Status_get;
+ LassoSamlp2Status *Status;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(inResponseTo) *InResponseTo;
+#endif
+ char *InResponseTo;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2Response();
+ ~LassoSamlp2Response();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* inherited from StatusResponse */
+
+/* Issuer */
+
+#define LassoSamlp2Response_get_Issuer(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer)
+#define LassoSamlp2Response_Issuer_get(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer)
+#define LassoSamlp2Response_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer, (value))
+#define LassoSamlp2Response_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2Response_get_Extensions(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions)
+#define LassoSamlp2Response_Extensions_get(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions)
+#define LassoSamlp2Response_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions, (value))
+#define LassoSamlp2Response_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Extensions, (value))
+
+
+/* Status */
+
+#define LassoSamlp2Response_get_Status(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Status)
+#define LassoSamlp2Response_Status_get(self) get_node(LASSO_SAMLP2_STATUS_RESPONSE(self)->Status)
+#define LassoSamlp2Response_set_Status(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Status, (value))
+#define LassoSamlp2Response_Status_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_STATUS_RESPONSE(self)->Status, (value))
+
+
+/* ID */
+
+#define LassoSamlp2Response_get_ID(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->ID
+#define LassoSamlp2Response_ID_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->ID
+
+#define LassoSamlp2Response_set_ID(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->ID, (value))
+#define LassoSamlp2Response_ID_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->ID, (value))
+
+/* InResponseTo */
+
+#define LassoSamlp2Response_get_InResponseTo(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo
+#define LassoSamlp2Response_InResponseTo_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo
+
+#define LassoSamlp2Response_set_InResponseTo(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo, (value))
+#define LassoSamlp2Response_InResponseTo_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->InResponseTo, (value))
+
+/* Version */
+
+#define LassoSamlp2Response_get_Version(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Version
+#define LassoSamlp2Response_Version_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Version
+
+#define LassoSamlp2Response_set_Version(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Version, (value))
+#define LassoSamlp2Response_Version_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2Response_get_IssueInstant(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant
+#define LassoSamlp2Response_IssueInstant_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant
+
+#define LassoSamlp2Response_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant, (value))
+#define LassoSamlp2Response_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2Response_get_Destination(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination
+#define LassoSamlp2Response_Destination_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination
+
+#define LassoSamlp2Response_set_Destination(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination, (value))
+#define LassoSamlp2Response_Destination_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2Response_get_Consent(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent
+#define LassoSamlp2Response_Consent_get(self) LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent
+
+#define LassoSamlp2Response_set_Consent(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent, (value))
+#define LassoSamlp2Response_Consent_set(self,value) set_string(&LASSO_SAMLP2_STATUS_RESPONSE(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2Response lasso_samlp2_response_new
+#define delete_LassoSamlp2Response(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2Response_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_scoping.i b/swig/saml-2.0/samlp2_scoping.i
new file mode 100644
index 00000000..109a18d4
--- /dev/null
+++ b/swig/saml-2.0/samlp2_scoping.i
@@ -0,0 +1,48 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2Scoping) LassoSamlp2Scoping;
+#endif
+typedef struct {
+ char *RequesterID;
+ char *ProxyCount;
+} LassoSamlp2Scoping;
+%extend LassoSamlp2Scoping {
+
+#ifndef SWIGPHP4
+ %rename(iDPList) IDPList;
+#endif
+ %newobject *IDPList_get;
+ LassoSamlp2IDPList *IDPList;
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2Scoping();
+ ~LassoSamlp2Scoping();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* IDPList */
+
+#define LassoSamlp2Scoping_get_IDPList(self) get_node((self)->IDPList)
+#define LassoSamlp2Scoping_IDPList_get(self) get_node((self)->IDPList)
+#define LassoSamlp2Scoping_set_IDPList(self,value) set_node((gpointer*)&(self)->IDPList, (value))
+#define LassoSamlp2Scoping_IDPList_set(self,value) set_node((gpointer*)&(self)->IDPList, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2Scoping lasso_samlp2_scoping_new
+#define delete_LassoSamlp2Scoping(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2Scoping_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_status.i b/swig/saml-2.0/samlp2_status.i
new file mode 100644
index 00000000..f78f7329
--- /dev/null
+++ b/swig/saml-2.0/samlp2_status.i
@@ -0,0 +1,61 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2Status) LassoSamlp2Status;
+#endif
+typedef struct {
+ char *StatusMessage;
+} LassoSamlp2Status;
+%extend LassoSamlp2Status {
+
+#ifndef SWIGPHP4
+ %rename(statusCode) StatusCode;
+#endif
+ %newobject *StatusCode_get;
+ LassoSamlp2StatusCode *StatusCode;
+
+#ifndef SWIGPHP4
+ %rename(statusDetail) StatusDetail;
+#endif
+ %newobject *StatusDetail_get;
+ LassoSamlp2StatusDetail *StatusDetail;
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2Status();
+ ~LassoSamlp2Status();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* StatusCode */
+
+#define LassoSamlp2Status_get_StatusCode(self) get_node((self)->StatusCode)
+#define LassoSamlp2Status_StatusCode_get(self) get_node((self)->StatusCode)
+#define LassoSamlp2Status_set_StatusCode(self,value) set_node((gpointer*)&(self)->StatusCode, (value))
+#define LassoSamlp2Status_StatusCode_set(self,value) set_node((gpointer*)&(self)->StatusCode, (value))
+
+
+/* StatusDetail */
+
+#define LassoSamlp2Status_get_StatusDetail(self) get_node((self)->StatusDetail)
+#define LassoSamlp2Status_StatusDetail_get(self) get_node((self)->StatusDetail)
+#define LassoSamlp2Status_set_StatusDetail(self,value) set_node((gpointer*)&(self)->StatusDetail, (value))
+#define LassoSamlp2Status_StatusDetail_set(self,value) set_node((gpointer*)&(self)->StatusDetail, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2Status lasso_samlp2_status_new
+#define delete_LassoSamlp2Status(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2Status_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_status_code.i b/swig/saml-2.0/samlp2_status_code.i
new file mode 100644
index 00000000..d6e89205
--- /dev/null
+++ b/swig/saml-2.0/samlp2_status_code.i
@@ -0,0 +1,47 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2StatusCode) LassoSamlp2StatusCode;
+#endif
+typedef struct {
+ char *Value;
+} LassoSamlp2StatusCode;
+%extend LassoSamlp2StatusCode {
+
+#ifndef SWIGPHP4
+ %rename(statusCode) StatusCode;
+#endif
+ %newobject *StatusCode_get;
+ LassoSamlp2StatusCode *StatusCode;
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2StatusCode();
+ ~LassoSamlp2StatusCode();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* StatusCode */
+
+#define LassoSamlp2StatusCode_get_StatusCode(self) get_node((self)->StatusCode)
+#define LassoSamlp2StatusCode_StatusCode_get(self) get_node((self)->StatusCode)
+#define LassoSamlp2StatusCode_set_StatusCode(self,value) set_node((gpointer*)&(self)->StatusCode, (value))
+#define LassoSamlp2StatusCode_StatusCode_set(self,value) set_node((gpointer*)&(self)->StatusCode, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2StatusCode lasso_samlp2_status_code_new
+#define delete_LassoSamlp2StatusCode(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2StatusCode_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_status_detail.i b/swig/saml-2.0/samlp2_status_detail.i
new file mode 100644
index 00000000..05e18847
--- /dev/null
+++ b/swig/saml-2.0/samlp2_status_detail.i
@@ -0,0 +1,32 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2StatusDetail) LassoSamlp2StatusDetail;
+#endif
+typedef struct {
+} LassoSamlp2StatusDetail;
+%extend LassoSamlp2StatusDetail {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2StatusDetail();
+ ~LassoSamlp2StatusDetail();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2StatusDetail lasso_samlp2_status_detail_new
+#define delete_LassoSamlp2StatusDetail(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2StatusDetail_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_status_response.i b/swig/saml-2.0/samlp2_status_response.i
new file mode 100644
index 00000000..8c64aac5
--- /dev/null
+++ b/swig/saml-2.0/samlp2_status_response.i
@@ -0,0 +1,80 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2StatusResponse) LassoSamlp2StatusResponse;
+#endif
+typedef struct {
+ char *ID;
+ char *InResponseTo;
+ char *Version;
+ char *IssueInstant;
+ char *Destination;
+ char *Consent;
+} LassoSamlp2StatusResponse;
+%extend LassoSamlp2StatusResponse {
+
+#ifndef SWIGPHP4
+ %rename(issuer) Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(status) Status;
+#endif
+ %newobject *Status_get;
+ LassoSamlp2Status *Status;
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2StatusResponse();
+ ~LassoSamlp2StatusResponse();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* Issuer */
+
+#define LassoSamlp2StatusResponse_get_Issuer(self) get_node((self)->Issuer)
+#define LassoSamlp2StatusResponse_Issuer_get(self) get_node((self)->Issuer)
+#define LassoSamlp2StatusResponse_set_Issuer(self,value) set_node((gpointer*)&(self)->Issuer, (value))
+#define LassoSamlp2StatusResponse_Issuer_set(self,value) set_node((gpointer*)&(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2StatusResponse_get_Extensions(self) get_node((self)->Extensions)
+#define LassoSamlp2StatusResponse_Extensions_get(self) get_node((self)->Extensions)
+#define LassoSamlp2StatusResponse_set_Extensions(self,value) set_node((gpointer*)&(self)->Extensions, (value))
+#define LassoSamlp2StatusResponse_Extensions_set(self,value) set_node((gpointer*)&(self)->Extensions, (value))
+
+
+/* Status */
+
+#define LassoSamlp2StatusResponse_get_Status(self) get_node((self)->Status)
+#define LassoSamlp2StatusResponse_Status_get(self) get_node((self)->Status)
+#define LassoSamlp2StatusResponse_set_Status(self,value) set_node((gpointer*)&(self)->Status, (value))
+#define LassoSamlp2StatusResponse_Status_set(self,value) set_node((gpointer*)&(self)->Status, (value))
+
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2StatusResponse lasso_samlp2_status_response_new
+#define delete_LassoSamlp2StatusResponse(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2StatusResponse_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_subject_query_abstract.i b/swig/saml-2.0/samlp2_subject_query_abstract.i
new file mode 100644
index 00000000..38da1580
--- /dev/null
+++ b/swig/saml-2.0/samlp2_subject_query_abstract.i
@@ -0,0 +1,137 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2SubjectQueryAbstract) LassoSamlp2SubjectQueryAbstract;
+#endif
+typedef struct {
+} LassoSamlp2SubjectQueryAbstract;
+%extend LassoSamlp2SubjectQueryAbstract {
+
+#ifndef SWIGPHP4
+ %rename(subject) Subject;
+#endif
+ %newobject *Subject_get;
+ LassoSaml2Subject *Subject;
+
+ /* inherited from Samlp2RequestAbstract */
+#ifndef SWIGPHP4
+ %rename(issuer) *Issuer;
+#endif
+ %newobject *Issuer_get;
+ LassoSaml2NameID *Issuer;
+
+#ifndef SWIGPHP4
+ %rename(extensions) *Extensions;
+#endif
+ %newobject *Extensions_get;
+ LassoSamlp2Extensions *Extensions;
+
+#ifndef SWIGPHP4
+ %rename(iD) *ID;
+#endif
+ char *ID;
+#ifndef SWIGPHP4
+ %rename(version) *Version;
+#endif
+ char *Version;
+#ifndef SWIGPHP4
+ %rename(issueInstant) *IssueInstant;
+#endif
+ char *IssueInstant;
+#ifndef SWIGPHP4
+ %rename(destination) *Destination;
+#endif
+ char *Destination;
+#ifndef SWIGPHP4
+ %rename(consent) *Consent;
+#endif
+ char *Consent;
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2SubjectQueryAbstract();
+ ~LassoSamlp2SubjectQueryAbstract();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+/* Subject */
+
+#define LassoSamlp2SubjectQueryAbstract_get_Subject(self) get_node((self)->Subject)
+#define LassoSamlp2SubjectQueryAbstract_Subject_get(self) get_node((self)->Subject)
+#define LassoSamlp2SubjectQueryAbstract_set_Subject(self,value) set_node((gpointer*)&(self)->Subject, (value))
+#define LassoSamlp2SubjectQueryAbstract_Subject_set(self,value) set_node((gpointer*)&(self)->Subject, (value))
+
+
+/* inherited from RequestAbstract */
+
+/* Issuer */
+
+#define LassoSamlp2SubjectQueryAbstract_get_Issuer(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2SubjectQueryAbstract_Issuer_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer)
+#define LassoSamlp2SubjectQueryAbstract_set_Issuer(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+#define LassoSamlp2SubjectQueryAbstract_Issuer_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Issuer, (value))
+
+
+/* Extensions */
+
+#define LassoSamlp2SubjectQueryAbstract_get_Extensions(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2SubjectQueryAbstract_Extensions_get(self) get_node(LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions)
+#define LassoSamlp2SubjectQueryAbstract_set_Extensions(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+#define LassoSamlp2SubjectQueryAbstract_Extensions_set(self,value) set_node((gpointer*)&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Extensions, (value))
+
+
+/* ID */
+
+#define LassoSamlp2SubjectQueryAbstract_get_ID(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+#define LassoSamlp2SubjectQueryAbstract_ID_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID
+
+#define LassoSamlp2SubjectQueryAbstract_set_ID(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+#define LassoSamlp2SubjectQueryAbstract_ID_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->ID, (value))
+
+/* Version */
+
+#define LassoSamlp2SubjectQueryAbstract_get_Version(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+#define LassoSamlp2SubjectQueryAbstract_Version_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version
+
+#define LassoSamlp2SubjectQueryAbstract_set_Version(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+#define LassoSamlp2SubjectQueryAbstract_Version_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Version, (value))
+
+/* IssueInstant */
+
+#define LassoSamlp2SubjectQueryAbstract_get_IssueInstant(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+#define LassoSamlp2SubjectQueryAbstract_IssueInstant_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant
+
+#define LassoSamlp2SubjectQueryAbstract_set_IssueInstant(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+#define LassoSamlp2SubjectQueryAbstract_IssueInstant_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->IssueInstant, (value))
+
+/* Destination */
+
+#define LassoSamlp2SubjectQueryAbstract_get_Destination(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+#define LassoSamlp2SubjectQueryAbstract_Destination_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination
+
+#define LassoSamlp2SubjectQueryAbstract_set_Destination(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+#define LassoSamlp2SubjectQueryAbstract_Destination_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Destination, (value))
+
+/* Consent */
+
+#define LassoSamlp2SubjectQueryAbstract_get_Consent(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+#define LassoSamlp2SubjectQueryAbstract_Consent_get(self) LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent
+
+#define LassoSamlp2SubjectQueryAbstract_set_Consent(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+#define LassoSamlp2SubjectQueryAbstract_Consent_set(self,value) set_string(&LASSO_SAMLP2_REQUEST_ABSTRACT(self)->Consent, (value))
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2SubjectQueryAbstract lasso_samlp2_subject_query_abstract_new
+#define delete_LassoSamlp2SubjectQueryAbstract(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2SubjectQueryAbstract_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+
diff --git a/swig/saml-2.0/samlp2_terminate.i b/swig/saml-2.0/samlp2_terminate.i
new file mode 100644
index 00000000..48228e87
--- /dev/null
+++ b/swig/saml-2.0/samlp2_terminate.i
@@ -0,0 +1,32 @@
+
+#ifndef SWIGPHP4
+%rename(Samlp2Terminate) LassoSamlp2Terminate;
+#endif
+typedef struct {
+} LassoSamlp2Terminate;
+%extend LassoSamlp2Terminate {
+
+
+ /* Constructor, Destructor & Static Methods */
+ LassoSamlp2Terminate();
+ ~LassoSamlp2Terminate();
+
+ /* Method inherited from LassoNode */
+ %newobject dump;
+ char* dump();
+}
+
+%{
+
+
+/* Constructors, destructors & static methods implementations */
+
+#define new_LassoSamlp2Terminate lasso_samlp2_terminate_new
+#define delete_LassoSamlp2Terminate(self) lasso_node_destroy(LASSO_NODE(self))
+
+/* Implementations of methods inherited from LassoNode */
+
+#define LassoSamlp2Terminate_dump(self) lasso_node_dump(LASSO_NODE(self))
+
+%}
+