also support regexp in domain_suffix
This commit is contained in:
		| @@ -141,7 +141,8 @@ config->{'domain_suffix'} = [setting('domain_suffix')] | ||||
|   if ref [] ne ref setting('domain_suffix'); | ||||
|  | ||||
| if (scalar @{ setting('domain_suffix') }) { | ||||
|   my @suffixes = map { quotemeta } @{ setting('domain_suffix') }; | ||||
|   my @suffixes = map { (ref qr// eq ref $_) ? $_ : quotemeta } | ||||
|                     @{ setting('domain_suffix') }; | ||||
|   my $buildref = '(?:'. (join '|', @suffixes) .')$'; | ||||
|   config->{'domain_suffix'} = qr/$buildref/; | ||||
| } | ||||
|   | ||||
| @@ -151,11 +151,11 @@ sub search_by_dns { | ||||
|       if ref {} ne ref $cond or !exists $cond->{dns}; | ||||
|  | ||||
|     (my $suffix = (delete $cond->{suffix} || '')) | ||||
|       =~ s|^\Q(?^\E|***:(?|; | ||||
|       =~ s|\Q(?^\Eu?|(?|g; | ||||
|  | ||||
|     $cond->{dns} = [ -and => | ||||
|       { '-ilike' => delete $cond->{dns} }, | ||||
|       { '~*' => "$suffix" }, | ||||
|       { '~*' => "***:$suffix" }, | ||||
|     ]; | ||||
|  | ||||
|     return $rs | ||||
|   | ||||
		Reference in New Issue
	
	Block a user