joomla / joomla-cms

Home of the Joomla! Content Management System
https://www.joomla.org
GNU General Public License v2.0
4.77k stars 3.65k forks source link

J4 : Error 101 on registration (Prohibited input U+00000020) #38469

Closed hmed95 closed 1 year ago

hmed95 commented 2 years ago

Steps to reproduce the issue

when i try to register new account, i use easysocial to handle registration.

Expected result

at the end of registrationi get this error.

Actual result

i contacted the extension develeopper and they told me : It seems that this is a bug from Joomla 4 itself when the mailer subject contains '@' character in it.

System information (as much as possible)

Function Location 1 () JROOT/libraries/vendor/algo26-matthias/idna-convert/src/NamePrep/NamePrep.php:79 2 Algo26\IdnaConvert\NamePrep\NamePrep->applyCharacterMaps() JROOT/libraries/vendor/algo26-matthias/idna-convert/src/NamePrep/NamePrep.php:54 3 Algo26\IdnaConvert\NamePrep\NamePrep->do() JROOT/libraries/vendor/algo26-matthias/idna-convert/src/Punycode/ToPunycode.php:51 4 Algo26\IdnaConvert\Punycode\ToPunycode->convert() JROOT/libraries/vendor/algo26-matthias/idna-convert/src/ToIdn.php:58 5 Algo26\IdnaConvert\ToIdn->convert() JROOT/libraries/src/String/PunycodeHelper.php:42 6 Joomla\CMS\String\PunycodeHelper::toPunycode() JROOT/libraries/src/String/PunycodeHelper.php:227 7 Joomla\CMS\String\PunycodeHelper::emailToPunycode() JROOT/libraries/src/Mail/MailHelper.php:38 8 Joomla\CMS\Mail\MailHelper::cleanLine() JROOT/libraries/src/Mail/Mail.php:243 9 Joomla\CMS\Mail\Mail->setSubject() JROOT/administrator/components/com_easysocial/includes/mailer/mailer.php:220 10 SocialMailer->send() JROOT/administrator/components/com_easysocial/includes/mailer/mailer.php:71 11 SocialMailer->create() JROOT/administrator/components/com_easysocial/models/registration.php:850 12 EasySocialModelRegistration->notifyAdmins() JROOT/components/com_easysocial/controllers/registration.php:340 13 EasySocialControllerRegistration->saveStep() JROOT/libraries/src/MVC/Controller/BaseController.php:735 14 Joomla\CMS\MVC\Controller\BaseController->execute() JROOT/components/com_easysocial/controllers/controller.php:63 15 EasySocialController->execute() JROOT/components/com_easysocial/easysocial.php:100 16 require_once() JROOT/libraries/src/Dispatcher/LegacyComponentDispatcher.php:69 17 Joomla\CMS\Dispatcher\LegacyComponentDispatcher::Joomla\CMS\Dispatcher{closure}() JROOT/libraries/src/Dispatcher/LegacyComponentDispatcher.php:71 18 Joomla\CMS\Dispatcher\LegacyComponentDispatcher->dispatch() JROOT/libraries/src/Component/ComponentHelper.php:389 19 Joomla\CMS\Component\ComponentHelper::renderComponent() JROOT/libraries/src/Application/SiteApplication.php:204 20 Joomla\CMS\Application\SiteApplication->dispatch() JROOT/libraries/src/Application/SiteApplication.php:243 21 Joomla\CMS\Application\SiteApplication->doExecute() JROOT/libraries/src/Application/CMSApplication.php:278 22 Joomla\CMS\Application\CMSApplication->execute() JROOT/includes/app.php:63 23 require_once() JROOT/index.php:32

Additional comments

Fedik commented 2 years ago

Hm, I wonder why do we use PunycodeHelper::emailToPunycode for Subject: https://github.com/joomla/joomla-cms/blob/ab6d2f8a22958a173ed93c8d5a881286a0c2d282/libraries/src/Mail/Mail.php#L218-L223 https://github.com/joomla/joomla-cms/blob/ab6d2f8a22958a173ed93c8d5a881286a0c2d282/libraries/src/Mail/MailHelper.php#L35-L40

Looks like bug to me also.

Fedik commented 2 years ago

I would expect setSubject to use

$this->Subject = MailHelper::cleanSubject($subject); 

instead of

$this->Subject = MailHelper::cleanLine($subject); 

Someone remeber a reason? :)

brianteeman commented 2 years ago

Someone remeber a reason? :)

Not me

richard67 commented 2 years ago

I would expect setSubject to use

$this->Subject = MailHelper::cleanSubject($subject); 

instead of

$this->Subject = MailHelper::cleanLine($subject); 

Someone remeber a reason? :)

Me neither. Reading a bit below I would also expect setBody to use cleanBody and not cleanLine cleanText.

Quy commented 1 year ago

Duplicate #31768?

carlitorweb commented 1 year ago

Duplicate https://github.com/joomla/joomla-cms/issues/31768?

In my opinion yes, is a duplicated

Quy commented 1 year ago

Closing as duplicate. Thanks.