diff --git a/composer.json b/composer.json index 46398b8..b82c06b 100644 --- a/composer.json +++ b/composer.json @@ -32,7 +32,7 @@ "ext-json": "*", "dotkernel/dot-event": "^4.0", "laminas/laminas-servicemanager": "^3.22 || ^4.0", - "symfony/mailer": "v7.1.6" + "symfony/mailer": "^v7.1.6" }, "require-dev": { "laminas/laminas-coding-standard": "^3.0", diff --git a/src/Factory/MailServiceAbstractFactory.php b/src/Factory/MailServiceAbstractFactory.php index b03a8d5..1a82fd9 100644 --- a/src/Factory/MailServiceAbstractFactory.php +++ b/src/Factory/MailServiceAbstractFactory.php @@ -31,6 +31,7 @@ use function is_object; use function is_string; use function is_subclass_of; +use function rawurlencode; use function sprintf; class MailServiceAbstractFactory extends AbstractMailFactory @@ -179,7 +180,7 @@ protected function setupTransportConfig(TransportInterface $transport): Transpor { if ($transport instanceof EsmtpTransport) { $user = $this->mailOptions->getSmtpOptions()->getConnectionConfig()['username']; - $pass = $this->mailOptions->getSmtpOptions()->getConnectionConfig()['password']; + $pass = rawurlencode($this->mailOptions->getSmtpOptions()->getConnectionConfig()['password']); $tls = $this->mailOptions->getSmtpOptions()->getConnectionConfig()['tls'] === false ? 'false' : null; $port = $this->mailOptions->getSmtpOptions()->getPort(); $host = $this->mailOptions->getSmtpOptions()->getHost();