projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
- mysql 4.1 is available; update documentation
[freeside.git]
/
FS
/
FS
/
addr_block.pm
diff --git
a/FS/FS/addr_block.pm
b/FS/FS/addr_block.pm
index
b671723
..
af4e5fb
100755
(executable)
--- a/
FS/FS/addr_block.pm
+++ b/
FS/FS/addr_block.pm
@@
-5,6
+5,7
@@
use vars qw( @ISA );
use FS::Record qw( qsearchs qsearch dbh );
use FS::router;
use FS::svc_broadband;
use FS::Record qw( qsearchs qsearch dbh );
use FS::router;
use FS::svc_broadband;
+use FS::Conf;
use NetAddr::IP;
@ISA = qw( FS::Record );
use NetAddr::IP;
@ISA = qw( FS::Record );
@@
-172,9
+173,14
@@
there are no free addresses, returns false.
sub next_free_addr {
my $self = shift;
sub next_free_addr {
my $self = shift;
- my @used = map { $_->NetAddr->addr }
+ my $conf = new FS::Conf;
+ my @excludeaddr = $conf->config('exclude_ip_addr');
+
+ my @used = (
+ map { $_->NetAddr->addr }
($self,
($self,
- qsearch('svc_broadband', { blocknum => $self->blocknum }) );
+ qsearch('svc_broadband', { blocknum => $self->blocknum }) ),
+ @excludeaddr );
my @free = $self->NetAddr->hostenum;
while (my $ip = shift @free) {
my @free = $self->NetAddr->hostenum;
while (my $ip = shift @free) {