components/net-snmp/patches/042.17758422.patch
author Jiri Sasek <Jiri.Sasek@Oracle.COM>
Wed, 27 Jan 2016 18:45:20 -0800
changeset 5398 f499dad29f21
parent 1800 a9e784d06f31
permissions -rw-r--r--
22662663 samba: Uprev to 4.1.22 22526544 problem in UTILITY/SAMBA 22526597 problem in UTILITY/SAMBA 22526577 problem in UTILITY/SAMBA

This has been fixed in upstream version 5.7.2 (see README).
http://sourceforge.net/p/net-snmp/code/ci/4d38895f459a1df24f68c4a60e4caf6a778d8c1f

--- a/agent/mibgroup/agent/extend.c
+++ b/agent/mibgroup/agent/extend.c
@@ -473,10 +473,21 @@ extend_parse_config(const char *token, char *cptr)
             
     } else if (!strcmp( token, "sh"   ) ||
                !strcmp( token, "exec" )) {
-        if ( num_compatability_entries == max_compatability_entries )
+        if ( num_compatability_entries == max_compatability_entries ) {
             /* XXX - should really use dynamic allocation */
-            config_perror("No further UCD-compatible entries" );
-        else
+            netsnmp_old_extend *new_compatability_entries;
+            new_compatability_entries = realloc(compatability_entries,
+                             max_compatability_entries*2*sizeof(netsnmp_old_extend));
+            if (!new_compatability_entries)
+                config_perror("No further UCD-compatible entries" );
+            else {
+                memset(new_compatability_entries+num_compatability_entries, 0,
+                        sizeof(netsnmp_old_extend)*max_compatability_entries);
+                max_compatability_entries *= 2;
+                compatability_entries = new_compatability_entries;
+            }
+        }
+        if (num_compatability_entries != max_compatability_entries)
             compatability_entries[
                 num_compatability_entries++ ].exec_entry = extension;
     }