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. [Netdot - Bug #1816] (Resolved) LLDP issues with  Netgear
      switches ([email protected])
   2. [SCM] Netdot branch netdot-1.0 updated.
      netdot-1.0.6-78-gf842d9a ([email protected])
   3. [SCM] Netdot branch master updated.       netdot-1.0.6-78-gf842d9a
      ([email protected])
   4. [SCM] Netdot annotated tag netdot-1.0.7 created.  netdot-1.0.7
      ([email protected])


----------------------------------------------------------------------

Message: 1
Date: Mon, 8 Dec 2014 12:16:48 -0800
From: [email protected]
Subject: [Netdot-devel] [Netdot - Bug #1816] (Resolved) LLDP issues
        with    Netgear switches
To: [email protected], [email protected]
Message-ID: <[email protected]>
Content-Type: text/plain; charset=utf-8


Issue #1816 has been updated by Carlos Vicente.

Status changed from New to Resolved
Assignee set to Carlos Vicente
Target version set to 1.0.7
Resolution set to fixed


----------------------------------------
Bug #1816: LLDP issues with Netgear switches
https://osl.uoregon.edu/redmine/issues/1816#change-3258

Author: Brian Candler
Status: Resolved
Priority: Normal
Assignee: Carlos Vicente
Category: 
Target version: 1.0.7
Resolution: fixed


There are problems getting LLDP link relationships with Netgear switches.

Part of this is a problem with SNMP::Info. This is reported at
http://sourceforge.net/p/snmp-info/mailman/snmp-info-users/thread/53ABF242.30703%40pobox.com/#msg32507476
which includes detailed dumps of the SNMP MIBs.

But in summary it's down to the meaning of ifDescr, ifAlias and ifName as 
compared to LLDP "PortId" and "PortDesc".

The Netgear reports lldp{Rem,Loc}PortID as a string like "1/0/1" which matches 
ifName (not ifDescr or IfAlias), and the PortDesc is an optional user-entered 
comment (in my case sometimes I enter the name of the device this port is 
linked to). Example:

<pre>
iso.0.8802.1.1.2.1.3.7.1.3.45 = STRING: "1/0/45"   #lldpLocPortId
iso.0.8802.1.1.2.1.3.7.1.4.45 = STRING: "wrn-sw11" #lldpLocPortDesc

IF-MIB::ifDescr.45 = STRING: Unit: 1 Slot: 0 Port: 45 Gigabit - Level
IF-MIB::ifAlias.45 = STRING: wrn-sw11
IF-MIB::ifName.45 = STRING: 1/0/45
</pre>

This all seems pretty reasonable and standards-compliant behaviour. SNMP::Info 
was instead trying to map the lldpLocPortDesc (which is blank if the user 
hasn't entered any comment) against the ifDescr and ifAlias, and was giving 
arbitrary results. The mail pointed above includes patches to fix this.

However this still leaves some problems with Netdot.

<pre>
DEBUG - Topology::get_dp_links: Cannot find neighbor interface using 
20:4e:7f:7b:d5:e0
WARN - Topology::get_dp_links: wrn-sw11.int.example.net [Unit: 1 Slot: 0 Port: 
1 10G - Level]: Port 1/0/45 not found in Device: wrn-coresw1.int.example.net
</pre>

The general problem seems to be that dp_remote_port is "1/0/45" which needs to 
be matched against ifName on the other device, but as far as I can see, ifName 
is not actually stored in the interface table.

<pre>
*************************** 1. row ***************************
       admin_duplex: NULL
       admin_status: up
           auto_dns: 1
bpdu_filter_enabled: 0
 bpdu_guard_enabled: 0
            circuit: NULL
        contactlist: NULL
        description: NULL
             device: 5
               dlci: NULL
         doc_status: snmp
          down_from: NULL
         down_until: NULL
       dp_remote_id: 74:44:01:8d:56:e0
       dp_remote_ip: 192.168.0.10
     dp_remote_port: 1/0/1
     dp_remote_type: XSM7224S - 24-Port 10G SFP+ Layer 2 Stackable Managed 
Switch with four 10G combo ports
                 id: 2116
          ignore_ip: 0
               info: NULL
               jack: NULL
          jack_char: NULL
 loop_guard_enabled: 0
          monitored: 0
      monitorstatus: 3
               name: Unit: 1 Slot: 0 Port: 45 Gigabit - Level
           neighbor: 8
     neighbor_fixed: 0
    neighbor_missed: 0
             number: 45
        oper_duplex: NULL
        oper_status: up
    overwrite_descr: 0
           physaddr: 759128
          room_char: NULL
 root_guard_enabled: 0
       snmp_managed: 1
              speed: 1000000000
             stp_id: NULL
               type: ethernet-csmacd
</pre>

The "name" column appears to come from ifDescr currently.

I can think of two solutions.

(1) if ifName is non-empty, store it in the database instead of ifDescr. That 
is a change of behavior and might break other things. On a Cisco I have handy:

<pre>
IF-MIB::ifDescr.1 = STRING: GigabitEthernet0/0/0
IF-MIB::ifName.1 = STRING: Gi0/0/0
</pre>

(actually I'd prefer the shorter name to be used in the GUI anyway)

(2)  Add another column for ifName. This is arguably the Right Thing but is a 
schema change. Then it would require more changes in the searching code - 
whenever looking for an interface try ifName in addition to ifDescr. And it has 
to be decided whether ifDescr or ifName is displayed in the GUI (selectable 
globally? per device type?)




-- 
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: 2
Date: Mon, 8 Dec 2014 12:18:02 -0800
From: [email protected]
Subject: [Netdot-devel] [SCM] Netdot branch netdot-1.0 updated.
        netdot-1.0.6-78-gf842d9a
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  f842d9a4e0084069e7018e20062cf71e451376f3 (commit)
       via  8ae77e4c481f2aa0ad49428f7d1e188fb3fe7872 (commit)
       via  eed802794738089a3b045e3d837e835a882a99b4 (commit)
       via  aaf22abcec78e81a7bbecb3a2e0879505f09182c (commit)
       via  1493d5f86d100bb5f982fa810006e06188e45fac (commit)
       via  70eed0210016607842f3470ed5ea1aa39c92b243 (commit)
       via  9e3f03356048cecb9d90786e82d45e4c50e9967d (commit)
       via  b46a1494e44de94acaf27025a8344df32b4f92bb (commit)
       via  00ee8e55ac185ad9a7cbbeacb4281c30d76c03f1 (commit)
      from  2649c2837387f88b549fe3d62fa149c5124fb406 (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 f842d9a4e0084069e7018e20062cf71e451376f3
Author: Carlos Vicente <[email protected]>
Date:   Mon Dec 8 15:16:22 2014 -0500

    Bumping version to 1.0.7

diff --git a/lib/Netdot.pm b/lib/Netdot.pm
index c6806c9..5ca6873 100644
--- a/lib/Netdot.pm
+++ b/lib/Netdot.pm
@@ -40,11 +40,11 @@ Netdot - Network Documentation Tool
 
 =head1 VERSION
 
-Version 1.0.6
+Version 1.0.7
 
 =cut
 
-our $VERSION = "1.0.6";
+our $VERSION = "1.0.7";
 
 =head1 SYNOPSIS
 
diff --git a/upgrade/updatedb b/upgrade/updatedb
index 9942bff..3a5e3d0 100644
--- a/upgrade/updatedb
+++ b/upgrade/updatedb
@@ -36,6 +36,7 @@ if ( $schema_version eq '1.0.1' ){
     &upg_103_104();
     &upg_104_105();
     &upg_105_106();
+    &upg_106_107();
     
 }elsif ( $schema_version eq '1.0.2' ){
     
@@ -43,21 +44,29 @@ if ( $schema_version eq '1.0.1' ){
     &upg_103_104();
     &upg_104_105();
     &upg_105_106();
+    &upg_106_107();
     
 }elsif ( $schema_version eq '1.0.3' ){
     
     &upg_103_104();
     &upg_104_105();
     &upg_105_106();
+    &upg_106_107();
 
 }elsif ( $schema_version eq '1.0.4' ){
     
     &upg_104_105();
     &upg_105_106();
+    &upg_106_107();
     
 }elsif ( $schema_version eq '1.0.5' ){
     
     &upg_105_106();
+    &upg_106_107();
+    
+}elsif ( $schema_version eq '1.0.6' ){
+    
+    &upg_106_107();
     
 }else{
     die "Unsupported version for this upgrade: $schema_version\n";
@@ -326,3 +335,8 @@ sub upg_104_105 {
 sub upg_105_106 {
     push @statements, "UPDATE schemainfo SET version='1.0.6' WHERE id=1;",
 }
+
+#########################################################################
+sub upg_106_107 {
+    push @statements, "UPDATE schemainfo SET version='1.0.7' WHERE id=1;",
+}

commit 8ae77e4c481f2aa0ad49428f7d1e188fb3fe7872
Author: Carlos Vicente <[email protected]>
Date:   Mon Dec 8 15:15:15 2014 -0500

    Fix for #1816 (LLDP issues with Netgear switches)

diff --git a/lib/Netdot/Topology.pm b/lib/Netdot/Topology.pm
index 8300fdf..ad9901d 100644
--- a/lib/Netdot/Topology.pm
+++ b/lib/Netdot/Topology.pm
@@ -388,7 +388,9 @@ sub get_dp_links {
        my ($h, @ints, $rem_dev, $rem_int, $iface);
        if ( ($h = $macs2ints->{$mac}) && (ref($h) eq 'HASH') && (@ints = keys 
%$h) ){
            if ( scalar(@ints) > 1 ){
-               #There are multiple interfaces using $mac. Ignore
+               # There are multiple interfaces using $mac. Ignore
+               $logger->debug("Topology::_find_by_mac: $str used by 
".scalar(@ints).
+                              " interfaces, ignoring");
            }elsif ( my $dev = $base_macs->{$mac} ){
                # this means that this mac is also a base_mac 
                # don't set rem_int because it would most likely be wrong
@@ -400,6 +402,8 @@ sub get_dp_links {
                if ( $iftype eq 'propVirtual' || $iftype eq '53' ||
                     $iftype eq 'l2vlan' || $iftype eq '135' ){
                    # Ignore virtual interfaces, but do set the remote device
+                   $logger->debug("Topology::_find_by_mac: $str is a virtual 
interface ".
+                                  "and does not identify the port");
                }else{
                    # This should be good then
                    $rem_int = $iface;

commit eed802794738089a3b045e3d837e835a882a99b4
Author: Carlos Vicente <[email protected]>
Date:   Mon Dec 8 14:37:48 2014 -0500

    Fix for #1799 (typo in lib/Netdot/Model.pm in get_digest())

diff --git a/lib/Netdot/Model.pm b/lib/Netdot/Model.pm
index 345b90f..009c86e 100644
--- a/lib/Netdot/Model.pm
+++ b/lib/Netdot/Model.pm
@@ -937,7 +937,7 @@ sub get_audit_records {
   Returns:
     MD5 digest of object's data
   Examples:
-    my %digest = $obj->get_state_digest;
+    my %digest = $obj->get_digest;
 
 =cut
 

commit aaf22abcec78e81a7bbecb3a2e0879505f09182c
Author: Carlos Vicente <[email protected]>
Date:   Mon Dec 8 14:33:22 2014 -0500

    Fix for #1801 (1.0.6 upgrade script error)

diff --git a/upgrade/updatedb b/upgrade/updatedb
index a374d86..9942bff 100644
--- a/upgrade/updatedb
+++ b/upgrade/updatedb
@@ -208,12 +208,13 @@ sub upg_104_105 {
        push @statements, "INSERT INTO asn (number) SELECT DISTINCT bgplocalas 
FROM device WHERE bgplocalas IS NOT NULL;";
 
        push @statements, "ALTER TABLE device MODIFY bgplocalas bigint;";
-       push @statements, "ALTER TABLE device ADD CONSTRAINT `fk_bgplocalas` 
FOREIGN KEY (`bgplocalas`) ".
-           "REFERENCES `asn` (`id`);";
        push @statements, "CREATE INDEX bgplocalas ON device (bgplocalas);";
 
        push @statements, "UPDATE device,asn SET device.bgplocalas=asn.id WHERE 
device.bgplocalas=asn.number;"; 
 
+       push @statements, "ALTER TABLE device ADD CONSTRAINT `fk_bgplocalas` 
FOREIGN KEY (`bgplocalas`) ".
+           "REFERENCES `asn` (`id`);";
+
        push @statements, "ALTER TABLE bgppeering ADD COLUMN contactlist 
bigint;";
        push @statements, "ALTER TABLE bgppeering ADD CONSTRAINT 
`fk_contactlist_bgppeering` FOREIGN KEY (`contactlist`) ".
            "REFERENCES `contactlist` (`id`);";

commit 1493d5f86d100bb5f982fa810006e06188e45fac
Author: Carlos Vicente <[email protected]>
Date:   Mon Dec 8 14:26:48 2014 -0500

    Fix for #1826 (Support for package staging

diff --git a/Makefile b/Makefile
index 9f35f06..c644765 100644
--- a/Makefile
+++ b/Makefile
@@ -8,6 +8,7 @@ SRCROOT := $(shell pwd)
 #
 PERL        ?= /usr/bin/perl
 PREFIX      ?= /usr/local/netdot
+STAGEDIR    ?= $(PREFIX)
 APACHEUSER  ?= apache
 APACHEGROUP ?= apache
 MAKE        ?= make
@@ -23,6 +24,7 @@ usage:
        @echo 
        @echo "   PERL          = $(PERL)"
        @echo "   PREFIX        = $(PREFIX)"
+       @echo "   STAGEDIR      = $(STAGEDIR)"
        @echo "   APACHEUSER    = $(APACHEUSER)"
        @echo "   APACHEGROUP   = $(APACHEGROUP)"
        @echo "   MAKE          = $(MAKE)"
@@ -88,14 +90,14 @@ dir:
        @echo "Creating necessary directories..."
        echo $(PREFIX) > ./.prefix
        for dir in $(DIR); do \
-           if test -d $(PREFIX)/$$dir; then \
-              echo "Skipping dir $(PREFIX)/$$dir; already exists"; \
+           if test -d $(STAGEDIR)/$$dir; then \
+              echo "Skipping dir $(STAGEDIR)/$$dir; already exists"; \
            else \
-              mkdir -m $(DMOD) -p $(PREFIX)/$$dir ; \
+              mkdir -m $(DMOD) -p $(STAGEDIR)/$$dir ; \
            fi ; \
        done
-       chown -R $(APACHEUSER):$(APACHEGROUP) $(PREFIX)/tmp
-       chmod 750 $(PREFIX)/tmp
+       chown -R $(APACHEUSER):$(APACHEGROUP) $(STAGEDIR)/tmp
+       chmod 750 $(STAGEDIR)/tmp
 
 htdocs:
        cd $@ ; $(MAKE) all DIR=$@ 
diff --git a/doc/Makefile b/doc/Makefile
index 8228a39..b9819a6 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -11,8 +11,8 @@ all: dir
        $(substitute)
 
        for dir in $(NDIR); do \
-         chown $(APACHEUSER):$(APACHEGROUP) $(PREFIX)/$(DIR)/$$dir; \
-         chmod 0755 $(PREFIX)/$(DIR)/$$dir; \
+         chown $(APACHEUSER):$(APACHEGROUP) $(STAGEDIR)/$(DIR)/$$dir; \
+         chmod 0755 $(STAGEDIR)/$(DIR)/$$dir; \
        done
 
 # This section creates the doc/ subdirs
diff --git a/etc/utility-Makefile b/etc/utility-Makefile
index a0ac158..4749849 100644
--- a/etc/utility-Makefile
+++ b/etc/utility-Makefile
@@ -41,7 +41,7 @@ define substitute
 for file in $(FILES); do\
   $(SED) -r $(REPLACEMENT_EXPRESSIONS) $$file\
     > $$file.tmp;\
-  install -m $(FMOD) $$file.tmp $(PREFIX)/$(DIR)/$$file;\
+  install -m $(FMOD) $$file.tmp $(STAGEDIR)/$(DIR)/$$file;\
   rm -rf $$file.tmp;\
 done
 @echo "Done."
@@ -51,10 +51,10 @@ endef
 define mkdirs
 @echo "Creating necessary directories..."
 for dir in $(NDIR); do \
-    if test -d $(PREFIX)/$(DIR)/$$dir; then \
-       echo "Skipping dir $(PREFIX)/$(DIR)/$$dir; already exists"; \
+    if test -d $(STAGEDIR)/$(DIR)/$$dir; then \
+       echo "Skipping dir $(STAGEDIR)/$(DIR)/$$dir; already exists"; \
     else \
-       mkdir -m $(DMOD) -p $(PREFIX)/$(DIR)/$$dir ; \
+       mkdir -m $(DMOD) -p $(STAGEDIR)/$(DIR)/$$dir ; \
     fi ; \
 done
 @echo "Done."
@@ -64,6 +64,6 @@ endef
 # left hanging around
 define wipedir
 @echo "Wiping out directory before installing"
-rm -fr $(PREFIX)/$(DIR)
+rm -fr $(STAGEDIR)/$(DIR)
 @echo "done"
 endef
diff --git a/export/Makefile b/export/Makefile
index f03614f..f1bfce5 100644
--- a/export/Makefile
+++ b/export/Makefile
@@ -11,8 +11,8 @@ all: dir
        $(substitute)
 
        for dir in $(NDIR); do \
-         chown $(APACHEUSER):$(APACHEGROUP) $(PREFIX)/$(DIR)/$$dir; \
-         chmod 0755 $(PREFIX)/$(DIR)/$$dir; \
+         chown $(APACHEUSER):$(APACHEGROUP) $(STAGEDIR)/$(DIR)/$$dir; \
+         chmod 0755 $(STAGEDIR)/$(DIR)/$$dir; \
        done
 
 # This section creates the export/ subdirs
diff --git a/htdocs/Makefile b/htdocs/Makefile
index 2e5b8a6..50b4de8 100644
--- a/htdocs/Makefile
+++ b/htdocs/Makefile
@@ -9,7 +9,7 @@ FILES := `find . -name "*" | egrep 
".*(rest\/.*|handler|\.?html|\.css|\.png|\.gi
 
 all: wipedir dir
        $(substitute)
-       ln -s $(PREFIX)/doc/manual/netdot-manual.htm  
$(PREFIX)/$(DIR)/help/manual.html
+       ln -s $(STAGEDIR)/doc/manual/netdot-manual.htm  
$(STAGEDIR)/$(DIR)/help/manual.html
 
 # Wipe out dir before installing
 wipedir:
@@ -20,10 +20,10 @@ dir:
        $(mkdirs)
 
        @echo "Hacking together mason permissions fix..."
-       touch $(PREFIX)/$(DIR)/masondata/obj/.__obj_create_marker
-       chown -R $(APACHEUSER):$(APACHEGROUP) $(PREFIX)/$(DIR)/masondata
-       chmod 0755 $(PREFIX)/$(DIR)/masondata
+       touch $(STAGEDIR)/$(DIR)/masondata/obj/.__obj_create_marker
+       chown -R $(APACHEUSER):$(APACHEGROUP) $(STAGEDIR)/$(DIR)/masondata
+       chmod 0755 $(STAGEDIR)/$(DIR)/masondata
 # Graphs can be updated dynamically so apache needs +w
-       chown $(APACHEUSER):$(APACHEGROUP) $(PREFIX)/$(DIR)/img/graphs
-       chmod 0750 $(PREFIX)/$(DIR)/img/graphs
+       chown $(APACHEUSER):$(APACHEGROUP) $(STAGEDIR)/$(DIR)/img/graphs
+       chmod 0750 $(STAGEDIR)/$(DIR)/img/graphs
 
diff --git a/var/Makefile b/var/Makefile
index 28a4aab..6e5cc67 100644
--- a/var/Makefile
+++ b/var/Makefile
@@ -13,7 +13,7 @@ include $(SRCROOT)/etc/utility-Makefile
 POLLSTATSRRD = pollstats.rrd
 
 all: 
-       if ! test -r $(PREFIX)/$(DIR)/$(POLLSTATSRRD); then \
+       if ! test -r $(STAGEDIR)/$(DIR)/$(POLLSTATSRRD); then \
          rrdtool create $(POLLSTATSRRD) -s 3600 \
          DS:ips:GAUGE:7200:0:4294967296 \
          DS:macs:GAUGE:7200:0:4294967296 \
@@ -24,5 +24,5 @@ all:
          RRA:AVERAGE:0.5:24:365 \
          RRA:MAX:0.5:24:30 \
          RRA:MIN:0.5:24:30; \
-         install -m $(FMOD) $(POLLSTATSRRD) $(PREFIX)/$(DIR)/$(POLLSTATSRRD); \
+         install -m $(FMOD) $(POLLSTATSRRD) 
$(STAGEDIR)/$(DIR)/$(POLLSTATSRRD); \
        fi;

commit 70eed0210016607842f3470ed5ea1aa39c92b243
Author: Carlos Vicente <[email protected]>
Date:   Mon Dec 8 10:24:02 2014 -0500

    Fix for #1802 (uninitialized value {"bridge_priority"} in 
/lib/Netdot/Model/Device.pm)

diff --git a/lib/Netdot/Model/Device.pm b/lib/Netdot/Model/Device.pm
index 4217928..5ac555f 100644
--- a/lib/Netdot/Model/Device.pm
+++ b/lib/Netdot/Model/Device.pm
@@ -5876,7 +5876,7 @@ sub _update_stp_info {
            }
            # Finally, just get the priority
            $uargs{bridge_priority} = 
$info->{stp_instances}->{$instn}->{stp_priority};
-           if ( defined $stpinst->bridge_priority && 
+           if ( defined $stpinst->bridge_priority && defined 
$uargs{bridge_priority} &&
                 $stpinst->bridge_priority ne $uargs{bridge_priority} ){
                $logger->warn(sprintf("%s: STP instance %s: Bridge Priority 
Changed: %s -> %s", 
                                      $host, $stpinst->number, 
$stpinst->bridge_priority, 

commit 9e3f03356048cecb9d90786e82d45e4c50e9967d
Author: Carlos Vicente <[email protected]>
Date:   Wed Dec 3 14:26:00 2014 -0500

    Fix for #1837 (Add an 'audit' tab in ip.html)

diff --git a/htdocs/management/ip.html b/htdocs/management/ip.html
index 1ffbbc5..9c947ea 100644
--- a/htdocs/management/ip.html
+++ b/htdocs/management/ip.html
@@ -940,7 +940,6 @@ if ( $edit ){
   </div>
 <!-- End Display Custom Attributes -->
 
-
 %################################################################
 <!-- Display ARP -->
 <%perl>
@@ -979,6 +978,19 @@ if ( $edit ){
 %     }
 <!-- End Display ARP -->
 
+%################################################################
+% my @audit = $o->get_audit_records;
+% if ( @audit ){
+<!-- Display Audit Records -->
+  <div class="container">
+    <div class="containerheadleft"><strong>Audit Records</strong></div>
+    <div class="containerheadright">&nbsp;</div>
+    <div class="containerbody">
+        <& /generic/sortresults.mhtml, object=>\@audit, view=>"row" &>
+    </div>
+  </div>
+<!-- End Display Audit Records -->
+% }
 </div>
 
 %} else {     
@@ -1059,6 +1071,11 @@ if ( $edit ){
 %         } else {
               <li><a href="ip.html?id=<% $id 
%>&view=Comments">Comments</a></li>
 %         }
+%         if( $view eq "Audit" ) {
+              <li><span>Audit</span></li>
+%         } else {
+              <li><a href="ip.html?id=<% $id %>&view=Audit">Audit</a></li>
+%         }
 %         if( $view eq "All" ) {
               <li><span>All</span></li>
 %         } else {
@@ -1480,7 +1497,22 @@ print $tmp{value};
 
     </div>
 </div>
+% }
 
+%################################################################
+%# Audit records
+%################################################################
+% if ( $view eq 'Audit' || $view eq 'All' ){
+%    my @audit = $o->get_audit_records();
+<div class="container">
+    <div class="containerheadleft">
+        Audit
+    </div>
+    <div class="containerheadright">&nbsp</div>
+ <div class="containerbody">
+    <& /generic/sortresults.mhtml, object => \@audit , view => "row" &>
+ </div>
+</div>
 % }
 
 
@@ -1727,6 +1759,7 @@ if ( $_action eq 'VIEW_ADD_RIGHTS' ){
 % }
 %}
 
+
 %################################################################
 %# Graphical Views
 %################################################################

commit b46a1494e44de94acaf27025a8344df32b4f92bb
Author: Carlos Vicente <[email protected]>
Date:   Wed Dec 3 09:02:47 2014 -0500

    Fix for #1838 (Deleting circuits delete fiber strands)

diff --git a/etc/netdot.meta b/etc/netdot.meta
index ce1a275..cc33903 100644
--- a/etc/netdot.meta
+++ b/etc/netdot.meta
@@ -971,7 +971,7 @@ $meta = {
         description => 'ID of the circuit which this strand is a part of',
         length => '',
         linksto => {
-          cascade => 'Delete',
+          cascade => 'Nullify',
           method => 'strands',
           table => 'Circuit'
         },

commit 00ee8e55ac185ad9a7cbbeacb4281c30d76c03f1
Author: Carlos Vicente <[email protected]>
Date:   Wed Dec 3 08:59:04 2014 -0500

    Fix for #1842 (Ipblock::_validate() does not take 'Use network/broadcast?' 
into account)

diff --git a/lib/Netdot/Model/Ipblock.pm b/lib/Netdot/Model/Ipblock.pm
index 6f97236..ecc0713 100644
--- a/lib/Netdot/Model/Ipblock.pm
+++ b/lib/Netdot/Model/Ipblock.pm
@@ -3068,8 +3068,12 @@ sub _validate {
            if ( $self->is_address() ){
                if ( $pstatus eq "Reserved" ){
                    $self->throw_user($self->get_label.": Address allocations 
not allowed under Reserved blocks");
-               }elsif ( $pstatus eq 'Subnet' && $self->version == 4 && 
$parent->prefix != 31 ){
-                   if ( $self->address eq $parent->address ){
+               }elsif ( $pstatus eq 'Subnet' ){
+                   if ( $self->address eq $parent->address &&
+                        !$parent->use_network_broadcast &&
+                        (($self->version == 4 && $parent->prefix != 31) ||
+                         ($self->version == 6 && $parent->prefix != 127))
+                       ){
                        $self->throw_user(sprintf("IP cannot have same address 
as its subnet: %s == %s", 
                                                  $self->address, 
$parent->address));
                    }

-----------------------------------------------------------------------

Summary of changes:
 Makefile                    | 12 +++++++-----
 doc/Makefile                |  4 ++--
 etc/netdot.meta             |  2 +-
 etc/utility-Makefile        | 10 +++++-----
 export/Makefile             |  4 ++--
 htdocs/Makefile             | 12 ++++++------
 htdocs/management/ip.html   | 35 ++++++++++++++++++++++++++++++++++-
 lib/Netdot.pm               |  4 ++--
 lib/Netdot/Model.pm         |  2 +-
 lib/Netdot/Model/Device.pm  |  2 +-
 lib/Netdot/Model/Ipblock.pm |  8 ++++++--
 lib/Netdot/Topology.pm      |  6 +++++-
 upgrade/updatedb            | 19 +++++++++++++++++--
 var/Makefile                |  4 ++--
 14 files changed, 91 insertions(+), 33 deletions(-)


hooks/post-receive
-- 
Netdot


------------------------------

Message: 3
Date: Mon, 8 Dec 2014 12:18:58 -0800
From: [email protected]
Subject: [Netdot-devel] [SCM] Netdot branch master updated.
        netdot-1.0.6-78-gf842d9a
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  f842d9a4e0084069e7018e20062cf71e451376f3 (commit)
       via  8ae77e4c481f2aa0ad49428f7d1e188fb3fe7872 (commit)
       via  eed802794738089a3b045e3d837e835a882a99b4 (commit)
       via  aaf22abcec78e81a7bbecb3a2e0879505f09182c (commit)
       via  1493d5f86d100bb5f982fa810006e06188e45fac (commit)
       via  70eed0210016607842f3470ed5ea1aa39c92b243 (commit)
       via  9e3f03356048cecb9d90786e82d45e4c50e9967d (commit)
       via  b46a1494e44de94acaf27025a8344df32b4f92bb (commit)
       via  00ee8e55ac185ad9a7cbbeacb4281c30d76c03f1 (commit)
       via  2649c2837387f88b549fe3d62fa149c5124fb406 (commit)
       via  bdaf2529e8898311eac50bad9bf23f550baf5d72 (commit)
      from  bb6e660c11226373e753f33d85f3c83db90842f0 (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:
 Makefile                    | 12 +++++++-----
 doc/Makefile                |  4 ++--
 etc/netdot.meta             |  2 +-
 etc/utility-Makefile        | 10 +++++-----
 export/Makefile             |  4 ++--
 htdocs/Makefile             | 12 ++++++------
 htdocs/management/ip.html   | 35 ++++++++++++++++++++++++++++++++++-
 lib/Netdot.pm               |  4 ++--
 lib/Netdot/Model.pm         |  2 +-
 lib/Netdot/Model/Device.pm  |  5 +++--
 lib/Netdot/Model/Ipblock.pm |  8 ++++++--
 lib/Netdot/Topology.pm      |  6 +++++-
 upgrade/updatedb            | 19 +++++++++++++++++--
 var/Makefile                |  4 ++--
 14 files changed, 93 insertions(+), 34 deletions(-)


hooks/post-receive
-- 
Netdot


------------------------------

Message: 4
Date: Mon, 8 Dec 2014 12:22:39 -0800
From: [email protected]
Subject: [Netdot-devel] [SCM] Netdot annotated tag netdot-1.0.7
        created.        netdot-1.0.7
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 annotated tag, netdot-1.0.7 has been created
        at  d28932400b4439d34ac7f17e70391b5cb30eb648 (tag)
   tagging  f842d9a4e0084069e7018e20062cf71e451376f3 (commit)
  replaces  netdot-1.0.6
 tagged by  Carlos Vicente
        on  Mon Dec 8 15:22:30 2014 -0500

- Log -----------------------------------------------------------------
New release of 1.0 branch

Brian Candler (11):
      Apache 2.4 compatibility
      Fix topo devices with same short_name
      Add as_canon Graphviz format
      Update graph edge directions for device topo
      Add 'minlen' option for topo graphs
      Add line length setting in device topo view
      Options for rebuilding whole topo graphs
      Uncomment LoadModule for apache 2.2
      Swap head/tail on "up" links
      Assignment of colors to VLANs
      Better debugging in get_tree_stp_links

Carlos Vicente (63):
      Remove references to history tables
      Fixed bug in rest/host when updating ethernet address of host given the 
Ipblock id
      Fix several issues affecting REST operations for non-admin users
      Allow operator users to update their password
      Add title to audit section in view.html
      Avoid warning from Device.pm  when snmp_target not set
      Avoid error when inserting device if snmp_target is not set for whatever 
reason
      Sort report by site name
      Minor fix in error message
      Typo
      Avoid Perl warning
      Merge pull request #16 from candlerb/candlerb/1808
      Merge branch 'master' of github.com:cvicente/Netdot
      Fix for #1814 - Avoid Perl warning from _assign_base_mac()
      Fixes for #1817 (missing dependencies)
      Merge pull request #19 from candlerb/candlerb/1817
      Merge pull request #17 from candlerb/candlerb/1822
      Fixes for #1818
      Merge pull request #20 from candlerb/candlerb/1821
      Merge pull request #21 from candlerb/candlerb/1822bis
      Fix for #1791 (Exclude static IP information from prune_db.pl's IP 
address pruning)
      Fix for #1809 (UI bug when viewing BGP peers)
      Fix for #1809 (UI bug when viewing BGP peers)
      Merge pull request #22 from candlerb/candlerb/1827
      Merge remote-tracking branch '42wim/fix-1765' into fix-1790
      Merge branch 'master' of github.com:cvicente/Netdot into netdot-1.0
      Merge remote-tracking branch '42wim/fix-1790' into fix-1790
      Merge pull request #23 from candlerb/candlerb/1831
      Load APR::Base64 in DataCache.pm
      When deleting RRADDR record, do not try to set IP status to available 
unless status is 'Static'
      Allow rest/host to insert new record when IP is given but subnet is not
      Fix bug where only v4 tree would be rebuilt when specifying 'all' 
(William Bulley)
      Fixed bug that produced mismatched IP tree in cache
      Use single quotes in SQL to avoid Pg error
      When importing zone data from Web UI, allow user to specify whether 
corresponding PTR records should be inserted/updated
      Try to create the SubnetVlan relationship in L3 devices that use 
sub-interfaces
      Do not throw exception for invalid VID in Vlan::search
      Show BGP peers even if local AS is not set
      First draft of new rest/updatedev resource for entering device 
information via REST
      Forgot to add new file
      Allow 'make installdb' to work even if DB_DBA_PASSWORD is not set in the 
config file
      Correction
      Added .gitignore
      Fix incorrect use of config variable in ASN class
      Discover device within a transaction when using rest/updatedev
      Merge branch 'update_device_api' into netdot-1.0
      Merge pull request #27 from 42wim/feature-nonameoverwrite
      Merge branch 'master' into netdot-1.0
      Minor corrections
      Do not count 'Available' addresses in subnet when showing utilization. 
Improved query. Updated tests to reflect chantes in Default.conf
      Avoid 'RR already exists' error when discovering a device which happens 
DNS resolution fails
      Disable editing buttons for Audit records
      Work around bug where IP address shows as decimal for some reason
      Merge pull request #28 from Krakozaber/master
      Fix for #1842 (Ipblock::_validate() does not take 'Use 
network/broadcast?' into account)
      Fix for #1838 (Deleting circuits delete fiber strands)
      Fix for #1837 (Add an 'audit' tab in ip.html)
      Fix for #1802 (uninitialized value {"bridge_priority"} in 
/lib/Netdot/Model/Device.pm)
      Fix for #1826 (Support for package staging
      Fix for #1801 (1.0.6 upgrade script error)
      Fix for #1799 (typo in lib/Netdot/Model.pm in get_digest())
      Fix for #1816 (LLDP issues with Netgear switches)
      Bumping version to 1.0.7

Krakozaber (1):
      Update Device.pm

Wim (3):
      fix #1790 by using base64 encoding
      fix for 1765
      only update when name is different

-----------------------------------------------------------------------


hooks/post-receive
-- 
Netdot


------------------------------

_______________________________________________
Netdot-devel mailing list
[email protected]
https://osl.uoregon.edu/mailman/listinfo/netdot-devel


End of Netdot-devel Digest, Vol 93, Issue 4
*******************************************

Reply via email to