summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrederic Peters <fpeters@entrouvert.com>2007-10-03 19:13:03 +0000
committerFrederic Peters <fpeters@entrouvert.com>2007-10-03 19:13:03 +0000
commit4775254fc889261ef1decad496997336a04efd41 (patch)
treec20c87817229df4dac010649fb5c62859a51aef4
parent9ef91300b973c5b16f70d35b0187329d75b4d57f (diff)
downloadlasso-4775254fc889261ef1decad496997336a04efd41.tar.gz
lasso-4775254fc889261ef1decad496997336a04efd41.tar.xz
lasso-4775254fc889261ef1decad496997336a04efd41.zip
returns SOAP fault with approriate value when need_redirect_user is called
inbetween dataservice modify stuff.
-rw-r--r--lasso/id-wsf/data_service.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/lasso/id-wsf/data_service.c b/lasso/id-wsf/data_service.c
index 26b8ba20..33a91966 100644
--- a/lasso/id-wsf/data_service.c
+++ b/lasso/id-wsf/data_service.c
@@ -692,6 +692,13 @@ lasso_data_service_build_modify_response_msg(LassoDataService *service)
profile = LASSO_WSF_PROFILE(service);
request = LASSO_DST_MODIFY(profile->request);
+ if (service->private_data->fault != NULL) {
+ envelope = profile->soap_envelope_response;
+ envelope->Body->any = g_list_append(
+ envelope->Body->any, service->private_data->fault);
+ return lasso_wsf_profile_build_soap_response_msg(profile);
+ }
+
if (service->resource_data == NULL) {
return LASSO_DST_ERROR_MISSING_SERVICE_DATA;
} else {