diff --git a/modules/saml2/lib/Auth/Source/SP.php b/modules/saml2/lib/Auth/Source/SP.php
deleted file mode 100644
index 503f8183b85f1ff0a9c19432d90b6cd85534f149..0000000000000000000000000000000000000000
--- a/modules/saml2/lib/Auth/Source/SP.php
+++ /dev/null
@@ -1,339 +0,0 @@
-<?php
-
-/**
- * SAML 2.0 SP authentication client.
- *
- * Note: This authentication source is depreceated. You should
- * use saml:sp instead.
- *
- * Example:
- * 'example-openidp' => array(
- *   'saml2:SP',
- *   'idp' => 'https://openidp.feide.no',
- * ),
- *
- * @package simpleSAMLphp
- * @version $Id$
- */
-class sspmod_saml2_Auth_Source_SP extends SimpleSAML_Auth_Source {
-
-	/**
-	 * The identifier for the stage where we have sent a discovery service request.
-	 */
-	const STAGE_DISCO = 'saml2:SP-DiscoSent';
-
-
-	/**
-	 * The identifier for the stage where we have sent a SSO request.
-	 */
-	const STAGE_SENT = 'saml2:SP-SSOSent';
-
-
-	/**
-	 * The string used to identify our logout state.
-	 */
-	const STAGE_LOGOUTSENT = 'saml2:SP-LogoutSent';
-
-
-	/**
-	 * The key of the AuthId field in the state.
-	 */
-	const AUTHID = 'saml2:AuthId';
-
-
-	/**
-	 * The key for the IdP entity id in the logout state.
-	 */
-	const LOGOUT_IDP = 'saml2:SP-Logout-IdP';
-
-	/**
-	 * The key for the NameID in the logout state.
-	 */
-	const LOGOUT_NAMEID = 'saml2:SP-Logout-NameID';
-
-
-	/**
-	 * The key for the SessionIndex in the logout state.
-	 */
-	const LOGOUT_SESSIONINDEX = 'saml2:SP-Logout-SessionIndex';
-
-
-	/**
-	 * The metadata for this SP.
-	 *
-	 * @var SimpleSAML_Configuration
-	 */
-	private $metadata;
-
-
-	/**
-	 * The entity id of this SP.
-	 */
-	private $entityId;
-
-
-	/**
-	 * The entity id of the IdP we connect to.
-	 */
-	private $idp;
-
-
-	/**
-	 * Constructor for SAML 2.0 SP authentication source.
-	 *
-	 * @param array $info  Information about this authentication source.
-	 * @param array $config  Configuration.
-	 */
-	public function __construct($info, $config) {
-		assert('is_array($info)');
-		assert('is_array($config)');
-
-		/* Call the parent constructor first, as required by the interface. */
-		parent::__construct($info, $config);
-
-		/* For compatibility with code that assumes that $metadata->getString('entityid') gives the entity id. */
-		if (array_key_exists('entityId', $config)) {
-			$config['entityid'] = $config['entityId'];
-		} else {
-			$config['entityid'] = SimpleSAML_Module::getModuleURL('saml2/sp/metadata.php?source=' . urlencode($this->authId));
-		}
-
-		/* For backwards-compatibility with configuration in saml20-sp-hosted. */
-		try {
-			$metadataHandler = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
-			$oldMetadata = $metadataHandler->getMetaData($config['entityid'], 'saml20-sp-hosted');
-
-			SimpleSAML_Logger::warning('Depreceated metadata for ' . var_export($config['entityid'], TRUE) .
-				' in saml20-sp-hosted. The metadata in should be moved into authsources.php.');
-
-			$config = array_merge($oldMetadata, $config);
-		} catch (Exception $e) {};
-
-		$this->metadata = SimpleSAML_Configuration::loadFromArray($config, 'authsources[' . var_export($this->authId, TRUE) . ']');
-
-		$this->entityId = $this->metadata->getString('entityid');
-		$this->idp = $this->metadata->getString('idp', NULL);
-	}
-
-
-	/**
-	 * Start login.
-	 *
-	 * This function saves the information about the login, and redirects to  the IdP.
-	 *
-	 * @param array &$state  Information about the current authentication.
-	 */
-	public function authenticate(&$state) {
-		assert('is_array($state)');
-
-		/* We are going to need the authId in order to retrieve this authentication source later. */
-		$state[self::AUTHID] = $this->authId;
-
-		if ($this->idp === NULL) {
-			$this->initDisco($state);
-		}
-
-		$this->initSSO($this->idp, $state);
-	}
-
-
-	/**
-	 * Send authentication request to specified IdP.
-	 *
-	 * @param string $idp  The IdP we should send the request to.
-	 * @param array $state  Our state array.
-	 */
-	public function initDisco($state) {
-		assert('is_array($state)');
-
-		$id = SimpleSAML_Auth_State::saveState($state, self::STAGE_DISCO);
-
-		$config = SimpleSAML_Configuration::getInstance();
-
-		$discoURL = $config->getString('idpdisco.url.saml20', NULL);
-		if ($discoURL === NULL) {
-			/* Fallback to internal discovery service. */
-			$discoURL = SimpleSAML_Module::getModuleURL('saml2/disco.php');
-		}
-
-		$returnTo = SimpleSAML_Module::getModuleURL('saml2/sp/discoresp.php', array('AuthID' => $id));
-
-		SimpleSAML_Utilities::redirect($discoURL, array(
-			'entityID' => $this->entityId,
-			'return' => $returnTo,
-			'returnIDParam' => 'idpentityid')
-			);
-	}
-
-
-	/**
-	 * Send authentication request to specified IdP.
-	 *
-	 * @param string $idp  The IdP we should send the request to.
-	 * @param array $state  Our state array.
-	 */
-	public function initSSO($idp, $state) {
-		assert('is_string($idp)');
-		assert('is_array($state)');
-
-		$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
-
-		$idpMetadata = $metadata->getMetaDataConfig($idp, 'saml20-idp-remote');
-
-		$ar = sspmod_saml2_Message::buildAuthnRequest($this->metadata, $idpMetadata);
-
-		$ar->setAssertionConsumerServiceURL(SimpleSAML_Module::getModuleURL('saml2/sp/acs.php'));
-		$ar->setProtocolBinding(SAML2_Const::BINDING_HTTP_POST);
-
-		$id = SimpleSAML_Auth_State::saveState($state, self::STAGE_SENT);
-		$ar->setRelayState($id);
-
-		$b = new SAML2_HTTPRedirect();
-		$b->setDestination(sspmod_SAML2_Message::getDebugDestination());
-		$b->send($ar);
-
-		assert('FALSE');
-	}
-
-
-	/**
-	 * Retrieve the entity id of this SP.
-	 *
-	 * @return string  Entity id of this SP.
-	 */
-	public function getEntityId() {
-
-		return $this->entityId;
-	}
-
-
-	/**
-	 * Retrieve the metadata for this SP.
-	 *
-	 * @return SimpleSAML_Configuration  The metadata, as a configuration object.
-	 */
-	public function getMetadata() {
-
-		return $this->metadata;
-	}
-
-
-	/**
-	 * Retrieve the NameIDFormat used by this SP.
-	 *
-	 * @return string  NameIDFormat used by this SP.
-	 */
-	public function getNameIDFormat() {
-
-		return $this->metadata->getString('NameIDFormat', 'urn:oasis:names:tc:SAML:2.0:nameid-format:transient');
-	}
-
-
-	/**
-	 * Check if the IdP entity id is allowed to authenticate users for this authentication source.
-	 *
-	 * @param string $idpEntityId  The entity id of the IdP.
-	 * @return boolean  TRUE if it is valid, FALSE if not.
-	 */
-	public function isIdPValid($idpEntityId) {
-		assert('is_string($idpEntityId)');
-
-		if ($this->idp === NULL) {
-			/* No IdP configured - all are allowed. */
-			return TRUE;
-		}
-
-		if ($this->idp === $idpEntityId) {
-			return TRUE;
-		}
-
-		return FALSE;
-	}
-
-
-	/**
-	 * Handle logout operation.
-	 *
-	 * @param array $state  The logout state.
-	 */
-	public function logout(&$state) {
-		assert('is_array($state)');
-		assert('array_key_exists(self::LOGOUT_IDP, $state)');
-		assert('array_key_exists(self::LOGOUT_NAMEID, $state)');
-		assert('array_key_exists(self::LOGOUT_SESSIONINDEX, $state)');
-
-		$id = SimpleSAML_Auth_State::saveState($state, self::STAGE_LOGOUTSENT);
-
-		$idp = $state[self::LOGOUT_IDP];
-		$nameId = $state[self::LOGOUT_NAMEID];
-		$sessionIndex = $state[self::LOGOUT_SESSIONINDEX];
-
-		if (array_key_exists('value', $nameId)) {
-			/*
-			 * This session was saved by an old version of simpleSAMLphp.
-			 * Convert to the new NameId format.
-			 *
-			 * TODO: Remove this conversion once every session should use the new format.
-			 */
-			$nameId['Value'] = $nameId['value'];
-			unset($nameId['value']);
-		}
-
-		$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
-		$idpMetadata = $metadata->getMetaDataConfig($idp, 'saml20-idp-remote');
-
-		$lr = sspmod_saml2_Message::buildLogoutRequest($this->metadata, $idpMetadata);
-		$lr->setNameId($nameId);
-		$lr->setSessionIndex($sessionIndex);
-		$lr->setRelayState($id);
-
-		$b = new SAML2_HTTPRedirect();
-		$b->setDestination(sspmod_SAML2_Message::getDebugDestination());
-		$b->send($lr);
-
-		assert('FALSE');
-	}
-
-
-	/**
-	 * Called when we receive a logout request.
-	 *
-	 * @param string $idpEntityId  Entity id of the IdP.
-	 */
-	public function onLogout($idpEntityId) {
-		assert('is_string($idpEntityId)');
-
-		/* Call the logout callback we registered in onProcessingCompleted(). */
-		$this->callLogoutCallback($idpEntityId);
-	}
-
-
-	/**
-	 * Called when we have completed the procssing chain.
-	 *
-	 * @param array $authProcState  The processing chain state.
-	 */
-	public static function onProcessingCompleted(array $authProcState) {
-		assert('array_key_exists("saml2:sp:IdP", $authProcState)');
-		assert('array_key_exists("saml2:sp:State", $authProcState)');
-		assert('array_key_exists("Attributes", $authProcState)');
-
-		$idp = $authProcState['saml2:sp:IdP'];
-		$state = $authProcState['saml2:sp:State'];
-
-		$sourceId = $state[sspmod_saml2_Auth_Source_SP::AUTHID];
-		$source = SimpleSAML_Auth_Source::getById($sourceId);
-		if ($source === NULL) {
-			throw new Exception('Could not find authentication source with id ' . $sourceId);
-		}
-
-		/* Register a callback that we can call if we receive a logout request from the IdP. */
-		$source->addLogoutCallback($idp, $state);
-
-		$state['Attributes'] = $authProcState['Attributes'];
-		SimpleSAML_Auth_Source::completeAuth($state);
-	}
-
-}
-
-?>
\ No newline at end of file
diff --git a/modules/saml2/www/disco.php b/modules/saml2/www/disco.php
deleted file mode 100644
index c1608dc440d1beb76c8bb7d81cd72b334a667c9a..0000000000000000000000000000000000000000
--- a/modules/saml2/www/disco.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-/**
- * Builtin IdP discovery service.
- */
-
-$discoHandler = new SimpleSAML_XHTML_IdPDisco(array('saml20-idp-remote'), 'saml20');
-$discoHandler->handleRequest();
-
-?>
\ No newline at end of file
diff --git a/modules/saml2/www/sp/acs.php b/modules/saml2/www/sp/acs.php
deleted file mode 100644
index 06f93b32a5a6b0d92f5a01a601e1bf60bdde7bde..0000000000000000000000000000000000000000
--- a/modules/saml2/www/sp/acs.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-
-/**
- * Assertion consumer service handler for SAML 2.0 SP authentication client.
- */
-
-$b = SAML2_Binding::getCurrentBinding();
-$response = $b->receive();
-if (!($response instanceof SAML2_Response)) {
-	throw new SimpleSAML_Error_BadRequest('Invalid message received to AssertionConsumerService endpoint.');
-}
-
-$relayState = $response->getRelayState();
-if (empty($relayState)) {
-	throw new SimpleSAML_Error_BadRequest('Missing relaystate in message received on AssertionConsumerService endpoint.');
-}
-
-$state = SimpleSAML_Auth_State::loadState($relayState, sspmod_saml2_Auth_Source_SP::STAGE_SENT);
-
-/* Find authentication source. */
-assert('array_key_exists(sspmod_saml2_Auth_Source_SP::AUTHID, $state)');
-$sourceId = $state[sspmod_saml2_Auth_Source_SP::AUTHID];
-
-$source = SimpleSAML_Auth_Source::getById($sourceId);
-if ($source === NULL) {
-	throw new Exception('Could not find authentication source with id ' . $sourceId);
-}
-
-$idp = $response->getIssuer();
-if ($idp === NULL) {
-	throw new Exception('Missing <saml:Issuer> in message delivered to AssertionConsumerService.');
-}
-
-$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
-$idpMetadata = $metadata->getMetaDataConfig($idp, 'saml20-idp-remote');
-$spMetadata = $source->getMetadata();
-
-/* Check if the IdP is allowed to authenticate users for this authentication source. */
-if (!$source->isIdPValid($idp)) {
-	throw new Exception('Invalid IdP responded for authentication source with id ' . $sourceId .
-		'. The IdP was ' . var_export($idp, TRUE));
-}
-
-
-try {
-	$assertion = sspmod_saml2_Message::processResponse($spMetadata, $idpMetadata, $response);
-} catch (sspmod_saml2_Error $e) {
-	/* The status of the response wasn't "success". */
-	$e = $e->toException();
-	SimpleSAML_Auth_State::throwException($state, $e);
-}
-
-$nameId = $assertion->getNameId();
-$sessionIndex = $assertion->getSessionIndex();
-
-/* We need to save the NameID and SessionIndex for logout. */
-$logoutState = array(
-	sspmod_saml2_Auth_Source_SP::LOGOUT_IDP => $idp,
-	sspmod_saml2_Auth_Source_SP::LOGOUT_NAMEID => $nameId,
-	sspmod_saml2_Auth_Source_SP::LOGOUT_SESSIONINDEX => $sessionIndex,
-	);
-$state['LogoutState'] = $logoutState;
-
-
-$spMetadataArray = $spMetadata->toArray();
-$idpMetadataArray = $idpMetadata->toArray();
-
-$pc = new SimpleSAML_Auth_ProcessingChain($idpMetadataArray, $spMetadataArray, 'sp');
-
-$authProcState = array(
-	'saml2:sp:IdP' => $idp,
-	'saml2:sp:State' => $state,
-	'ReturnCall' => array('sspmod_saml2_Auth_Source_SP', 'onProcessingCompleted'),
-
-	'Attributes' => $assertion->getAttributes(),
-	'Destination' => $spMetadataArray,
-	'Source' => $idpMetadataArray,
-);
-
-$pc->processState($authProcState);
-
-sspmod_saml2_Auth_Source_SP::onProcessingCompleted($authProcState);
-
-?>
\ No newline at end of file
diff --git a/modules/saml2/www/sp/discoresp.php b/modules/saml2/www/sp/discoresp.php
deleted file mode 100644
index 0ce9dd907602eb64c6bba5bf89d5dc6f55904c71..0000000000000000000000000000000000000000
--- a/modules/saml2/www/sp/discoresp.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-
-/**
- * Handler for response from IdP discovery service.
- */
-
-if (!array_key_exists('AuthID', $_REQUEST)) {
-	throw new SimpleSAML_Error_BadRequest('Missing AuthID to discovery service response handler');
-}
-
-if (!array_key_exists('idpentityid', $_REQUEST)) {
-	throw new SimpleSAML_Error_BadRequest('Missing idpentityid to discovery service response handler');
-}
-
-$state = SimpleSAML_Auth_State::loadState($_REQUEST['AuthID'], sspmod_saml2_Auth_Source_SP::STAGE_DISCO);
-
-/* Find authentication source. */
-assert('array_key_exists(sspmod_saml2_Auth_Source_SP::AUTHID, $state)');
-$sourceId = $state[sspmod_saml2_Auth_Source_SP::AUTHID];
-
-$source = SimpleSAML_Auth_Source::getById($sourceId);
-if ($source === NULL) {
-	throw new Exception('Could not find authentication source with id ' . $sourceId);
-}
-
-$source->initSSO($_REQUEST['idpentityid'], $state);
-
-?>
\ No newline at end of file
diff --git a/modules/saml2/www/sp/logout.php b/modules/saml2/www/sp/logout.php
deleted file mode 100644
index 35c89beefdadd52c221c5f9ee6b08fb1e19dd8f5..0000000000000000000000000000000000000000
--- a/modules/saml2/www/sp/logout.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-/**
- * Logout endpoint handler for SAML 2.0 SP authentication client.
- *
- * This endpoint handles both logout requests and logout responses.
- */
-
-if (!array_key_exists('PATH_INFO', $_SERVER)) {
-	throw new SimpleSAML_Error_BadRequest('Missing authentication source id in logout URL');
-}
-
-$sourceId = substr($_SERVER['PATH_INFO'], 1);
-
-$source = SimpleSAML_Auth_Source::getById($sourceId);
-if ($source === NULL) {
-	throw new Exception('Could not find authentication source with id ' . $sourceId);
-}
-
-$binding = SAML2_Binding::getCurrentBinding();
-$message = $binding->receive();
-
-$idpEntityId = $message->getIssuer();
-if ($idpEntityId === NULL) {
-	/* Without an issuer we have no way to respond to the message. */
-	throw new SimpleSAML_Error_BadRequest('Received message on logout endpoint without issuer.');
-}
-
-$spEntityId = $source->getEntityId();
-
-$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
-$idpMetadata = $metadata->getMetaDataConfig($idpEntityId, 'saml20-idp-remote');
-$spMetadata = $source->getMetadata();
-
-sspmod_saml2_Message::validateMessage($idpMetadata, $spMetadata, $message);
-
-if ($message instanceof SAML2_LogoutResponse) {
-
-	$relayState = $message->getRelayState();
-	if ($relayState === NULL) {
-		/* Somehow, our RelayState has been lost. */
-		throw new SimpleSAML_Error_BadRequest('Missing RelayState in logout response.');
-	}
-
-	if (!$message->isSuccess()) {
-		SimpleSAML_Logger::warning('Unsuccessful logout. Status was: ' . sspmod_saml2_Message::getResponseError($message));
-	}
-
-	$state = SimpleSAML_Auth_State::loadState($relayState, sspmod_saml2_Auth_Source_SP::STAGE_LOGOUTSENT);
-	SimpleSAML_Auth_Source::completeLogout($state);
-
-} elseif ($message instanceof SAML2_LogoutRequest) {
-
-	SimpleSAML_Logger::debug('module/saml2/sp/logout: Request from ' . $idpEntityId);
-	SimpleSAML_Logger::stats('saml20-idp-SLO idpinit ' . $spEntityId . ' ' . $idpEntityId);
-
-	/* Notify source of logout, so that it may call logout callbacks. */
-	$source->onLogout($idpEntityId);
-
-	/* Create an send response. */
-	$lr = sspmod_saml2_Message::buildLogoutResponse($spMetadata, $idpMetadata);
-	$lr->setRelayState($message->getRelayState());
-	$lr->setInResponseTo($message->getId());
-
-	$binding = new SAML2_HTTPRedirect();
-	$binding->setDestination(sspmod_SAML2_Message::getDebugDestination());
-	$binding->send($lr);
-} else {
-	throw new SimpleSAML_Error_BadRequest('Unknown message received on logout endpoint: ' . get_class($message));
-}
diff --git a/modules/saml2/www/sp/metadata.php b/modules/saml2/www/sp/metadata.php
deleted file mode 100644
index 62bbdd936480491883e54b448b0db3d829f761d8..0000000000000000000000000000000000000000
--- a/modules/saml2/www/sp/metadata.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-
-if (!array_key_exists('source', $_GET)) {
-	throw new SimpleSAML_Error_BadRequest('Missing source parameter');
-}
-
-$sourceId = $_GET['source'];
-$source = SimpleSAML_Auth_Source::getById($sourceId);
-if ($source === NULL) {
-	throw new SimpleSAML_Error_NotFound('Could not find authentication source with id ' . $sourceId);
-}
-
-if (!($source instanceof sspmod_saml2_Auth_Source_SP)) {
-	throw new SimpleSAML_Error_NotFound('Source isn\'t a SAML 2.0 SP: ' . $sourceId);
-}
-
-$entityId = $source->getEntityId();
-
-$metaArray = array(
-	'metadata-set' => 'saml20-sp-remote',
-	'entityid' => $entityId,
-	'AssertionConsumerService' => SimpleSAML_Module::getModuleURL('saml2/sp/acs.php'),
-	'SingleLogoutService' => SimpleSAML_Module::getModuleURL('saml2/sp/logout.php/' . $sourceId),
-	'NameIDFormat' => $source->getNameIDFormat(),
-	);
-
-
-$metaBuilder = new SimpleSAML_Metadata_SAMLBuilder($entityId);
-$metaBuilder->addMetadataSP20($metaArray);
-
-$config = SimpleSAML_Configuration::getInstance();
-$metaBuilder->addContact('technical', array(
-	'emailAddress' => $config->getString('technicalcontact_email', NULL),
-	'name' => $config->getString('technicalcontact_name', NULL),
-	));
-
-$xml = $metaBuilder->getEntityDescriptorText();
-
-echo($xml);
-
-?>