diff options
| author | Frederic Peters <fpeters@entrouvert.com> | 2007-10-03 19:13:03 +0000 |
|---|---|---|
| committer | Frederic Peters <fpeters@entrouvert.com> | 2007-10-03 19:13:03 +0000 |
| commit | 4775254fc889261ef1decad496997336a04efd41 (patch) | |
| tree | c20c87817229df4dac010649fb5c62859a51aef4 | |
| parent | 9ef91300b973c5b16f70d35b0187329d75b4d57f (diff) | |
| download | lasso-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.c | 7 |
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 { |
