Add statusCodes to no IdP error.
authorcantor <cantor@cb58f699-b61c-0410-a6fe-9272a202ed29>
Sun, 21 Oct 2007 19:32:00 +0000 (19:32 +0000)
committercantor <cantor@cb58f699-b61c-0410-a6fe-9272a202ed29>
Sun, 21 Oct 2007 19:32:00 +0000 (19:32 +0000)
git-svn-id: https://svn.middleware.georgetown.edu/cpp-sp/trunk@2545 cb58f699-b61c-0410-a6fe-9272a202ed29

shibsp/handler/impl/SAMLDSSessionInitiator.cpp

index 3d95f22..ddbcd6b 100644 (file)
@@ -89,8 +89,12 @@ pair<bool,long> SAMLDSSessionInitiator::run(SPRequest& request, const char* enti
 
     if (isHandler) {
         option = request.getParameter("SAMLDS");
-        if (option && !strcmp(option,"1"))
-            throw saml2md::MetadataException("No identity provider was selected by user.");
+        if (option && !strcmp(option,"1")) {
+            saml2md::MetadataException ex("No identity provider was selected by user.");
+            ex.addProperty("statusCode", "urn:oasis:names:tc:SAML:2.0:status:Requester");
+            ex.addProperty("statusCode2", "urn:oasis:names:tc:SAML:2.0:status:NoAvailableIDP");
+            ex.raise();
+        }
         
         option = request.getParameter("target");
         if (option)