summaryrefslogtreecommitdiffstats
path: root/lasso
diff options
context:
space:
mode:
authorDamien Laniel <dlaniel@entrouvert.com>2007-04-12 12:16:33 +0000
committerDamien Laniel <dlaniel@entrouvert.com>2007-04-12 12:16:33 +0000
commit31f42481c5d9615565a75eb65ccbe4399dde219d (patch)
treee00fccf9a30fb696458c524fcf506447fd00a2d4 /lasso
parentc0a164ac9c41503afa9588b5426e4232c8fb35de (diff)
downloadlasso-31f42481c5d9615565a75eb65ccbe4399dde219d.tar.gz
lasso-31f42481c5d9615565a75eb65ccbe4399dde219d.tar.xz
lasso-31f42481c5d9615565a75eb65ccbe4399dde219d.zip
removed id-wsf 1 soap headers and added wsu_timestamp id-wsf 2.0 element
Diffstat (limited to 'lasso')
-rw-r--r--lasso/Makefile.am3
-rw-r--r--lasso/id-wsf-2.0/wsf2_profile.c25
-rw-r--r--lasso/xml/id-wsf-2.0/disco_endpoint_context.c2
-rw-r--r--lasso/xml/id-wsf-2.0/soap_binding_framework.c2
-rw-r--r--lasso/xml/strings.h9
-rw-r--r--lasso/xml/ws/Makefile.am7
6 files changed, 23 insertions, 25 deletions
diff --git a/lasso/Makefile.am b/lasso/Makefile.am
index 21a637d4..4af72c72 100644
--- a/lasso/Makefile.am
+++ b/lasso/Makefile.am
@@ -40,7 +40,8 @@ if WSF_ENABLED
WSF_LIB_FILE = $(top_builddir)/lasso/id-wsf/liblasso-id-wsf.la
WSF2_LIB_FILES = $(top_builddir)/lasso/id-wsf-2.0/liblasso-id-wsf2.la \
- $(top_builddir)/lasso/xml/id-wsf-2.0/liblasso-xml-id-wsf2.la
+ $(top_builddir)/lasso/xml/id-wsf-2.0/liblasso-xml-id-wsf2.la \
+ $(top_builddir)/lasso/xml/ws/liblasso-xml-ws.la
endif
if MINGW
diff --git a/lasso/id-wsf-2.0/wsf2_profile.c b/lasso/id-wsf-2.0/wsf2_profile.c
index 55edbd03..cd916a82 100644
--- a/lasso/id-wsf-2.0/wsf2_profile.c
+++ b/lasso/id-wsf-2.0/wsf2_profile.c
@@ -60,8 +60,9 @@ lasso_wsf2_profile_build_soap_envelope(const char *refToMessageId, const char *p
LassoSoapEnvelope *envelope;
LassoSoapHeader *header;
LassoSoapBody *body;
+
LassoSoapBindingCorrelation *correlation;
- gchar *messageId, *timestamp;
+ gchar *messageId;
/* Body */
body = lasso_soap_body_new();
@@ -72,21 +73,13 @@ lasso_wsf2_profile_build_soap_envelope(const char *refToMessageId, const char *p
header = lasso_soap_header_new();
envelope->Header = header;
- /* Correlation */
- messageId = lasso_build_unique_id(32);
- timestamp = lasso_get_current_time();
- correlation = lasso_soap_binding_correlation_new(messageId, timestamp);
- correlation->id = lasso_build_unique_id(32);
- if (refToMessageId != NULL)
- correlation->refToMessageID = g_strdup(refToMessageId);
- header->Other = g_list_append(header->Other, correlation);
-
+ /* FIXME : May be integrated later when we implement id-wsf 2.0 soap headers */
/* Provider */
- if (providerId) {
- LassoSoapBindingProvider *provider = lasso_soap_binding_provider_new(providerId);
- provider->id = lasso_build_unique_id(32);
- header->Other = g_list_append(header->Other, provider);
- }
+/* if (providerId) { */
+/* LassoSoapBindingProvider *provider = lasso_soap_binding_provider_new(providerId); */
+/* provider->id = lasso_build_unique_id(32); */
+/* header->Other = g_list_append(header->Other, provider); */
+/* } */
return envelope;
}
@@ -170,8 +163,6 @@ lasso_wsf2_profile_process_soap_request_msg(LassoWsf2Profile *profile, const gch
envelope = LASSO_SOAP_ENVELOPE(lasso_node_new_from_xmlNode(xmlDocGetRootElement(doc)));
profile->request = LASSO_NODE(envelope->Body->any->data);
- correlation = LASSO_SOAP_BINDING_CORRELATION(envelope->Header->Other->data);
- messageId = correlation->messageID;
/* Set soap response */
envelope = lasso_wsf2_profile_build_soap_envelope(messageId,
diff --git a/lasso/xml/id-wsf-2.0/disco_endpoint_context.c b/lasso/xml/id-wsf-2.0/disco_endpoint_context.c
index 5c1ccf3e..2b1d6c77 100644
--- a/lasso/xml/id-wsf-2.0/disco_endpoint_context.c
+++ b/lasso/xml/id-wsf-2.0/disco_endpoint_context.c
@@ -116,7 +116,7 @@ lasso_disco_endpoint_context_new(gchar *address)
context = g_object_new(LASSO_TYPE_DISCO_ENDPOINT_CONTEXT, NULL);
context->Address = g_strdup(address);
- //context->Framework = lasso_soap_binding_framework_new("2.0");
+ context->Framework = lasso_soap_binding_framework_new("2.0");
return context;
}
diff --git a/lasso/xml/id-wsf-2.0/soap_binding_framework.c b/lasso/xml/id-wsf-2.0/soap_binding_framework.c
index f3a4f306..ad0bfbcd 100644
--- a/lasso/xml/id-wsf-2.0/soap_binding_framework.c
+++ b/lasso/xml/id-wsf-2.0/soap_binding_framework.c
@@ -99,7 +99,7 @@ lasso_soap_binding_framework_new(gchar *version)
framework = g_object_new(LASSO_TYPE_SOAP_BINDING_FRAMEWORK, NULL);
- //framework->Version = g_strdup(version);
+ framework->Version = g_strdup(version);
return framework;
}
diff --git a/lasso/xml/strings.h b/lasso/xml/strings.h
index 4e99db45..5bab31f6 100644
--- a/lasso/xml/strings.h
+++ b/lasso/xml/strings.h
@@ -502,7 +502,7 @@
#define LASSO_IDWSF2_SEC_PREFIX "sec"
#define LASSO_IDWSF2_SOAP_BINDING_HREF "urn:liberty:sb:2006-08"
-#define LASSO_IDWSF2_SOAP_BINDING_PREFIX "sb2"
+#define LASSO_IDWSF2_SOAP_BINDING_PREFIX "sb"
/*****************************************************************************/
/* Others */
@@ -512,10 +512,15 @@
#define LASSO_XSI_HREF "http://www.w3.org/2001/XMLSchema-instance"
#define LASSO_XSI_PREFIX "xsi"
-/* WS-Addr */
+/* WS-Addressing */
#define LASSO_WSA_HREF "http://www.w3.org/2005/08/addressing"
#define LASSO_WSA_PREFIX "wsa"
+/* WS-Utility */
+#define LASSO_WSU_HREF \
+ "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
+#define LASSO_WSU_PREFIX "wsu"
+
#define LASSO_SOAP_FAULT_CODE_SERVER "Server"
#endif /* __LASSO_STRINGS_H__ */
diff --git a/lasso/xml/ws/Makefile.am b/lasso/xml/ws/Makefile.am
index e67c0195..bbf89d73 100644
--- a/lasso/xml/ws/Makefile.am
+++ b/lasso/xml/ws/Makefile.am
@@ -17,7 +17,8 @@ liblasso_xml_ws_la_SOURCES = \
wsa_metadata.c \
wsa_problem_action.c \
wsa_reference_parameters.c \
- wsa_relates_to.c
+ wsa_relates_to.c \
+ wsu_timestamp.c
liblassoinclude_HEADERS = \
wsa_attributed_any.h \
@@ -28,5 +29,5 @@ liblassoinclude_HEADERS = \
wsa_metadata.h \
wsa_problem_action.h \
wsa_reference_parameters.h \
- wsa_relates_to.h
-
+ wsa_relates_to.h \
+ wsu_timestamp.h