Message8504
audit_user_fields() in the userauditor detector checks for duplicate alternate addresses
using:
check_alts = [x for x in db.user.filter(None, {'alternate_addresses': address}) if x !=
nodeid]
`filter()` on a String property compiles to `ILIKE '%value%'`, so any address that's a
substring of an existing alternate_addresses entry is rejected as a duplicate. For example,
setting `ken@example.com` fails if another user has `sp_ken@example.com` in their alternates.
This bug has seemingly existed for as long as the `check_alt` line was added, but I confirmed
it on version 2.4.0. Attached is a patch mitigating this by checking for exact matches post-
filter, sort of like how it's done in the `mailgw.py` function `uidFromAddress()`. |
|
| Date |
User |
Action |
Args |
| 2026-08-31 08:46:19 | matre | set | recipients:
+ matre |
| 2026-08-31 08:46:18 | matre | set | messageid: <1788165978.49.0.259357457007.issue2551425@roundup-tracker.org> |
| 2026-08-31 08:46:18 | matre | link | issue2551425 messages |
| 2026-08-31 08:46:18 | matre | create | |
|