updated plugin WP Mail SMTP
version 2.2.1
This commit is contained in:
@ -34,11 +34,6 @@ use Google\Auth\OAuth2;
|
||||
*/
|
||||
class UserRefreshCredentials extends CredentialsLoader implements GetQuotaProjectInterface
|
||||
{
|
||||
const CLOUD_SDK_CLIENT_ID =
|
||||
'764086051850-6qr4p6gpi6hn506pt8ejuq83di341hur.apps.googleusercontent.com';
|
||||
|
||||
const SUPPRESS_CLOUD_SDK_CREDS_WARNING_ENV = 'SUPPRESS_GCLOUD_CREDS_WARNING';
|
||||
|
||||
/**
|
||||
* The OAuth2 instance used to conduct authorization.
|
||||
*
|
||||
@ -97,24 +92,6 @@ class UserRefreshCredentials extends CredentialsLoader implements GetQuotaProjec
|
||||
if (array_key_exists('quota_project', $jsonKey)) {
|
||||
$this->quotaProject = (string) $jsonKey['quota_project'];
|
||||
}
|
||||
if ($jsonKey['client_id'] === self::CLOUD_SDK_CLIENT_ID
|
||||
&& is_null($this->quotaProject)
|
||||
&& getenv(self::SUPPRESS_CLOUD_SDK_CREDS_WARNING_ENV) !== 'true') {
|
||||
trigger_error(
|
||||
'Your application has authenticated using end user credentials '
|
||||
. 'from Google Cloud SDK. We recommend that most server '
|
||||
. 'applications use service accounts instead. If your '
|
||||
. 'application continues to use end user credentials '
|
||||
. 'from Cloud SDK, you might receive a "quota exceeded" '
|
||||
. 'or "API not enabled" error. For more information about '
|
||||
. 'service accounts, see '
|
||||
. 'https://cloud.google.com/docs/authentication/. '
|
||||
. 'To disable this warning, set '
|
||||
. self::SUPPRESS_CLOUD_SDK_CREDS_WARNING_ENV
|
||||
. ' environment variable to "true".',
|
||||
E_USER_WARNING
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -20,6 +20,7 @@ namespace Google\Auth;
|
||||
use Google\Auth\Credentials\InsecureCredentials;
|
||||
use Google\Auth\Credentials\ServiceAccountCredentials;
|
||||
use Google\Auth\Credentials\UserRefreshCredentials;
|
||||
use GuzzleHttp\ClientInterface;
|
||||
|
||||
/**
|
||||
* CredentialsLoader contains the behaviour used to locate and find default
|
||||
@ -54,6 +55,24 @@ abstract class CredentialsLoader implements FetchAuthTokenInterface
|
||||
return strtoupper(substr(PHP_OS, 0, 3)) === 'WIN';
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the currently available major Guzzle version.
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
private static function getGuzzleMajorVersion()
|
||||
{
|
||||
if (defined('GuzzleHttp\ClientInterface::MAJOR_VERSION')) {
|
||||
return ClientInterface::MAJOR_VERSION;
|
||||
}
|
||||
|
||||
if (defined('GuzzleHttp\ClientInterface::VERSION')) {
|
||||
return (int) substr(ClientInterface::VERSION, 0, 1);
|
||||
}
|
||||
|
||||
throw new \Exception('Version not supported');
|
||||
}
|
||||
|
||||
/**
|
||||
* Load a JSON key from the path specified in the environment.
|
||||
*
|
||||
@ -145,35 +164,30 @@ abstract class CredentialsLoader implements FetchAuthTokenInterface
|
||||
callable $httpHandler = null,
|
||||
callable $tokenCallback = null
|
||||
) {
|
||||
$version = \GuzzleHttp\ClientInterface::VERSION;
|
||||
|
||||
switch ($version[0]) {
|
||||
case '5':
|
||||
$client = new \GuzzleHttp\Client($httpClientOptions);
|
||||
$client->setDefaultOption('auth', 'google_auth');
|
||||
$subscriber = new Subscriber\AuthTokenSubscriber(
|
||||
$fetcher,
|
||||
$httpHandler,
|
||||
$tokenCallback
|
||||
);
|
||||
$client->getEmitter()->attach($subscriber);
|
||||
return $client;
|
||||
case '6':
|
||||
$middleware = new Middleware\AuthTokenMiddleware(
|
||||
$fetcher,
|
||||
$httpHandler,
|
||||
$tokenCallback
|
||||
);
|
||||
$stack = \GuzzleHttp\HandlerStack::create();
|
||||
$stack->push($middleware);
|
||||
|
||||
return new \GuzzleHttp\Client([
|
||||
'handler' => $stack,
|
||||
'auth' => 'google_auth',
|
||||
] + $httpClientOptions);
|
||||
default:
|
||||
throw new \Exception('Version not supported');
|
||||
if (self::getGuzzleMajorVersion() === 5) {
|
||||
$client = new \GuzzleHttp\Client($httpClientOptions);
|
||||
$client->setDefaultOption('auth', 'google_auth');
|
||||
$subscriber = new Subscriber\AuthTokenSubscriber(
|
||||
$fetcher,
|
||||
$httpHandler,
|
||||
$tokenCallback
|
||||
);
|
||||
$client->getEmitter()->attach($subscriber);
|
||||
return $client;
|
||||
}
|
||||
|
||||
$middleware = new Middleware\AuthTokenMiddleware(
|
||||
$fetcher,
|
||||
$httpHandler,
|
||||
$tokenCallback
|
||||
);
|
||||
$stack = \GuzzleHttp\HandlerStack::create();
|
||||
$stack->push($middleware);
|
||||
|
||||
return new \GuzzleHttp\Client([
|
||||
'handler' => $stack,
|
||||
'auth' => 'google_auth',
|
||||
] + $httpClientOptions);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1,5 +1,19 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Copyright 2015 Google Inc. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
namespace Google\Auth\HttpHandler;
|
||||
|
||||
use GuzzleHttp\ClientInterface;
|
||||
|
21
wp-content/plugins/wp-mail-smtp/vendor/google/auth/src/HttpHandler/Guzzle7HttpHandler.php
vendored
Normal file
21
wp-content/plugins/wp-mail-smtp/vendor/google/auth/src/HttpHandler/Guzzle7HttpHandler.php
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
<?php
|
||||
/**
|
||||
* Copyright 2020 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
namespace Google\Auth\HttpHandler;
|
||||
|
||||
class Guzzle7HttpHandler extends Guzzle6HttpHandler
|
||||
{
|
||||
}
|
@ -25,19 +25,27 @@ class HttpHandlerFactory
|
||||
* Builds out a default http handler for the installed version of guzzle.
|
||||
*
|
||||
* @param ClientInterface $client
|
||||
* @return Guzzle5HttpHandler|Guzzle6HttpHandler
|
||||
* @return Guzzle5HttpHandler|Guzzle6HttpHandler|Guzzle7HttpHandler
|
||||
* @throws \Exception
|
||||
*/
|
||||
public static function build(ClientInterface $client = null)
|
||||
{
|
||||
$version = ClientInterface::VERSION;
|
||||
$client = $client ?: new Client();
|
||||
|
||||
switch ($version[0]) {
|
||||
case '5':
|
||||
$version = null;
|
||||
if (defined('GuzzleHttp\ClientInterface::MAJOR_VERSION')) {
|
||||
$version = ClientInterface::MAJOR_VERSION;
|
||||
} elseif (defined('GuzzleHttp\ClientInterface::VERSION')) {
|
||||
$version = (int) substr(ClientInterface::VERSION, 0, 1);
|
||||
}
|
||||
|
||||
switch ($version) {
|
||||
case 5:
|
||||
return new Guzzle5HttpHandler($client);
|
||||
case '6':
|
||||
case 6:
|
||||
return new Guzzle6HttpHandler($client);
|
||||
case 7:
|
||||
return new Guzzle7HttpHandler($client);
|
||||
default:
|
||||
throw new \Exception('Version not supported');
|
||||
}
|
||||
|
Reference in New Issue
Block a user