Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
I
ISPConfig 3
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 508
    • Issues 508
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 33
    • Merge Requests 33
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • ISPConfig
  • ISPConfig 3
  • Issues
  • #5533

Closed
Open
Created Feb 11, 2020 by Carlos@Cerrillo

spamfilter users form don't allow amavis catchall pattern

What is happening and what is wrong with that?

In the web interface, in spamfilter users form, if in the email pattern i write the amavis catchall "@." pattern (see https://docs.iredmail.org/amavisd.sql.db.html#lookup_sql_dsn) it is modified on save and replaced by "@"

What should happen instead?

It should allow to store the catchall pattern

environment

Server OS: debian
Server OS version: buster
ISPConfig version: 3.1.15p2

proposed fix

I think we can check if $domain is the amavis pattern "@." to the second line of the method "_idn_encode_decode" on the file "interface/lib/classes/functions.inc.php" like this

        private function _idn_encode_decode($domain, $encode = true) {
                if($domain == '') return '';
                if($domain == '@.') return $domain; //amavis catchall pattern
                if(preg_match('/^[0-9\.]+$/', $domain)) return $domain; // may be an ip address - anyway does not need to bee encoded

  
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None