Send Netdot-devel mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
https://osl.uoregon.edu/mailman/listinfo/netdot-devel
or, via email, send a message with subject or body 'help' to
[email protected]
You can reach the person managing the list at
[email protected]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of Netdot-devel digest..."
Today's Topics:
1. [SCM] Netdot branch netdot-1.0 updated.
netdot-1.0.7-9-g146101e ([email protected])
2. [SCM] Netdot branch netdot-1.0 updated.
netdot-1.0.7-10-g384ea0f ([email protected])
3. [SCM] Netdot branch master updated. netdot-1.0.7-10-g384ea0f
([email protected])
4. [Netdot - Bug #1857] (New) Perl warnings when running
updatedevice on a Juniper switch ([email protected])
5. [SCM] Netdot branch netdot-1.0 updated.
netdot-1.0.7-11-g684b354 ([email protected])
6. [SCM] Netdot branch master updated. netdot-1.0.7-11-g684b354
([email protected])
7. [Netdot - Bug #1857] (Resolved) Perl warnings when running
updatedevice on a Juniper switch ([email protected])
8. [Netdot - Bug #1855] (Resolved) Apache 2.4 API change
([email protected])
----------------------------------------------------------------------
Message: 1
Date: Tue, 28 Apr 2015 06:29:48 -0700
From: [email protected]
Subject: [Netdot-devel] [SCM] Netdot branch netdot-1.0 updated.
netdot-1.0.7-9-g146101e
To: [email protected]
Message-ID: <[email protected]>
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Netdot".
The branch, netdot-1.0 has been updated
via 146101e2ed71487930be6feb6245658b7f0d8c2d (commit)
from 8b01e0b0f27e6fa4ca1e7036e6eac327d984a918 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 146101e2ed71487930be6feb6245658b7f0d8c2d
Author: Carlos Vicente <[email protected]>
Date: Tue Apr 28 09:29:21 2015 -0400
Ability to retrieve inherited IP attributes in one REST call
diff --git a/htdocs/rest/ipattr b/htdocs/rest/ipattr
new file mode 100644
index 0000000..d333904
--- /dev/null
+++ b/htdocs/rest/ipattr
@@ -0,0 +1,46 @@
+<%doc>
+Retrieve list of inherited IP attributes for given IP
+</%doc>
+<%args>
+$addr # IP block or address
+$user # Should be assigned by autohandler
+$manager # Should be assigned by autohandler
+</%args>
+<%init>
+my $DEBUG = 0;
+print '%ARGS is <pre>', Dumper(%ARGS), '</pre><br>' if $DEBUG;
+
+use Apache2::Const -compile => qw(FORBIDDEN OK NOT_FOUND HTTP_BAD_REQUEST);
+use Data::Dumper;
+use Netdot::REST;
+use Netdot::Exporter;
+
+my $rest = Netdot::REST->new(user=>$user, manager=>$manager);
+$rest->request($r);
+
+# Get relevant HTTP headers from request object
+my $headers = $rest->{request}->headers_in;
+
+# Deal with Accept header
+$rest->check_accept_header($headers->{Accept}) if ( $headers->{Accept} );
+
+my $method = $rest->{request}->method;
+$rest->throw(code=>Apache2::Const::HTTP_BAD_REQUEST,
+ msg=>'Bad request: invalid method') unless $method eq 'GET';
+
+my $logger = Netdot->log->get_logger("Netdot::REST");
+$logger->info(sprintf("/rest/ipattr: %s request with args: %s from %s (%s)",
+ $method,
+ $rest->{request}->args,
+ $rest->{request}->connection->remote_ip,
+ $headers->{'User-Agent'}
+ ));
+
+</%init>
+<%perl>
+my $ip = Ipblock->search(address=>$addr)->first;
+$rest->throw(code=>Apache2::Const::NOT_FOUND, msg=>"IP not found")
+ unless $ip;
+my $attrs = $ip->get_inherited_attributes();
+$rest->print_serialized($attrs);
+</%perl>
diff --git a/lib/Netdot/Model/Ipblock.pm b/lib/Netdot/Model/Ipblock.pm
index 000c342..0bad1bc 100644
--- a/lib/Netdot/Model/Ipblock.pm
+++ b/lib/Netdot/Model/Ipblock.pm
@@ -1861,6 +1861,33 @@ sub get_descendants {
##################################################################
+=head2 get_inherited_attributes
+
+ Arguments:
+ None
+ Returns:
+ Hashref containing attributes and their values
+ Examples:
+ my $attrs = $ip->get_inherited_attributes();
+
+=cut
+
+sub get_inherited_attributes {
+ my ($self) = @_;
+ $self->isa_object_method('get_inherited_attributes');
+
+ my @chain = reverse $self->get_ancestors;
+ push @chain, $self;
+ my %res;
+ foreach my $ip ( @chain ){
+ foreach my $attr ( $ip->attributes ){
+ $res{$attr->name->name} = $attr->value;
+ }
+ }
+ return \%res;
+}
+##################################################################
+
=head2 num_addr - Return the number of usable addresses in a subnet
Arguments:
diff --git a/t/Ipblock.t b/t/Ipblock.t
index ae3d5a9..056fbfb 100644
--- a/t/Ipblock.t
+++ b/t/Ipblock.t
@@ -4,6 +4,12 @@ use lib "lib";
BEGIN { use_ok('Netdot::Model::Ipblock'); }
+# Clean up first
+foreach my $obj ( '192.0.2.0/24', '2001:db8::/32' ){
+ my $b = Ipblock->search(address=>$obj)->first;
+ $b->delete(recursive=>1) if $b;
+}
+
my $container = Ipblock->insert({
address => "192.0.2.0",
prefix => '24',
@@ -85,7 +91,6 @@ ok(Ipblock->is_link_local('fe80:abcd::1234'),
'is_link_local');
is(Ipblock->get_covering_block(address=>'192.0.2.5', prefix=>'32'), $subnet,
'get_covering_block');
-
is(Ipblock->numhosts(24), 256, 'numhosts');
{
@@ -192,6 +197,40 @@ my $ar1 = Ipblock->matches_cidr($address->cidr);
my $ar2 = ($address->address, $address->prefix);
is_deeply(\$ar1, \$ar2, 'matches_cidr_1');
+# Inherited attributes
+# First we clean up
+foreach my $atrname ( 'A', 'B', 'C' ){
+ my $atr = IpblockAttrName->search(name=>$atrname)->first;
+ $atr->delete if $atr;
+}
+
+# Add new attributes
+my $atn_a = IpblockAttrName->insert({name=>'A'});
+my $atn_b = IpblockAttrName->insert({name=>'B'});
+my $atn_c = IpblockAttrName->insert({name=>'C'});
+
+# Assign attributes and values to the Container, Subnet and Address
+my $at_a = IpblockAttr->insert({ipblock=>$container, name=>$atn_a,
value=>'a'});
+my $at_b = IpblockAttr->insert({ipblock=>$subnet, name=>$atn_b, value=>'b'});
+my $at_c = IpblockAttr->insert({ipblock=>$address, name=>$atn_c, value=>'c'});
+my $attrs = $address->get_inherited_attributes();
+my $expected = {
+ 'A' => 'a',
+ 'B' => 'b',
+ 'C' => 'c',
+};
+is_deeply($attrs, $expected, 'gets list of inherited attributes');
+
+# Override C's value
+$at_c->update({value=>'z'});
+my $attrs = $address->get_inherited_attributes();
+my $expected = {
+ 'A' => 'a',
+ 'B' => 'b',
+ 'C' => 'z',
+};
+is_deeply($attrs, $expected, 'gets overridden attribute');
+
# Delete all records
$container->delete(recursive=>1);
$v6container->delete(recursive=>1);
-----------------------------------------------------------------------
Summary of changes:
htdocs/rest/{devinfo => ipattr} | 27 +++++++++++++--------------
lib/Netdot/Model/Ipblock.pm | 27 +++++++++++++++++++++++++++
t/Ipblock.t | 41 ++++++++++++++++++++++++++++++++++++++++-
3 files changed, 80 insertions(+), 15 deletions(-)
copy htdocs/rest/{devinfo => ipattr} (55%)
hooks/post-receive
--
Netdot
------------------------------
Message: 2
Date: Tue, 28 Apr 2015 06:40:47 -0700
From: [email protected]
Subject: [Netdot-devel] [SCM] Netdot branch netdot-1.0 updated.
netdot-1.0.7-10-g384ea0f
To: [email protected]
Message-ID: <[email protected]>
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Netdot".
The branch, netdot-1.0 has been updated
via 384ea0f332c93403af088e90487424d8647b1312 (commit)
from 146101e2ed71487930be6feb6245658b7f0d8c2d (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 384ea0f332c93403af088e90487424d8647b1312
Author: Carlos Vicente <[email protected]>
Date: Tue Apr 28 09:40:38 2015 -0400
Fix for #1855 (Apache 2.4 API change)
diff --git a/htdocs/rest/devinfo b/htdocs/rest/devinfo
index c2aca97..975b155 100644
--- a/htdocs/rest/devinfo
+++ b/htdocs/rest/devinfo
@@ -31,7 +31,7 @@ my $logger = Netdot->log->get_logger("Netdot::REST");
$logger->info(sprintf("/rest/devinfo: %s request with args: %s from %s (%s)",
$method,
$req_args,
- $rest->{request}->connection->remote_ip,
+ $rest->remote_ip,
$headers->{'User-Agent'}
));
diff --git a/htdocs/rest/host b/htdocs/rest/host
index fe9c9a6..27d08ab 100644
--- a/htdocs/rest/host
+++ b/htdocs/rest/host
@@ -42,7 +42,7 @@ my $logger = Netdot->log->get_logger("Netdot::REST");
$logger->info(sprintf("/rest/host: %s request with args: %s from %s (%s)",
$method,
$req_args,
- $rest->{request}->connection->remote_ip,
+ $rest->remote_ip,
$headers->{'User-Agent'}
));
diff --git a/htdocs/rest/ipattr b/htdocs/rest/ipattr
index d333904..338b179 100644
--- a/htdocs/rest/ipattr
+++ b/htdocs/rest/ipattr
@@ -32,7 +32,7 @@ my $logger = Netdot->log->get_logger("Netdot::REST");
$logger->info(sprintf("/rest/ipattr: %s request with args: %s from %s (%s)",
$method,
$rest->{request}->args,
- $rest->{request}->connection->remote_ip,
+ $rest->remote_ip,
$headers->{'User-Agent'}
));
diff --git a/htdocs/rest/updatedev b/htdocs/rest/updatedev
index 9170d86..6709a3a 100644
--- a/htdocs/rest/updatedev
+++ b/htdocs/rest/updatedev
@@ -33,7 +33,7 @@ my $logger = Netdot->log->get_logger("Netdot::REST");
$logger->info(sprintf("/rest/updatedev: %s request with args: %s from %s
(%s)",
$method,
$req_args,
- $rest->{request}->connection->remote_ip,
+ $rest->remote_ip,
$headers->{'User-Agent'}
));
diff --git a/lib/Netdot/REST.pm b/lib/Netdot/REST.pm
index 938de95..4d2c54d 100644
--- a/lib/Netdot/REST.pm
+++ b/lib/Netdot/REST.pm
@@ -127,7 +127,7 @@ sub handle_resource {
$self->{request}->method,
$resource,
$self->{request}->args,
- $self->{request}->connection->remote_ip,
+ $self->remote_ip,
$headers->{'User-Agent'}
));
@@ -543,7 +543,7 @@ sub read_serialized {
sub check_accept_header{
my ($self, $accept) = @_;
$logger->debug(sprintf("Netdot::REST::handle_resource: %s, Accept: %s",
- $self->{request}->connection->remote_ip, $accept
+ $self->remote_ip, $accept
));
my @headers = split m/,(\s+)?/, $accept;
@@ -586,6 +586,29 @@ sub throw {
}
##################################################################
+
+=head2 remote_ip
+
+ Handle API differences between Apache versions
+
+ Arguments:
+ None
+ Returns:
+ Client IP (string)
+ Examples:
+ my $client_ip = $rest->remote_ip()
+=cut
+
+sub remote_ip {
+ my $self = shift;
+ if ($self->{request}->connection->can("remote_ip")) {
+ $self->{request}->connection->remote_ip; # 2.2
+ } else {
+ $self->{request}->connection->client_ip; # 2.4
+ }
+}
+
+##################################################################
#
# Private Methods
#
-----------------------------------------------------------------------
Summary of changes:
htdocs/rest/devinfo | 2 +-
htdocs/rest/host | 2 +-
htdocs/rest/ipattr | 2 +-
htdocs/rest/updatedev | 2 +-
lib/Netdot/REST.pm | 27 +++++++++++++++++++++++++--
5 files changed, 29 insertions(+), 6 deletions(-)
hooks/post-receive
--
Netdot
------------------------------
Message: 3
Date: Tue, 28 Apr 2015 06:41:19 -0700
From: [email protected]
Subject: [Netdot-devel] [SCM] Netdot branch master updated.
netdot-1.0.7-10-g384ea0f
To: [email protected]
Message-ID: <[email protected]>
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Netdot".
The branch, master has been updated
via 384ea0f332c93403af088e90487424d8647b1312 (commit)
via 146101e2ed71487930be6feb6245658b7f0d8c2d (commit)
from 8b01e0b0f27e6fa4ca1e7036e6eac327d984a918 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
-----------------------------------------------------------------------
Summary of changes:
htdocs/rest/devinfo | 2 +-
htdocs/rest/host | 2 +-
htdocs/rest/{devinfo => ipattr} | 29 ++++++++++++++---------------
htdocs/rest/updatedev | 2 +-
lib/Netdot/Model/Ipblock.pm | 27 +++++++++++++++++++++++++++
lib/Netdot/REST.pm | 27 +++++++++++++++++++++++++--
t/Ipblock.t | 41 ++++++++++++++++++++++++++++++++++++++++-
7 files changed, 109 insertions(+), 21 deletions(-)
copy htdocs/rest/{devinfo => ipattr} (52%)
hooks/post-receive
--
Netdot
------------------------------
Message: 4
Date: Tue, 28 Apr 2015 07:05:19 -0700
From: [email protected]
Subject: [Netdot-devel] [Netdot - Bug #1857] (New) Perl warnings when
running updatedevice on a Juniper switch
To: [email protected]
Message-ID: <[email protected]>
Content-Type: text/plain; charset=utf-8
Issue #1857 has been reported by Carlos Vicente.
----------------------------------------
Bug #1857: Perl warnings when running updatedevice on a Juniper switch
https://osl.uoregon.edu/redmine/issues/1857
Author: Carlos Vicente
Status: New
Priority: Normal
Assignee: Carlos Vicente
Category: DeviceManagement
Target version: 1.0.8
Resolution:
<pre>
Use of uninitialized value $vid in hash element at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1085.
Use of uninitialized value $vid in exists at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1080.
Use of uninitialized value $vid in hash element at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1085.
Use of uninitialized value $vid in exists at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1080.
Use of uninitialized value $vid in hash element at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1085.
Use of uninitialized value $vid in exists at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1080.
Use of uninitialized value $vid in hash element at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1085.
Use of uninitialized value $vid in exists at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1080.
Use of uninitialized value $vid in hash element at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1085.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
</pre>
--
You have received this notification because you have either subscribed to it,
or are involved in it.
To change your notification preferences, please click here:
http://osl.uoregon.edu/redmine/my/account
------------------------------
Message: 5
Date: Tue, 28 Apr 2015 07:09:58 -0700
From: [email protected]
Subject: [Netdot-devel] [SCM] Netdot branch netdot-1.0 updated.
netdot-1.0.7-11-g684b354
To: [email protected]
Message-ID: <[email protected]>
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Netdot".
The branch, netdot-1.0 has been updated
via 684b354b377615639d3e4085db88402544eacbb7 (commit)
from 384ea0f332c93403af088e90487424d8647b1312 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 684b354b377615639d3e4085db88402544eacbb7
Author: Carlos Vicente <[email protected]>
Date: Tue Apr 28 10:09:47 2015 -0400
Fix for #1857 (Perl warnings when running updatedevice on a Juniper switch)
diff --git a/lib/Netdot/Model/Device.pm b/lib/Netdot/Model/Device.pm
index ddbe3d5..02cf2ba 100644
--- a/lib/Netdot/Model/Device.pm
+++ b/lib/Netdot/Model/Device.pm
@@ -1077,6 +1077,7 @@ sub get_snmp_info {
# These are all the vlans that are enabled on this port.
if ( my $vm = $hashes{'i_vlan_membership'}->{$iid} ){
foreach my $vid ( @$vm ){
+ next unless $vid; # we've seen undef's
if ( exists $IGNOREDVLANS{$vid} ){
$logger->debug(sub{"Device::get_snmp_info: $args{host} VLAN
$vid ignored ".
"per configuration option
(IGNOREVLANS)"});
diff --git a/lib/Netdot/Model/Interface.pm b/lib/Netdot/Model/Interface.pm
index e53045d..3dfb9a7 100644
--- a/lib/Netdot/Model/Interface.pm
+++ b/lib/Netdot/Model/Interface.pm
@@ -496,7 +496,7 @@ sub snmp_update {
foreach my $newvlan ( keys %{ $info->{vlans} } ){
my $vid = $info->{vlans}->{$newvlan}->{vid} || $newvlan;
- next if $vid == 0;
+ next unless $vid;
my $vname = $info->{vlans}->{$newvlan}->{vname};
my $vo;
my %vdata;
-----------------------------------------------------------------------
Summary of changes:
lib/Netdot/Model/Device.pm | 1 +
lib/Netdot/Model/Interface.pm | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
hooks/post-receive
--
Netdot
------------------------------
Message: 6
Date: Tue, 28 Apr 2015 07:10:29 -0700
From: [email protected]
Subject: [Netdot-devel] [SCM] Netdot branch master updated.
netdot-1.0.7-11-g684b354
To: [email protected]
Message-ID: <[email protected]>
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Netdot".
The branch, master has been updated
via 684b354b377615639d3e4085db88402544eacbb7 (commit)
from 384ea0f332c93403af088e90487424d8647b1312 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
-----------------------------------------------------------------------
Summary of changes:
lib/Netdot/Model/Device.pm | 1 +
lib/Netdot/Model/Interface.pm | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
hooks/post-receive
--
Netdot
------------------------------
Message: 7
Date: Tue, 28 Apr 2015 07:38:32 -0700
From: [email protected]
Subject: [Netdot-devel] [Netdot - Bug #1857] (Resolved) Perl warnings
when running updatedevice on a Juniper switch
To: [email protected]
Message-ID: <[email protected]>
Content-Type: text/plain; charset=utf-8
Issue #1857 has been updated by Carlos Vicente.
Status changed from New to Resolved
Resolution set to fixed
----------------------------------------
Bug #1857: Perl warnings when running updatedevice on a Juniper switch
https://osl.uoregon.edu/redmine/issues/1857#change-3284
Author: Carlos Vicente
Status: Resolved
Priority: Normal
Assignee: Carlos Vicente
Category: DeviceManagement
Target version: 1.0.8
Resolution: fixed
<pre>
Use of uninitialized value $vid in hash element at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1085.
Use of uninitialized value $vid in exists at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1080.
Use of uninitialized value $vid in hash element at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1085.
Use of uninitialized value $vid in exists at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1080.
Use of uninitialized value $vid in hash element at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1085.
Use of uninitialized value $vid in exists at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1080.
Use of uninitialized value $vid in hash element at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1085.
Use of uninitialized value $vid in exists at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1080.
Use of uninitialized value $vid in hash element at
/usr/local/netdot/lib/Netdot/Model/Device.pm line 1085.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
Argument "" isn't numeric in numeric eq (==) at
/usr/local/netdot/lib/Netdot/Model/Interface.pm line 499.
</pre>
--
You have received this notification because you have either subscribed to it,
or are involved in it.
To change your notification preferences, please click here:
http://osl.uoregon.edu/redmine/my/account
------------------------------
Message: 8
Date: Tue, 28 Apr 2015 07:38:54 -0700
From: [email protected]
Subject: [Netdot-devel] [Netdot - Bug #1855] (Resolved) Apache 2.4 API
change
To: [email protected]
Message-ID: <[email protected]>
Content-Type: text/plain; charset=utf-8
Issue #1855 has been updated by Carlos Vicente.
Status changed from New to Resolved
Resolution set to fixed
----------------------------------------
Bug #1855: Apache 2.4 API change
https://osl.uoregon.edu/redmine/issues/1855#change-3285
Author: Carlos Vicente
Status: Resolved
Priority: Normal
Assignee: Carlos Vicente
Category: RestAPI
Target version: 1.0.8
Resolution: fixed
<pre>
sub remote_ip
{
my $self = shift;
if ($self->{request}->connection->can("remote_ip")) {
$self->{request}->connection->remote_ip; # 2.2
} else {
$self->{request}->connection->client_ip; # 2.4
}
}
</pre>
Usage:
replace $self->{request}->connection->remote_ip
or $rest->{request}->connection->remote_ip with
$self->remote_ip or $rest->remote_ip.
--
You have received this notification because you have either subscribed to it,
or are involved in it.
To change your notification preferences, please click here:
http://osl.uoregon.edu/redmine/my/account
------------------------------
_______________________________________________
Netdot-devel mailing list
[email protected]
https://osl.uoregon.edu/mailman/listinfo/netdot-devel
End of Netdot-devel Digest, Vol 97, Issue 8
*******************************************