Fix backslashes in SHIBSP_PREFIX variable by manually creating it during the script...
[shibboleth/sp.git] / apache / mod_apache.cpp
index 11a8106..cbc0dbf 100644 (file)
@@ -500,17 +500,18 @@ public:
     ap_table_add(m_req->err_headers_out, name, value);
   }
   long sendResponse(istream& in, long status) {
+    if (status != XMLTOOLING_HTTP_STATUS_OK)
+        m_req->status = status;
     ap_send_http_header(m_req);
     char buf[1024];
     while (in) {
         in.read(buf,1024);
         ap_rwrite(buf,in.gcount(),m_req);
     }
-    if (status != XMLTOOLING_HTTP_STATUS_OK) {
-        m_req->status = status;
-        if (status != XMLTOOLING_HTTP_STATUS_ERROR)
-            return status;
-    }
+#if (defined(SHIB_APACHE_20) || defined(SHIB_APACHE_22))
+    if (status != XMLTOOLING_HTTP_STATUS_OK && status != XMLTOOLING_HTTP_STATUS_ERROR)
+        return status;
+#endif
     return DONE;
   }
   long sendRedirect(const char* url) {
@@ -695,7 +696,7 @@ public:
     pair<bool,unsigned int> getUnsignedInt(const char* name, const char* ns=NULL) const;
     pair<bool,int> getInt(const char* name, const char* ns=NULL) const;
     void getAll(map<string,const char*>& properties) const;
-    const PropertySet* getPropertySet(const char* name, const char* ns="urn:mace:shibboleth:2.0:native:sp:config") const;
+    const PropertySet* getPropertySet(const char* name, const char* ns=shibspconstants::ASCII_SHIB2SPCONFIG_NS) const;
     const xercesc::DOMElement* getElement() const;
 
 private: