diff --git a/lib/SimpleSAML/Metadata/SAMLParser.php b/lib/SimpleSAML/Metadata/SAMLParser.php
index 9f3294f310bb5aa8c08277e48877735a88ba0105..7ea454bc7ef415018c8936fc3e6244bea5acc013 100644
--- a/lib/SimpleSAML/Metadata/SAMLParser.php
+++ b/lib/SimpleSAML/Metadata/SAMLParser.php
@@ -609,6 +609,9 @@ class SimpleSAML_Metadata_SAMLParser {
 		$slo = $this->getDefaultEndpoint($spd['singleLogoutServices'], array(self::SAML_20_REDIRECT_BINDING));
 		if($slo !== NULL) {
 			$ret['SingleLogoutService'] = $slo['location'];
+			if (isset($slo['responseLocation']) && $slo['location'] != $slo['responseLocation']) {
+				$ret['SingleLogoutServiceResponse'] = $slo['responseLocation'];
+			}
 		}
 
 
diff --git a/lib/SimpleSAML/XML/SAML20/LogoutResponse.php b/lib/SimpleSAML/XML/SAML20/LogoutResponse.php
index c87ac65c71c0421871dce795a8c80cc9fce75e94..0ce4586c7e5267ade2f3eb307f2803115b59acc1 100644
--- a/lib/SimpleSAML/XML/SAML20/LogoutResponse.php
+++ b/lib/SimpleSAML/XML/SAML20/LogoutResponse.php
@@ -3,7 +3,7 @@
 /**
  * Implementation of the SAML 2.0 LogoutResponse message.
  *
- * @author Andreas Ĺkre Solberg, UNINETT AS. <andreas.solberg@uninett.no>
+ * @author Andreas Ă…kre Solberg, UNINETT AS. <andreas.solberg@uninett.no>
  * @package simpleSAMLphp
  * @version $Id$
  */
@@ -117,6 +117,9 @@ class SimpleSAML_XML_SAML20_LogoutResponse {
 		$issueInstant = SimpleSAML_Utilities::generateTimestamp();
 
 		$destination = $receivermd['SingleLogoutService'];
+		if (isset($receivermd['SingleLogoutServiceResponse'])) {
+			$destination = $receivermd['SingleLogoutServiceResponse'];
+		}
 		
 		$samlResponse = '<samlp:LogoutResponse 
     xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
diff --git a/www/saml2/idp/SingleLogoutService.php b/www/saml2/idp/SingleLogoutService.php
index 04809ac7b2634a08cc4d74476f7361e604f57cbd..e717ea62e51af68aa301c43234c85cd96b842c23 100644
--- a/www/saml2/idp/SingleLogoutService.php
+++ b/www/saml2/idp/SingleLogoutService.php
@@ -358,7 +358,7 @@ try {
 		$relayState = isset($logoutInfo['RelayState']) ? $logoutInfo['RelayState'] : null;
 	
 		// Parameters: $request, $remoteentityid, $relayState = null, $endpoint = 'SingleLogoutService', $direction = 'SAMLRequest', $mode = 'SP'
-		$httpredirect->sendMessage($logoutResponseXML, $idpentityid, $logoutInfo['Issuer'], $relayState, 'SingleLogoutService', 'SAMLResponse', 'IdP');
+		$httpredirect->sendMessage($logoutResponseXML, $idpentityid, $logoutInfo['Issuer'], $relayState, 'SingleLogoutServiceResponse', 'SAMLResponse', 'IdP');
 		exit;
 		
 	} elseif (array_key_exists('RelayState', $logoutInfo)) {