diff -u b/includes/OpenIDConnectClientBase.class.php b/includes/OpenIDConnectClientBase.class.php --- b/includes/OpenIDConnectClientBase.class.php +++ b/includes/OpenIDConnectClientBase.class.php @@ -209,2 +209,10 @@ } + + /** + * {@inheritdoc} + */ + public function endSession($id_token, $post_logout_redirect_url = '') { + // No need to do anything, but make the function have a body anyway + // so that it's callable by overriding methods. + } } only in patch2: unchanged: --- a/includes/OpenIDConnectClientInterface.class.php +++ b/includes/OpenIDConnectClientInterface.class.php @@ -129,4 +129,17 @@ public function decodeIdToken($id_token); */ public function retrieveUserInfo($access_token); + /** + * End User Session in IdP. + * + * @param string $id_token + * A NON expired id_token (RECOMMENDED). + * @param string $post_logout_redirect_url + * Logout url registered on the IdP. + * + * @see https://openid.net/specs/openid-connect-session-1_0-28.html + * @see https://openid.net/specs/openid-connect-session-1_0-28.html#RedirectionAfterLogout + */ + public function endSession($id_token, $post_logout_redirect_url = ''); + }