summaryrefslogtreecommitdiffstats
path: root/lasso/Attic
diff options
context:
space:
mode:
authorNicolas Clapies <nclapies@entrouvert.com>2004-08-23 14:05:20 +0000
committerNicolas Clapies <nclapies@entrouvert.com>2004-08-23 14:05:20 +0000
commit4fb5358591677388e15c62ef3b428bae62317afe (patch)
treed8a8c0df2a464d5e03e2933a889714fc6f535939 /lasso/Attic
parenteea33a45c765cba6a2ae50b871012fa157416da0 (diff)
downloadlasso-4fb5358591677388e15c62ef3b428bae62317afe.tar.gz
lasso-4fb5358591677388e15c62ef3b428bae62317afe.tar.xz
lasso-4fb5358591677388e15c62ef3b428bae62317afe.zip
added support of URI identifier in signature
Diffstat (limited to 'lasso/Attic')
-rw-r--r--lasso/Attic/protocols/authn_request.c3
-rw-r--r--lasso/Attic/protocols/logout_request.c22
-rw-r--r--lasso/Attic/protocols/logout_request.h10
-rw-r--r--lasso/Attic/protocols/logout_response.c64
-rw-r--r--lasso/Attic/protocols/logout_response.h16
-rw-r--r--lasso/Attic/protocols/request.c3
6 files changed, 73 insertions, 45 deletions
diff --git a/lasso/Attic/protocols/authn_request.c b/lasso/Attic/protocols/authn_request.c
index 01e28969..93eccaee 100644
--- a/lasso/Attic/protocols/authn_request.c
+++ b/lasso/Attic/protocols/authn_request.c
@@ -181,7 +181,8 @@ lasso_authn_request_new(const xmlChar *providerID,
if (sign_type != lassoSignatureTypeNone) {
lasso_samlp_request_abstract_set_signature_tmpl(LASSO_SAMLP_REQUEST_ABSTRACT(request),
sign_type,
- sign_method);
+ sign_method,
+ id);
}
/* ProviderID */
lasso_lib_authn_request_set_providerID(LASSO_LIB_AUTHN_REQUEST(request),
diff --git a/lasso/Attic/protocols/logout_request.c b/lasso/Attic/protocols/logout_request.c
index 14dc13b7..ef1af151 100644
--- a/lasso/Attic/protocols/logout_request.c
+++ b/lasso/Attic/protocols/logout_request.c
@@ -69,10 +69,12 @@ GType lasso_logout_request_get_type() {
}
LassoNode *
-lasso_logout_request_new(gchar *providerID,
- gchar *nameIdentifier,
- gchar *nameQualifier,
- gchar *format)
+lasso_logout_request_new(gchar *providerID,
+ gchar *nameIdentifier,
+ gchar *nameQualifier,
+ gchar *format,
+ lassoSignatureType sign_type,
+ lassoSignatureMethod sign_method)
{
LassoNode *request, *identifier;
xmlChar *id, *time;
@@ -83,7 +85,6 @@ lasso_logout_request_new(gchar *providerID,
id = lasso_build_unique_id(32);
lasso_samlp_request_abstract_set_requestID(LASSO_SAMLP_REQUEST_ABSTRACT(request),
(const xmlChar *)id);
- xmlFree(id);
/* MajorVersion */
lasso_samlp_request_abstract_set_majorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(request),
lassoLibMajorVersion);
@@ -95,6 +96,17 @@ lasso_logout_request_new(gchar *providerID,
lasso_samlp_request_abstract_set_issueInstant(LASSO_SAMLP_REQUEST_ABSTRACT(request),
(const xmlChar *)time);
xmlFree(time);
+
+ /* set the signature template */
+ if (sign_type != lassoSignatureTypeNone) {
+ lasso_samlp_request_abstract_set_signature_tmpl(LASSO_SAMLP_REQUEST_ABSTRACT(request),
+ sign_type,
+ sign_method,
+ id);
+ }
+
+ xmlFree(id);
+
/* ProviderID */
lasso_lib_logout_request_set_providerID(LASSO_LIB_LOGOUT_REQUEST(request),
providerID);
diff --git a/lasso/Attic/protocols/logout_request.h b/lasso/Attic/protocols/logout_request.h
index a54378aa..dea4261d 100644
--- a/lasso/Attic/protocols/logout_request.h
+++ b/lasso/Attic/protocols/logout_request.h
@@ -54,10 +54,12 @@ struct _LassoLogoutRequestClass {
LASSO_EXPORT GType lasso_logout_request_get_type (void);
-LASSO_EXPORT LassoNode* lasso_logout_request_new (gchar *providerID,
- gchar *nameIdentifier,
- gchar *nameQualifier,
- gchar *format);
+LASSO_EXPORT LassoNode* lasso_logout_request_new (gchar *providerID,
+ gchar *nameIdentifier,
+ gchar *nameQualifier,
+ gchar *format,
+ lassoSignatureType sign_type,
+ lassoSignatureMethod sign_method);
LASSO_EXPORT LassoNode* lasso_logout_request_new_from_export (gchar *buffer,
lassoNodeExportType export_type);
diff --git a/lasso/Attic/protocols/logout_response.c b/lasso/Attic/protocols/logout_response.c
index 6921daa6..b0dc822a 100644
--- a/lasso/Attic/protocols/logout_response.c
+++ b/lasso/Attic/protocols/logout_response.c
@@ -94,9 +94,11 @@ GType lasso_logout_response_get_type() {
}
LassoNode*
-lasso_logout_response_new(gchar *providerID,
- const gchar *statusCodeValue,
- LassoNode *request)
+lasso_logout_response_new(gchar *providerID,
+ const gchar *statusCodeValue,
+ LassoNode *request,
+ lassoSignatureType sign_type,
+ lassoSignatureMethod sign_method)
{
LassoNode *response, *ss, *ssc;
xmlChar *inResponseTo, *request_providerID, *request_relayState;
@@ -121,6 +123,14 @@ lasso_logout_response_new(gchar *providerID,
lasso_samlp_response_abstract_set_issueInstant(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
(const xmlChar *)time);
xmlFree(time);
+
+ /* set the signature template */
+ if (sign_type != lassoSignatureTypeNone) {
+ lasso_samlp_response_abstract_set_signature_tmpl(LASSO_SAMLP_RESPONSE_ABSTRACT(request),
+ sign_type,
+ sign_method);
+ }
+
/* ProviderID */
lasso_lib_status_response_set_providerID(LASSO_LIB_STATUS_RESPONSE(response),
providerID);
@@ -216,34 +226,34 @@ lasso_logout_response_new_from_query(gchar *query)
return(response);
}
-LassoNode *
-lasso_logout_response_new_from_request_export(gchar *buffer,
- lassoNodeExportType export_type,
- gchar *providerID,
- gchar *statusCodeValue)
-{
- LassoNode *request, *response;
+/* LassoNode * */
+/* lasso_logout_response_new_from_request_export(gchar *buffer, */
+/* lassoNodeExportType export_type, */
+/* gchar *providerID, */
+/* gchar *statusCodeValue) */
+/* { */
+/* LassoNode *request, *response; */
- g_return_val_if_fail(buffer != NULL, NULL);
+/* g_return_val_if_fail(buffer != NULL, NULL); */
- switch(export_type){
- case lassoNodeExportTypeQuery:
- request = lasso_logout_request_new_from_export(buffer, export_type);
- break;
- case lassoNodeExportTypeSoap:
- request = lasso_logout_request_new_from_export(buffer, export_type);
- break;
- default:
- message(G_LOG_LEVEL_WARNING, "Invalid export type\n");
- return(NULL);
- }
+/* switch(export_type){ */
+/* case lassoNodeExportTypeQuery: */
+/* request = lasso_logout_request_new_from_export(buffer, export_type); */
+/* break; */
+/* case lassoNodeExportTypeSoap: */
+/* request = lasso_logout_request_new_from_export(buffer, export_type); */
+/* break; */
+/* default: */
+/* message(G_LOG_LEVEL_WARNING, "Invalid export type\n"); */
+/* return(NULL); */
+/* } */
- response = lasso_logout_response_new(providerID,
- statusCodeValue,
- request);
+/* response = lasso_logout_response_new(providerID, */
+/* statusCodeValue, */
+/* request); */
- return(response);
-}
+/* return(response); */
+/* } */
LassoNode *
lasso_logout_response_new_from_soap(gchar *buffer)
diff --git a/lasso/Attic/protocols/logout_response.h b/lasso/Attic/protocols/logout_response.h
index 51e7be9d..d527b73d 100644
--- a/lasso/Attic/protocols/logout_response.h
+++ b/lasso/Attic/protocols/logout_response.h
@@ -55,17 +55,19 @@ struct _LassoLogoutResponseClass {
LASSO_EXPORT GType lasso_logout_response_get_type (void);
-LASSO_EXPORT LassoNode* lasso_logout_response_new (gchar *providerID,
- const gchar *statusCodeValue,
- LassoNode *request);
+LASSO_EXPORT LassoNode* lasso_logout_response_new (gchar *providerID,
+ const gchar *statusCodeValue,
+ LassoNode *request,
+ lassoSignatureType sign_type,
+ lassoSignatureMethod sign_method);
LASSO_EXPORT LassoNode* lasso_logout_response_new_from_export (gchar *buffer,
lassoNodeExportType export_type);
-LASSO_EXPORT LassoNode* lasso_logout_response_new_from_request_export (gchar *buffer,
- lassoNodeExportType export_type,
- gchar *providerID,
- gchar *statusCodeValue);
+/* LASSO_EXPORT LassoNode* lasso_logout_response_new_from_request_export (gchar *buffer, */
+/* lassoNodeExportType export_type, */
+/* gchar *providerID, */
+/* gchar *statusCodeValue); */
#ifdef __cplusplus
}
diff --git a/lasso/Attic/protocols/request.c b/lasso/Attic/protocols/request.c
index 170be949..f0fdf944 100644
--- a/lasso/Attic/protocols/request.c
+++ b/lasso/Attic/protocols/request.c
@@ -101,7 +101,8 @@ lasso_request_new(const xmlChar *assertionArtifact)
FIXME: signature method */
lasso_samlp_request_abstract_set_signature_tmpl(request,
lassoSignatureTypeWithX509,
- lassoSignatureMethodRsaSha1);
+ lassoSignatureMethodRsaSha1,
+ NULL);
/* AssertionArtifact */
lasso_samlp_request_set_assertionArtifact(LASSO_SAMLP_REQUEST(request),