[Pkg-net-snmp-commits] r225 - branches/net-snmp54-dev/debian/patches trunk/debian/patches

anders-guest at alioth.debian.org anders-guest at alioth.debian.org
Wed Feb 13 22:37:11 UTC 2008


Author: anders-guest
Date: 2008-02-13 22:37:10 +0000 (Wed, 13 Feb 2008)
New Revision: 225

Modified:
   branches/net-snmp54-dev/debian/patches/25_duplicate_iftable.patch
   trunk/debian/patches/25_duplicate_iftable.patch
Log:
adjust patch #25 to latest SVN changes

Modified: branches/net-snmp54-dev/debian/patches/25_duplicate_iftable.patch
===================================================================
--- branches/net-snmp54-dev/debian/patches/25_duplicate_iftable.patch	2008-01-29 16:26:54 UTC (rev 224)
+++ branches/net-snmp54-dev/debian/patches/25_duplicate_iftable.patch	2008-02-13 22:37:10 UTC (rev 225)
@@ -1,52 +1,7 @@
-diff -ur net-snmp-5.3.0.1/agent/mibgroup/if-mib/data_access/interface.c net-snmp-5.3.0.1-dynamic-if-fix/agent/mibgroup/if-mib/data_access/interface.c
---- net-snmp-5.3.0.1/agent/mibgroup/if-mib/data_access/interface.c	2005-10-29 05:21:16.000000000 +0200
-+++ net-snmp-5.3.0.1-dynamic-if-fix/agent/mibgroup/if-mib/data_access/interface.c	2006-06-29 11:55:29.213757052 +0200
-@@ -464,8 +464,13 @@
-         DEBUGMSGTL(("access:interface:ifIndex", "saved ifIndex %d for %s\n",
-                     index, name));
-     }
--    else
--        netsnmp_assert(index == tmp);
-+    else {
-+       if(index != tmp) {
-+	  se_remove_value_from_slist("interfaces", name);
-+	  se_add_pair_to_slist("interfaces", strdup(name), index);
-+	  DEBUGMSGTL(("access:interface:ifIndex", "ifname %s, old index %d, already existing, replaced with %d\n", name, tmp, index));
-+       }      
-+    }
- }
- 
- /**
-diff -ur net-snmp-5.3.0.1/agent/mibgroup/if-mib/ifTable/ifTable_data_access.c net-snmp-5.3.0.1-dynamic-if-fix/agent/mibgroup/if-mib/ifTable/ifTable_data_access.c
---- net-snmp-5.3.0.1/agent/mibgroup/if-mib/ifTable/ifTable_data_access.c	2005-12-06 18:44:11.000000000 +0100
-+++ net-snmp-5.3.0.1-dynamic-if-fix/agent/mibgroup/if-mib/ifTable/ifTable_data_access.c	2006-06-29 11:30:42.847486426 +0200
-@@ -235,8 +235,21 @@
- _add_new_interface(netsnmp_interface_entry *ifentry,
-                    netsnmp_container *container)
- {
--    ifTable_rowreq_ctx *rowreq_ctx;
--
-+    ifTable_rowreq_ctx *rowreq_ctx, *container_entry;
-+    netsnmp_iterator *ctxit;
-+    ctxit = CONTAINER_ITERATOR(container);
-+    container_entry = ITERATOR_FIRST(ctxit);
-+
-+    for(; container_entry; container_entry = ITERATOR_NEXT(ctxit)) {
-+	if(!strcmp(ifentry->name, container_entry->data.ifName) && \
-+	    ifentry->index != container_entry->data.ifentry->index) {
-+		DEBUGMSGTL(("ifTable:access", "removing old entry %s (index %d != %d)\n",
-+		    container_entry->data.ifName, container_entry->data.ifentry->index, ifentry->index));
-+		    se_remove_value_from_slist("interfaces", container_entry->data.ifName);
-+		CONTAINER_REMOVE(container, container_entry);
-+		ifTable_release_rowreq_ctx(container_entry);
-+		}
-+    }
-     DEBUGMSGTL(("ifTable:access", "creating new entry\n"));
- 
-     /*
-diff -ur net-snmp-5.3.0.1/snmplib/snmp_enum.c net-snmp-5.3.0.1-dynamic-if-fix/snmplib/snmp_enum.c
---- net-snmp-5.3.0.1/snmplib/snmp_enum.c	2005-02-09 20:46:09.000000000 +0100
-+++ net-snmp-5.3.0.1-dynamic-if-fix/snmplib/snmp_enum.c	2006-06-26 06:14:10.884859703 +0200
+Index: snmplib/snmp_enum.c
+===================================================================
+--- snmplib/snmp_enum.c	(Revision 16802)
++++ snmplib/snmp_enum.c	(Arbeitskopie)
 @@ -213,6 +213,27 @@
      return SE_DNE;              /* XXX: um, no good solution here */
  }
