# also make sure it's not blocked from assignment by an address range
if ( !$used{$freeaddr->addr } ) {
my ($range) = grep { !$_->allow_use }
- FS::addr_range->any_contains($freeaddr);
+ FS::addr_range->any_contains($freeaddr->addr);
if ( !$range ) {
# then we've found a free address
return $freeaddr;
($router ? $router->routername : '(unallocated)'). ':'. $self->NetAddr;
}
+=item router
+
+Returns the router assigned to this block.
+
+=cut
+
+# necessary, because this can't be foreign keyed
+
+sub router {
+ my $self = shift;
+ my $routernum = $self->routernum;
+ if ( $routernum ) {
+ return FS::router->by_key($routernum);
+ } else {
+ return;
+ }
+}
+
=back
=head1 BUGS