diff options
| author | Ivan Kohler <ivan@freeside.biz> | 2013-04-29 18:52:43 -0700 |
|---|---|---|
| committer | Ivan Kohler <ivan@freeside.biz> | 2013-04-29 18:52:43 -0700 |
| commit | 59c3510741fabaa79f3007202f2ec314cdd2761b (patch) | |
| tree | 27cd9742b3263542c80742a3795c8afc1f893574 | |
| parent | a03ef407980e86079b82383069c5bef037bac2d5 (diff) | |
allow @domain to be passed as part of a white/black-list, RT#20896
| -rw-r--r-- | FS/FS/part_export/http_status.pm | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/FS/FS/part_export/http_status.pm b/FS/FS/part_export/http_status.pm index 06b1bc02f..93dd9414c 100644 --- a/FS/FS/part_export/http_status.pm +++ b/FS/FS/part_export/http_status.pm @@ -128,7 +128,7 @@ sub export_setstatus_listdel { } sub export_setstatus_listX { - my( $self, $svc_x, $action, $list, $address ) = @_; + my( $self, $svc_x, $action, $list, $address_item ) = @_; my $option; if ( $list =~ /^[WA]/i ) { #Whitelist/Allow @@ -138,8 +138,16 @@ sub export_setstatus_listX { } $option .= $action. '_url'; - $address = Email::Valid->address($address) - or die "address failed $Email::Valid::Details check.\n"; + my $address; + unless ( $address = Email::Valid->address($address_item) ) { + + if ( $address_item =~ /^(\@[\w\-\.]+\.\w{2,63})$/ ) { # "@domain" + $address = $1; + } else { + die "address failed $Email::Valid::Details check.\n"; + } + + } #some false laziness w/export_getstatus above my $url; |