@@ -95,3 +50,52 @@
  int
  se_find_free_value_in_slist(const char *listname)
  {
+Index: agent/mibgroup/if-mib/ifTable/ifTable_data_access.c
+===================================================================
+--- agent/mibgroup/if-mib/ifTable/ifTable_data_access.c	(Revision 16802)
++++ agent/mibgroup/if-mib/ifTable/ifTable_data_access.c	(Arbeitskopie)
+@@ -266,8 +266,21 @@
+ _add_new_interface(netsnmp_interface_entry *ifentry,
+                    netsnmp_container *container)
+ {
+-    ifTable_rowreq_ctx *rowreq_ctx;
++    ifTable_rowreq_ctx *rowreq_ctx, *container_entry;
++    netsnmp_iterator *ctxit;
++    ctxit = CONTAINER_ITERATOR(container);
++    container_entry = ITERATOR_FIRST(ctxit);
+ 
++    for(; container_entry; container_entry = ITERATOR_NEXT(ctxit)) {
++	if(!strcmp(ifentry->name, container_entry->data.ifName) && \
++	    ifentry->index != container_entry->data.ifentry->index) {
++		DEBUGMSGTL(("ifTable:access", "removing old entry %s (index %d != %d)\n",
++		    container_entry->data.ifName, container_entry->data.ifentry->index, ifentry->index));
++		    se_remove_value_from_slist("interfaces", container_entry->data.ifName);
++		CONTAINER_REMOVE(container, container_entry);
++		ifTable_release_rowreq_ctx(container_entry);
++		}
++    }
+     DEBUGMSGTL(("ifTable:access", "creating new entry\n"));
+ 
+     /*
+Index: agent/mibgroup/if-mib/data_access/interface.c
+===================================================================
+--- agent/mibgroup/if-mib/data_access/interface.c	(Revision 16802)
++++ agent/mibgroup/if-mib/data_access/interface.c	(Arbeitskopie)
+@@ -467,14 +467,9 @@
+     }
+     else
+         if (index != tmp) {
+-            static int logged = 0;
+-            if (!logged) {
+-                snmp_log(LOG_ERR, "IfIndex of an interface changed. Such " \
+-                         "interfaces will appear multiple times in IF-MIB.\n");
+-                logged = 1;
+-            }
+-            DEBUGMSGTL(("access:interface:ifIndex", "index %d != tmp for %s\n",
+-                         index, name));
++            se_remove_value_from_slist("interfaces", name);
++            se_add_pair_to_slist("interfaces", strdup(name), index);
++            DEBUGMSGTL(("access:interface:ifIndex", "ifname %s, old index %d, already existing, replaced with %d\n", name, tmp, index));
+         }
+ }
+ 

Modified: trunk/debian/patches/25_duplicate_iftable.patch
===================================================================
--- trunk/debian/patches/25_duplicate_iftable.patch	2008-01-29 16:26:54 UTC (rev 224)
+++ trunk/debian/patches/25_duplicate_iftable.patch	2008-02-13 22:37:10 UTC (rev 225)
@@ -1,52 +1,7 @@
-diff -ur net-snmp-5.3.0.1/agent/mibgroup/if-mib/data_access/interface.c net-snmp-5.3.0.1-dynamic-if-fix/agent/mibgroup/if-mib/data_access/interface.c
---- net-snmp-5.3.0.1/agent/mibgroup/if-mib/data_access/interface.c	2005-10-29 05:21:16.000000000 +0200
-+++ net-snmp-5.3.0.1-dynamic-if-fix/agent/mibgroup/if-mib/data_access/interface.c	2006-06-29 11:55:29.213757052 +0200
-@@ -464,8 +464,13 @@
-         DEBUGMSGTL(("access:interface:ifIndex", "saved ifIndex %d for %s\n",
-                     index, name));
-     }
--    else
--        netsnmp_assert(index == tmp);
-+    else {
-+       if(index != tmp) {
-+	  se_remove_value_from_slist("interfaces", name);
-+	  se_add_pair_to_slist("interfaces", strdup(name), index);
-+	  DEBUGMSGTL(("access:interface:ifIndex", "ifname %s, old index %d, already existing, replaced with %d\n", name, tmp, index));
-+       }      
-+    }
- }
- 
- /**
-diff -ur net-snmp-5.3.0.1/agent/mibgroup/if-mib/ifTable/ifTable_data_access.c net-snmp-5.3.0.1-dynamic-if-fix/agent/mibgroup/if-mib/ifTable/ifTable_data_access.c
---- net-snmp-5.3.0.1/agent/mibgroup/if-mib/ifTable/ifTable_data_access.c	2005-12-06 18:44:11.000000000 +0100
-+++ net-snmp-5.3.0.1-dynamic-if-fix/agent/mibgroup/if-mib/ifTable/ifTable_data_access.c	2006-06-29 11:30:42.847486426 +0200
-@@ -235,8 +235,21 @@
- _add_new_interface(netsnmp_interface_entry *ifentry,
-                    netsnmp_container *container)
- {
--    ifTable_rowreq_ctx *rowreq_ctx;
--
-+    ifTable_rowreq_ctx *rowreq_ctx, *container_entry;
-+    netsnmp_iterator *ctxit;
-+    ctxit = CONTAINER_ITERATOR(container);
-+    container_entry = ITERATOR_FIRST(ctxit);
-+
-+    for(; container_entry; container_entry = ITERATOR_NEXT(ctxit)) {
-+	if(!strcmp(ifentry->name, container_entry->data.ifName) && \
-+	    ifentry->index != container_entry->data.ifentry->index) {
-+		DEBUGMSGTL(("ifTable:access", "removing old entry %s (index %d != %d)\n",
-+		    container_entry->data.ifName, container_entry->data.ifentry->index, ifentry->index));
-+		    se_remove_value_from_slist("interfaces", container_entry->data.ifName);
-+		CONTAINER_REMOVE(container, container_entry);
-+		ifTable_release_rowreq_ctx(container_entry);
-+		}
-+    }
-     DEBUGMSGTL(("ifTable:access", "creating new entry\n"));
- 
-     /*
-diff -ur net-snmp-5.3.0.1/snmplib/snmp_enum.c net-snmp-5.3.0.1-dynamic-if-fix/snmplib/snmp_enum.c
---- net-snmp-5.3.0.1/snmplib/snmp_enum.c	2005-02-09 20:46:09.000000000 +0100
-+++ net-snmp-5.3.0.1-dynamic-if-fix/snmplib/snmp_enum.c	2006-06-26 06:14:10.884859703 +0200
+Index: snmplib/snmp_enum.c
+===================================================================
+--- snmplib/snmp_enum.c	(Revision 16802)
++++ snmplib/snmp_enum.c	(Arbeitskopie)
 @@ -213,6 +213,27 @@
      return SE_DNE;              /* XXX: um, no good solution here */
  }
@@ -95,3 +50,52 @@
  int
  se_find_free_value_in_slist(const char *listname)
  {
+Index: agent/mibgroup/if-mib/ifTable/ifTable_data_access.c
+===================================================================
+--- agent/mibgroup/if-mib/ifTable/ifTable_data_access.c	(Revision 16802)
++++ agent/mibgroup/if-mib/ifTable/ifTable_data_access.c	(Arbeitskopie)
+@@ -266,8 +266,21 @@
+ _add_new_interface(netsnmp_interface_entry *ifentry,
+                    netsnmp_container *container)
+ {
+-    ifTable_rowreq_ctx *rowreq_ctx;
++    ifTable_rowreq_ctx *rowreq_ctx, *container_entry;
++    netsnmp_iterator *ctxit;
++    ctxit = CONTAINER_ITERATOR(container);
++    container_entry = ITERATOR_FIRST(ctxit);
+ 
++    for(; container_entry; container_entry = ITERATOR_NEXT(ctxit)) {
++	if(!strcmp(ifentry->name, container_entry->data.ifName) && \
++	    ifentry->index != container_entry->data.ifentry->index) {
++		DEBUGMSGTL(("ifTable:access", "removing old entry %s (index %d != %d)\n",
++		    container_entry->data.ifName, container_entry->data.ifentry->index, ifentry->index));
++		    se_remove_value_from_slist("interfaces", container_entry->data.ifName);
++		CONTAINER_REMOVE(container, container_entry);
++		ifTable_release_rowreq_ctx(container_entry);
++		}
++    }
+     DEBUGMSGTL(("ifTable:access", "creating new entry\n"));
+ 
+     /*
+Index: agent/mibgroup/if-mib/data_access/interface.c
+===================================================================
+--- agent/mibgroup/if-mib/data_access/interface.c	(Revision 16802)
++++ agent/mibgroup/if-mib/data_access/interface.c	(Arbeitskopie)
+@@ -467,14 +467,9 @@
+     }
+     else
+         if (index != tmp) {
+-            static int logged = 0;
+-            if (!logged) {
+-                snmp_log(LOG_ERR, "IfIndex of an interface changed. Such " \
+-                         "interfaces will appear multiple times in IF-MIB.\n");
+-                logged = 1;
+-            }
+-            DEBUGMSGTL(("access:interface:ifIndex", "index %d != tmp for %s\n",
+-                         index, name));
++            se_remove_value_from_slist("interfaces", name);
++            se_add_pair_to_slist("interfaces", strdup(name), index);
++            DEBUGMSGTL(("access:interface:ifIndex", "ifname %s, old index %d, already existing, replaced with %d\n", name, tmp, index));
+         }
+ }
+ 




More information about the Pkg-net-snmp-commits mailing list