Had a naked throw() in get_assertions
authorcantor <cantor@cb58f699-b61c-0410-a6fe-9272a202ed29>
Wed, 12 May 2004 17:26:42 +0000 (17:26 +0000)
committercantor <cantor@cb58f699-b61c-0410-a6fe-9272a202ed29>
Wed, 12 May 2004 17:26:42 +0000 (17:26 +0000)
git-svn-id: https://svn.middleware.georgetown.edu/cpp-sp/trunk@1102 cb58f699-b61c-0410-a6fe-9272a202ed29

shib-target/shibrpc-server.cpp

index 4e38d49..08cb092 100644 (file)
@@ -481,9 +481,12 @@ shibrpc_get_assertions_1_svc(shibrpc_get_assertions_args_1 *argp,
   // Try and locate support metadata for errors we throw.
   log.debug ("application: %s", argp->application_id);
   const IApplication* app=conf->getApplication(argp->application_id);
-  if (!app)
+  if (!app) {
       // Something's horribly wrong. Flush the session.
-      throw ShibTargetException(SHIBRPC_NO_SESSION,"Unable to locate application for session, deleted?");
+      log.error ("couldn't find application for session");
+      set_rpc_status(&result->status, SHIBRPC_NO_SESSION, "Unable to locate application for session, deleted?");
+      return TRUE;
+  }
 
   Metadata m(app->getMetadataProviders());
   const IProvider* origin=m.lookup(entry->getStatement()->getSubject()->getNameIdentifier()->getNameQualifier());