diff --git a/phpBB/language/en/common.php b/phpBB/language/en/common.php index 2fc7eeb12a..7443f27be3 100644 --- a/phpBB/language/en/common.php +++ b/phpBB/language/en/common.php @@ -95,6 +95,7 @@ $lang = array_merge($lang, array( 'AUTH_PROVIDER_OAUTH_ERROR_INVALID_ENTRY' => 'Invalid database entry.', 'AUTH_PROVIDER_OAUTH_ERROR_INVALID_SERVICE_TYPE' => 'Invalid service type provided to OAuth service handler.', 'AUTH_PROVIDER_OAUTH_ERROR_REQUEST' => 'Something went wrong when processing your OAuth request.', + 'AUTH_PROVIDER_OAUTH_RETURN_ERROR' => 'The external service returned a wrong value therefore your request can not be processed.', 'AUTH_PROVIDER_OAUTH_ERROR_SERVICE_NOT_CREATED' => 'OAuth service not created', 'AUTH_PROVIDER_OAUTH_SERVICE_BITLY' => 'Bitly', 'AUTH_PROVIDER_OAUTH_SERVICE_FACEBOOK' => 'Facebook', diff --git a/phpBB/phpbb/auth/provider/oauth/service/bitly.php b/phpBB/phpbb/auth/provider/oauth/service/bitly.php index ca131b2019..0169de098e 100644 --- a/phpBB/phpbb/auth/provider/oauth/service/bitly.php +++ b/phpBB/phpbb/auth/provider/oauth/service/bitly.php @@ -77,6 +77,12 @@ class bitly extends base throw new exception('AUTH_PROVIDER_OAUTH_ERROR_REQUEST'); } + // Prevent SQL error + if (!isset($result['data']['login'])) + { + throw new exception('AUTH_PROVIDER_OAUTH_RETURN_ERROR'); + } + // Return the unique identifier returned from bitly return $result['data']['login']; } @@ -101,6 +107,12 @@ class bitly extends base throw new exception('AUTH_PROVIDER_OAUTH_ERROR_REQUEST'); } + // Prevent SQL error + if (!isset($result['data']['login'])) + { + throw new exception('AUTH_PROVIDER_OAUTH_RETURN_ERROR'); + } + // Return the unique identifier return $result['data']['login']; }