projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
master will be 4.0
[freeside.git]
/
FS
/
FS
/
addr_block.pm
diff --git
a/FS/FS/addr_block.pm
b/FS/FS/addr_block.pm
index
686bdbd
..
6a62777
100755
(executable)
--- a/
FS/FS/addr_block.pm
+++ b/
FS/FS/addr_block.pm
@@
-6,6
+6,7
@@
use FS::Record qw( qsearchs qsearch dbh );
use FS::router;
use FS::svc_broadband;
use FS::Conf;
use FS::router;
use FS::svc_broadband;
use FS::Conf;
+use FS::IP_Mixin;
use NetAddr::IP;
use Carp qw( carp );
use List::Util qw( first );
use NetAddr::IP;
use Carp qw( carp );
use List::Util qw( first );
@@
-238,7
+239,7
@@
sub next_free_addr {
my $self = shift;
my $selfaddr = $self->NetAddr;
my $self = shift;
my $selfaddr = $self->NetAddr;
- return if $self->manual_flag;
+ return
()
if $self->manual_flag;
my $conf = new FS::Conf;
my @excludeaddr = $conf->config('exclude_ip_addr');
my $conf = new FS::Conf;
my @excludeaddr = $conf->config('exclude_ip_addr');
@@
-249,9
+250,7
@@
sub next_free_addr {
$selfaddr->addr,
$selfaddr->network->addr,
$selfaddr->broadcast->addr,
$selfaddr->addr,
$selfaddr->network->addr,
$selfaddr->broadcast->addr,
- (map { $_->NetAddr->addr }
- qsearch('svc_broadband', { blocknum => $self->blocknum })
- ), @excludeaddr
+ FS::IP_Mixin->used_addresses($self)
);
# just do a linear search of the block
);
# just do a linear search of the block