aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMario <mario@mariovavti.com>2024-11-17 10:26:25 +0000
committerMario <mario@mariovavti.com>2024-11-17 10:26:25 +0000
commit67a9292aaa5246783b70ca3754b31924416d7f08 (patch)
tree490b54e3916ee845a57da0a34bbde53e241f1074
parent81dda15669aa80f22fcabce91bd35dbf45199276 (diff)
parent5b7f8d986ccbb794092d917a5156c663c48dbea2 (diff)
downloadvolse-hubzilla-67a9292aaa5246783b70ca3754b31924416d7f08.tar.gz
volse-hubzilla-67a9292aaa5246783b70ca3754b31924416d7f08.tar.bz2
volse-hubzilla-67a9292aaa5246783b70ca3754b31924416d7f08.zip
Merge branch 'issue-1879-emails-with-plus-addressing-rejected' into 'dev'
Fix #1879: Emails with + in local part was rejected. See merge request hubzilla/core!2170
-rw-r--r--include/network.php2
-rw-r--r--tests/unit/includes/NetworkTest.php6
2 files changed, 6 insertions, 2 deletions
diff --git a/include/network.php b/include/network.php
index 0a78c144b..50e8b1c89 100644
--- a/include/network.php
+++ b/include/network.php
@@ -612,7 +612,7 @@ function validate_email(string $addr): bool {
$matches = array();
$result = preg_match(
- '/^[A-Z0-9._%-]+@([A-Z0-9.-]+\.[A-Z0-9-]{2,})$/i',
+ '/^[A-Z0-9._%+-]+@([A-Z0-9.-]+\.[A-Z0-9-]{2,})$/i',
punify($addr),
$matches);
diff --git a/tests/unit/includes/NetworkTest.php b/tests/unit/includes/NetworkTest.php
index a41075f25..ea1fd6fa0 100644
--- a/tests/unit/includes/NetworkTest.php
+++ b/tests/unit/includes/NetworkTest.php
@@ -60,7 +60,11 @@ class NetworkTest extends Zotlabs\Tests\Unit\UnitTestCase {
['some.email@example.cancerresearch', true],
// And internationalized TLD's
- ['some.email@example.شبكة', true]
+ ['some.email@example.شبكة', true],
+
+ // Allow plus/minus addressing
+ ['address+tag@example.com', true],
+ ['address-tag@example.com', true],
];
}
}