Allow multiple localpart catch all separators, e.g. both "+" and "-", for addresses you+anything@example.com and you-anything@example.com

The original config option stays, and we still use it for the common case where
we have a single separator. The "+" is configured by default. It is optional,
just like the new option "LocalpartCatchallSeparators" (plural).

When parsing the config file, we combine LocalpartCatchallSeparator and
LocalpartCatchallSeparators into a single list
LocalpartCatchallSeparatorsEffective, which we use throughout the code.

For issue #301 by janc13
This commit is contained in:
Mechiel Lukkien
2025-03-07 14:39:58 +01:00
parent d0b241499f
commit 9a8bb1134b
26 changed files with 255 additions and 95 deletions

View File

@ -1710,8 +1710,9 @@
]
},
{
"Name": "localpartCatchallSeparator",
"Name": "localpartCatchallSeparators",
"Typewords": [
"[]",
"string"
]
},
@ -3441,6 +3442,14 @@
"string"
]
},
{
"Name": "LocalpartCatchallSeparators",
"Docs": "",
"Typewords": [
"[]",
"string"
]
},
{
"Name": "LocalpartCaseSensitive",
"Docs": "",
@ -3501,6 +3510,14 @@
"Typewords": [
"Domain"
]
},
{
"Name": "LocalpartCatchallSeparatorsEffective",
"Docs": "Either LocalpartCatchallSeparators, the value of LocalpartCatchallSeparator, or empty.",
"Typewords": [
"[]",
"string"
]
}
]
},