-
Notifications
You must be signed in to change notification settings - Fork 61
/
CHANGES
2028 lines (1915 loc) · 105 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
This file contains a list of specific bugs that have been fixed, and patches
that have been applied in released versions. Please see the NEWS file for
a summary of the major changes, and the ChangeLog file for a comprehensive
listing of all changes made to the code.
*5.7.1*
snmplib:
- Fix a crash that could be
- tweak patch 3044888 to restore
snmpd:
- [PATCH 3386633]: fix integer overflow in disk percent calculations
- Make
- Restore storage tables on Linux
- run signal handlers when select()
snmptrapd:
- Add missing newline
- Invoke shutdown_perl() when
building:
- [PATCH 3383951]: Fix -Wunused compile warnings with FreeBSD/NetBSD
Signed-off-by: Wes Hardaker <[email protected]>
- build fix
- build fix for systems lacking
libnetsnmp:
- [PATCH 3387139]: from
man:
- [PATCH 3312861]: Man pages
testing:
- Changed
- Check PID file existence after having read it instead of before.
This fixes the race condition where the PID file disappeared after
the existence check and before it was read.
- Make the SNMP_VERBOSE=1 output even more verbose.
unspecified:
- minor NEWS polish
Perl:
- Remove file perl/NetSNMP.xs
Win32:
- Add support for
- Document how to build 64-bit
- Documented how to use build.bat with
- winExtDLL: Invoke
Windows:
- Avoid that if
- Remove outdated instructions about
*5.7*
snmplib:
- Added function netsnmp_delete_table_data_set().
- Added function netsnmp_delete_table_data_set(). Added declaration
for the function netsnmp_table_data_delete_table() in a public
agent header file.
- Added function netsnmp_delete_table_data_set(). Added declaration
for the function netsnmp_table_data_delete_table() in a public
agent header file. Fixed memory leak in
netsnmp_table_data_delete_table().
- Added function netsnmp_delete_table_data_set(). Added declaration
for the function netsnmp_table_data_delete_table() in a public
agent header file. Fixed memory leak in
netsnmp_table_data_delete_table(). Fixed memory leak triggered by
unregistering a table handler.
- Added macro netsnmp_static_assert().
- Added netsnmp_mib_handler.data_clone, a function pointer that
defines how to clone netsnmp_mib_handler.myvoid. Must be defined if
and only if data_free is set. The function netsnmp_handler_dup()
does now clone MIB handler private data if data_clone() is set.
Previously after duplicating a MIB handler and unregistering one of
the two MIB handlers, the private data pointer (myvoid) of the
other became a dangling pointer. Note: addition of
netsnmp_mib_handler.data_clone is an ABI change.
- Added snmp_sess_session_lookup().
- Added the function netsnmp_check_definedness(), which helps to find
the cause of undefined value errors as reported by Valgrind.
- Avoid that Valgrind complains about uninitialized data for the
buffers returned by netsnmp_callback_recv() and
netsnmp_callback_hook_build().
- Be const correct over calls to str* functions.
- Changed the argument type of debug_register_tokens() from char *
into const char *.
- Check that the argument to netsnmp_transport_copy is non-NULL
- Check the return value of strdup in netsnmp_create_data_list and
fail if strdup fails.
- Correct the extern "C" declarations to be consistent. Remove
commented out code.
- Fenner: fix sending of UDP responses from multihomed agents. Try to
send the response as it was before Net-SNMP 5.6 (assuming the
appropriate request was unicast) and only if it fails try to set
if_index (the request must be broadcast).
- Fixed bugs in asn_parse_unsigned_int64(),
asn_build_unsigned_int64(), asn_parse_signed_int64() and
asn_build_signed_int64(). Most but not all of these bugs were
specific to 64-bit systems. Fixes bug #3093199.
- Fixed memory leak triggered by calling se_add_pair_to_list() with a
value that already existed in the list.
- Invoking se_clear_slist() does no longer create a dangling pointer.
- Invoking se_clear_slist() does no longer create a dangling pointer.
Fixed leaks-at-exit triggered by using the snmp_enum code.
- Invoking se_clear_slist() does no longer create a dangling pointer.
Fixed leaks-at-exit triggered by using the snmp_enum code.
Documented behavior of se_add_pair(), se_add_pair_to_slist() and
clear_snmp_enum(). Made snmp_enum example consistent with the rest
of the code by adding strdup() calls and added a call to
se_clear_all_lists().
- Invoking se_clear_slist() does no longer create a dangling pointer.
Fixed leaks-at-exit triggered by using the snmp_enum code.
Documented behavior of se_add_pair(), se_add_pair_to_slist() and
clear_snmp_enum(). Made snmp_enum example consistent with the rest
of the code by adding strdup() calls and added a call to
se_clear_all_lists(). Fixed a memory corruption problem triggered
by the (undocumented) snmpd.conf "enum" keyword handler - storing
pointers to strings allocated on the stack in a global list does
not work.
- Remove the support for CMU compatibility since there is no way to
enable it and nobody have missed it.
- [BUG 3134323]: Fix crash when comparing invalid OIDs
- [PATCH 3165878]: Catch buffer overrun on 64-bit systems
- [PATCH 3195537]: Minor binary_array container sort optimization
- [PATCH 3203806]: Add the function netsnmp_large_select().
- [PATCH 3203806]: Make netsnmp_large_fd_set_resize() clear all
relevant file descriptors.
- [PATCH 3203806]: Minor performance optimization of
netsnmp_large_fd_set_resize().
- add IPv6 support to DTLSUDP transport
- add IPv6 support to DTLSUDP transport use new
netsnmp_sockaddr_storage in netsnmp_addr_pair
- add IPv6 support to DTLSUDP transport use new
netsnmp_sockaddr_storage in netsnmp_addr_pair add base_transport
ptr for tunneled transports
- add more openssl error cases where we check for local cert
- add new transport config tokens localCert/peerCert, deprecate
our_identity, their_identity
- add optional support for local DNSSEC validation of hostnames -
optional at configure time: --with-local-dnssec-validation -
requires DNSSEC-Tool validation libraries - initial support, for
systems with getaddrinfo. support for additional resolver
interfaces coming soon. - also TODO: flag for ignoring validatoin
errors (log & continue)
- dont return empty array
- force a ; at the end of the static_assert macro.
- introduce new localCert/peerCert, deprecate serverCert, clientCert,
defX509ServerPub, defX509ClientPub
- netsnmp_handler_dup(): freeing the duplicated handler no longer
causes a crash (double free) when handler->myvoid of the original
handler was non-NULL.
- realloc+init instead of calloc inspired by patch 3195532 from
Stephen Hemminger
- refine cert debugging; remove unused function
- remove inline versions of container funcs
- snmp_shutdown(): added call to netsnmp_certs_shutdown().
- 0 Applied the intent of patch 3044888 to allow applications to read
the error messages of a MIB parsing failure.
- Fixed a memory leak in snmp_free_session().
- [BUG 3184697]: Don't reference internal MD5 when it's explicitly
disabled
- [BUG 3234754]: Ensure old f_create_from_tstring hook is initialized
to NULL
- [BUG 3264852]: Recognise missing report types
(snmp{Unavailable,Unknown}Contexts,snmpUnknownPDUHandlers)
- _mibindex_add() no longer reads past the end of the dynamically
allocated array _mibindexes.
- [BUG 3151845]: fix multiple registrations of snmp transport handler
snmp:
- patch: 3096725: sysORTable registation for notification log mib
original patch fixed several issues, other parts applied earlier
snmpd:
- Add missing function declaration
- Added functions netsnmp_handler_owns_tabreq(),
netsnmp_registration_owns_tabreq(), netsnmp_iterator_clone().
Exported netsnmp_table_registration_info_clone().
- Added functions netsnmp_handler_owns_tabreq(),
netsnmp_registration_owns_tabreq(), netsnmp_iterator_clone().
Exported netsnmp_table_registration_info_clone(). Modified
netsnmp_iterator_delete_table() such that it frees the table
registration information stored in a table iterator too. Modified
netsnmp_get_table_iterator_handler() such that the table iterator
passed to this function is freed when the associated handler is
freed. Restored the behavior of netsnmp_get_table_handler() to that
of r19449, that is, not setting up the data_free pointer because
not all callers of netsnmp_get_table_handler() expect that table
registration information is freed when the associated handler is
freed.
- Added netsnmp_get_table_iterator2().
- Added netsnmp_get_table_iterator2(). Added
netsnmp_register_table_iterator2().
- Added netsnmp_get_table_iterator2(). Added
netsnmp_register_table_iterator2(). Added
netsnmp_handler_owns_iterator_info().
- Added netsnmp_get_table_iterator2(). Added
netsnmp_register_table_iterator2(). Added
netsnmp_handler_owns_iterator_info(). Fixed leak-at-exit triggered
by snmpNotifyTable.
- Added netsnmp_get_table_iterator2(). Added
netsnmp_register_table_iterator2(). Added
netsnmp_handler_owns_iterator_info(). Fixed leak-at-exit triggered
by snmpNotifyTable. Fixed leak-at-exit triggered by
snmpTargetAddrTable. Also, restored backwards compatibility of
netsnmp_register_table_iterator().
- Added netsnmp_register_watched_instance2(),
netsnmp_register_watched_scalar2(), netsnmp_clone_watcher_info()
and netsnmp_owns_watcher_info(). See also the Doxygen comments for
more info.
- Added netsnmp_unregister_auto_data_table().
- Added reference count in the netsnmp_baby_steps_modes data
structure and made sure that this data structure is automatically
freed when the handler that owns it is unregistered.
- Added snmp_sess_session_lookup(). Call shutdown_master_agent() and
shutdown_agent() during shutdown.
- Added snmp_sess_session_lookup(). Call shutdown_master_agent() and
shutdown_agent() during shutdown. The function clean_subtree() does
no longer trigger double frees and invalid memory reads. Note: this
function was already wrong at the time it was introduced (patch
#724925 / r8531, July 2003).
- Added snmp_sess_session_lookup(). Call shutdown_master_agent() and
shutdown_agent() during shutdown. The function clean_subtree() does
no longer trigger double frees and invalid memory reads. Note: this
function was already wrong at the time it was introduced (patch
#724925 / r8531, July 2003). Removed a comment in
netsnmp_handler_free() that is now obsolete because of the
clean_subtree() changes.
- Added snmp_sess_session_lookup(). Call shutdown_master_agent() and
shutdown_agent() during shutdown. The function clean_subtree() does
no longer trigger double frees and invalid memory reads. Note: this
function was already wrong at the time it was introduced (patch
#724925 / r8531, July 2003). Removed a comment in
netsnmp_handler_free() that is now obsolete because of the
clean_subtree() changes. Modified netsnmp_deregister_agent_nsap()
such that it never examines sessions that already have been closed.
It is for this change that it was necessary to introduce the new
function snmp_sess_session_lookup().
- Added the functions netsnmp_duplicate_variable() and
netsnmp_cache_handler_owns_cache().
- Added the functions netsnmp_duplicate_variable() and
netsnmp_cache_handler_owns_cache(). Memory allocated by
netsnmp_register_old_api() for storing SNMP variables is now freed
when the associated handler is unregistered.
- Added the functions netsnmp_duplicate_variable() and
netsnmp_cache_handler_owns_cache(). Memory allocated by
netsnmp_register_old_api() for storing SNMP variables is now freed
when the associated handler is unregistered. Callback function data
deallocation does no longer free the memory allocated for the
AgentX session - the memory that was allocated for AgentX sessions
is now deallocated just as that for any other session. This fixes a
leak-at-exit.
- Added the functions netsnmp_duplicate_variable() and
netsnmp_cache_handler_owns_cache(). Memory allocated by
netsnmp_register_old_api() for storing SNMP variables is now freed
when the associated handler is unregistered. Callback function data
deallocation does no longer free the memory allocated for the
AgentX session - the memory that was allocated for AgentX sessions
is now deallocated just as that for any other session. This fixes a
leak-at-exit. Notify filter table: Callback function data
deallocation does no longer free the data in *
*snmpNotifyFilterTable_if_ctx.container - this is now done by
shutdown_snmpNotifyFilterTable() and
- Automatically free the private data structure allocated by
netsnmp_container_table_handler_get().
- Builds with most recent MinGW (having #define localtime_r).
- Count the number of users of a netsnmp_cache data structure instead
of duplicating it.
- Declare the OID argument type of MIB registration functions as
'const oid *' instead of 'oid *' since these functions do not
modify the OID.
- Do not leak the limits of scalar_group objects on shutdown.
- Extend the documentation for data_clone and data_free
- Factor out common config_add_mib statments
- Find out whether librpm is available before configuring the agent
modules because host/data/access/swinst needs symbol HAVE_LIBRPM.
As a result, configure has to be run only once instead of twice to
enable the hrSWInstalled table on systems that have librpm.
- Fixed a double free at exit that was triggered by cleaning up the
data structures used for embedded Perl support.
- Fixed a year-2038 bug in the implementation of ipRouteTable.
- Introduced netsnmp_pid_t.
- MIB-specific leak-at-exit fixes.
- Make it possible to copy watched data items without memory leaks.
- Make the setting of the argvrestart* variables optional on
USING_UTIL_FUNCS_RESTART_MODULE.
- Make the setting of the argvrestart* variables optional on
USING_UTIL_FUNCS_RESTART_MODULE. Remove util_funcs/restart from the
requirement sets of util_funcs and default_modules.
- Make the setting of the argvrestart* variables optional on
USING_UTIL_FUNCS_RESTART_MODULE. Remove util_funcs/restart from the
requirement sets of util_funcs and default_modules. Add
util_funcs/restart to the requirement set of ucd-snmp/versioninfo.
- Patch 3141462: from fenner: fix agentx subagent issues with
multiple-object requests
- Patch from Niels to fix VACM persistant storage.
- Remove unused variable cmp
- Remove util_funcs/Exit from the requirement sets of util_funcs and
default_modules.
- Remove util_funcs/Exit from the requirement sets of util_funcs and
default_modules. Never use Exit to terminate the agent.
- Removing the last cache via netsnmp_cache_remove() does no longer
trigger a crash.
- Update the length of sysObjectID as well as the data when it is set
from a configuration file.
- Use the same autoconf symbol to decide both if strcasecmp should be
declared and if it should be defined.
- [BUG 1840230]: Don't include the index object as
(pseudo-)accessible column.
- [BUG 3058101]: Writeable 'long' instances work on 64-bit systems,
but not writable 'int's
- [BUG 3062538]: Fix com2sec* handling of non-default contexts
- [BUG 3205765]: handle reconfig for certSecName token
- [BUG ]: enforce max length on TLS secName maps
- [BUG ]: enforce max length on TLS secName maps add priority to
secname debugging
- [PATCH 2119725]: Fix skipNFSInHostResources handling of
hrStorageTable
- [PATCH 2941811]: Handle successful requests with reqID 0
- [PATCH 2975254]: Avoid callback re-use of closed sessions Qn:
Should this also be applied when main session is NULL?
- [PATCH 3053436]: from: takevos: fix: tcpConnectionTable_data_access
invalid memory access
- [PATCH 3057090]: make ethtool support on linux use the high speed
struct info for 100G+.
- [PATCH 3057093]: allow linux to use libpci for creating useful
ifDescr strings
- [PATCH 3096725]: Don't register v1Trap callback, if SNMPv1 is not
supported
- [PATCH 3096725]: Include SNMPv1 trap OIDs in nlmLogNotificationID
column
- [PATCH 312596]: listen for netlink change events for the
arp-related tables
- [PATCH 3152412]: Handle (and report) problems reading /proc/vmstat
- [PATCH 3203806]: Avoid that the main agent processing loop - when
using more than FD_SETSIZE file descriptors - can cause memory
corruption by invoking select().
- [PATCH ]: optimizations for large route tables from Stephen
Hemminger applied parts 1-3 of 4 from him (msgs to coders on
2/28/11; subject ip-forward-mib performance improvements; part 4
needs more work
- add debug for cert find hint as string/int
- add newly created/destroyed interfaces to ipv6IfTable The list of
interfaces was never refreshed, now it is reloaded every time the
table is accessed. I've also fixed a memory leak and optimized the
loading of the list a bit.
- com2sec6 directive: If configure has not found getaddrinfo(),
non-numeric IPv6 addresses do now trigger an error message.
- don't second-guess cache handler (waves hand) this is not the
function you are looking for. netsnmp_cache_is_valid() is not meant
for mib modules
- example MIB: Added shutdown function that frees all memory owned by
this MIB implementation.
- fix double free in TLS error handling
- fixed the agent writing 'looks like a 64bit wrap, but prev!=new' in
syslog when computing ipSystemStats Without the memcpy,
prev_vals->stats and new_vals->stats could get different, which
could much much later (when a counter gets bigger than 32 bits)
result in 'prev!=new' message in syslog. Typically this happens
after long time of uptime and it is very hard to reproduce.
- host/data_access/swinst_rpm: Fixed a memory leak in
netsnm_swinst_arch_init().
- host/data_access/swinst_rpm: Pass correct path to rpmdbOpen() such
that opening the database succeeds.
- host/data_access/swinst_rpm: Pass correct path to rpmdbOpen() such
that opening the database succeeds. host/data_access/swinst_rpm:
Log an error message if rpmdbOpen() fails.
- instead of relying on NETSNMP_DS_LIB_APPTYPE, break out cert table
inits to new agent cert init function, called from init_agent.
- netsnmp_cache_free(): A more detailed message is now logged when
attempting to free a cache that is still in the cache list.
- reworked hrStorageTable to support large filesystems. The
hrStorageAllocationUnits does not report real allocation unit size,
but some calculated value so hrStorageAllocationUnits *
hrStorageSize gives real size of the filesystem. This calculation
happens only when hrStorageSize is too small (32bits) for
filesystem size, e.g. filesystems larger than 8TB with 4096 bytes
block size. This calculation can be turned off by
'realStorageUnits' config option.
- skip non-AF_INET interfaces when loading ipv4 addrs
- snmpd is again single-threaded. [PATCH 2959811]: Safranek:
Reimplement Linux Netlink IPv6 prefix listener.
- Fixed memory leak in TCP-MIB tables introduced by patch #3053436.
- Fixed memory leak in TCP-MIB tables introduced by patch #3053436."
[PATCH 3053436]: from: takevos: fix: tcpConnectionTable_data_access
invalid memory access" the bug 3053436 is fixing was introduced in
r17719, and fixed in r17861.
- Use proper format specifier in debug statements for printing values
of type 'oid'.
- [PATCH 3066862]: fix the agent for comparing unsigned large indexes
of the disk and extend tables.
- fixed hrSWRunPath of swapped-out processes on Linux. fgets()
returns NULL both when /proc/PID/cmdline is empty (= swapped out)
and when the process exited after fopen(), so check
/proc/PID/status in both cases.
- fixed race condition in hrSWRunTable Treat the reads from
/proc/<pid>/* carefuly, processes can exit in the middle of
processing. (already fixed in V5-5-patches and V5-4-patches in SVN
rev. 20115, dunno why I did not patch trunk)
- patch 3131397: from takevos: huge speedups of the TCP/UDP Tables
- patch 3299384: fix INFORMs so they retry probing for an engineID.
- patch 3306476: from tinypyramids: fix memory leak in the swrun
container loading
- ucd_snmp builds again on MinGW and Cygwin.
- patch 3310250: from fenner: misc fixes for debugging output of
agentx
snmptrapd:
- Fixed a double free at exit that was triggered by cleaning up the
data structures used for embedded Perl support. Fixed a double free
at exit that was triggered by cleaning up the data structures used
for embedded Perl support. Valgrind reported that double free as
follows: Invalid read of size 4 at 0x59D0501: perl_destruct (in
/usr/lib/perl5/5.12.1/x86_64-linux-thread-multi/CORE/libperl.so) by
0x544DF8E: shutdown_perl (snmp_perl.c:166) by 0x403966:
term_handler (snmptrapd.c:318) by 0x6D43A5F: ??? (in
/lib64/libc-2.11.2.so) Address 0x7660f88 is 56 bytes inside a block
of size 2,912 free'd at 0x4C26496: free (vg_replace_malloc.c:366)
by 0x544DF9A: shutdown_perl (snmp_perl.c:167) by 0x6DDADF2:
__select_nocancel (in /lib64/libc-2.11.2.so) by 0x404E20: main
(snmptrapd.c:1258)
apps:
- [PATCH 3054817]: Adds per-variable timed output support to snmpwalk
using -CT
- add snmp.conf tokens for timeouts and retries
build:
- [BUG 3088360]: Ensure python modules are built against the correct
libraries
building:
- Fix --with-security-modules handling Allow repeated modules
(tsm,tsm) as well as defailt modules (usm) Move the generation of
the files after the checking
- Make it possible to regenerate using autoconf 2.68.
- Some systems do not support the -E flag to grep, use autoconf to
find the right egrep at all times.
- check for /dev/kmem instead of assuming it exists and hardcoding
when it is not there
libnetsnmp:
- made the SSH transport configurable as it should be.
libnetsnmpmibs:
- Make all functions in the dlmod module that don't have to be public
static
mib2c:
- [PATCH 3175323]: Fix handling of 'while (false)' blocks
- [PATCH 3204883]: Fix handling of non-table objects named fooTable
- [PATCH 3211484]: Support enumerations in notification varbinds
- make the mib2c foreach ranges work as advertised in the comments.
packaging:
- Enable micro-and-macro-feature management within Net-SNMP; this
adds a number of new flags to configure (--enable-minimalist and
--enable-read-only). These changes are designed to remove much of
the inline code that isn't always necessary or desired. Scripts
exist (and will be improved) to stip out unused components from the
code entirely to enable a shorter review process for upgrading to
new releases. This work was done by Wes Hardaker and Michael Baer
from SPARTA, Inc. but is being checked in as a large patch since
converting the micro patches from git to svn turend out to be
impossible
patch 3140833:
- fix proxy GETNEXT requests When OIDs requested are below the proxy
request remap, we need to not include any OIDs that might be in the
space between the original OID and the remapped OID. This patch
fudges the request so that it fixes the request OID so it's just
before the remapped proxy range.
patch 3184026:
- Avoid constant refresh of interface statistics
perl:
- patch 3049029: from fennec: fix a memory leak with snmp bulkwalks
- patch from Martin Buck: don't always open stderr as the calls to
snmp_log already do this and it messes up the agent when embedded
python:
- [PATCH 3185085]: Fix segfault on 64-bit systems
- [BUG 3295407]: Fix handling of void pointer
testing:
- Add missing preconditions
- Added function netsnmp_delete_table_data_set(). Added declaration
for the function netsnmp_table_data_delete_table() in a public
agent header file. Fixed memory leak in
netsnmp_table_data_delete_table(). Fixed memory leak triggered by
unregistering a table handler. Unit tests can now invoke functions
from libagent.
- Added function netsnmp_delete_table_data_set(). Added declaration
for the function netsnmp_table_data_delete_table() in a public
agent header file. Fixed memory leak in
netsnmp_table_data_delete_table(). Fixed memory leak triggered by
unregistering a table handler. Unit tests can now invoke functions
from libagent. Added unit test for table_dataset.
- Added inet_ntop() and inet_pton() unit test.
- Added netsnmp_mib_handler.data_clone, a function pointer that
defines how to clone netsnmp_mib_handler.myvoid. Must be defined if
and only if data_free is set. The function netsnmp_handler_dup()
does now clone MIB handler private data if data_clone() is set.
Previously after duplicating a MIB handler and unregistering one of
the two MIB handlers, the private data pointer (myvoid) of the
other became a dangling pointer. Note: addition of
netsnmp_mib_handler.data_clone is an ABI change. added more test
cases to the handler registration test.
- Generate a normal #line directive as per C99 instead of the
compiler-specific #<n>-directive.
- Introduced new test type next to capp and clib: cagentlib.
- It is again possible to run an individual test via the script
testing/RUNTESTS.
- It is now possible to analyze the unit tests with Valgrind by
setting the environment variables SNMP_SAVE_TMPDIR and
DYNAMIC_ANALYZER. An example: (export SNMP_SAVE_TMPDIR=yes
DYNAMIC_ANALYZER="valgrind --trace-children=yes --leak-check=full";
cd testing && ./RUNFULLTESTS -g unit-tests)
- Test 71 (com2sec6_simple) does now succeed even if IPv6 DNS
resolution is not available.
- Test T030 does now pass on MinGW.
- auto-create user specified SNMP_TMPDIR and SNMP_TMP_PERSISTENTDIR
too; default SNMP_TMP_PERSISTENDIR based on SNMP_TMPDIR for user
specified SNMP_TMPDIR
man:
- [BUG 3190725]: Document snmp{,_sess}synch_response and
snmp_async_send
Generic:
- Make it possible to build static applications using net-snmp-config
and the -*libs flags once more.
- [BUG 3102904]: All Net-SNMP C source files are now compiled with
-fno-st rict-aliasing, at least if the configured compiler supports
this flag.
- [PATCH 3074918]: from weizheng: check for CONTAINER_INSERT failures
and react appropriately to avoid memory leaks
- [PATCH 3167325]: from krisztoforo: UCD-SNMP/SystemStats: add
variables to report cpusteal, cpuguest, cpuguestnice
Cygwin:
Linux:
- [PATCH 3083027]: Fix RPM spec file to support CentOS
- [PATCH 3205811]: Option to skip fd/loop/ram devices in diskIOTable
- agent: ipNetToPhysicalTable: Do not log an error message if one or
more interfaces are present that do not have such information
(NUD_NOARP), e.g. tunnels. Reported by Stephen Hemminger. See also
patch #3107003.
- snmpd is again single-threaded.
MinGW:
- Made regression test output independent of the Net-SNMP variables
defined in the Windows registry. Some tests that failed previously
after the Net-SNMP binaries (MSVC build) had been installed do now
pass.
- configure: Detection of the functions gai_strerror(),
getaddrinfo(), gethostbyname() and gethostname() does now succeed.
- testing: If the agent has been asked to stop, wait until the snmpd
process disappeared before proceeding.
- Tests 025 and 026 pass on MinGW even if winExtDLL has been enabled.
NetBSD:
- DragonFly support [From NetBSD patch archive]
OpenBSD:
- Update SWRun code to use kvm_getproc2 [From OpenBSD patch archive]
Win32:
- Avoid that MSVC reports a warning message about redefinition of the
malloc() macro during building the Net-SNMP source code.
- Deprecated libsnmp.def - add NETSNMP_IMPORT to function
declarations instead to export a function from netsnmp.dll.
- Guard netsnmp_udp_recvfrom() etc. declarations consistently. Builds
with Visual Studio 2010.
- Introduced netsnmp_pid_t. Eliminated casts between int and HANDLE
in agent/mibgroup/util_funcs.c and
agent/mibgroup/ucd-snmp/pass_persist.c.
- When snmpd.exe is started in a command prompt window, the snmpd
process now stops upon the first key press. This makes it easier to
debug snmpd.exe for memory leaks.
- [PATCH 3085187]: Building via the Microsoft Visual Studio project
file (.dsw/.dsp) works again.
- [PATCH 3293842]: Eliminate registry argument limit of 127
characters (this limitation was reported by Sylvain Dery).
- building: Avoid that MSVC 2010 prints a warning message about
redefining EADDRINUSE.
- building: Builds now correctly with a 64-bit compiler.
- building: batch build with OpenSSL enabled and with recent OpenSSL
development files works again.
- header file <net-snmp/net-snmp-config.h> can now be used in the
MinGW environment.
- testing: Avoid that T200 fails on known Microsoft SNMP extension
DLL bugs.
- Build snmplib/transports/snmpIPv6BaseDomain.c only if
NETSNMP_ENABLE_IPV6 has been defined.
- Fixed a memory leak in the Net-SNMP (non-winExtDLL) implementation
of the MIB-II ipNetToMediaTable.
- Microsoft Visual Studio: Link with gdi32.lib if OpenSSL has been
enabled because gdi32.lib is a dependency of OpenSSL.
*5.6*
snmplib:
- Add const declarations to the disabled versions of the debugging
code as well.
- Add missing dependencies between transports.
- Add missing symbol netsnmp_snmpSSHDomain_len, make
netsnmp_snmpSSHDomain const.
- Change oid to be a 32-bit type on ILP64 and LP64 platforms.
- Change the parsing of ranges to accept all valid values.
- Correct dependencies between transports. Remove unnecessary
includes.
- Correct the spelling of __cplusplus when checking if the file
should be wrapped in extern "C".
- Do not require that the UDP transport is included.
- Fix agent crash when sending encrypted SNMPv3 traps. Reported by
Srikapilan Gandhi
- Fix responding to broadcast requests. UDP responses are sent with
source IP address which was destination of appropriate requests
(implemented in SVN rev. 15215). But if the destination of a
request is broadcast IP address, the request was sent with the
broadcast address as source. sendmsg() on Linux does not support
this and returns error -> response is not sent. In order to send
responses from the same interface, interface index of the
appropriate interface must be used.
- Install library/oid.h. Thanks to "Tomasz Lis" who spotted the bug.
- Make the context argument of send_v3trap,
send_trap_vars_with_context and netsnmp_send_traps refer to a const
char*.
- Make the name argument to find_varbind_in_list const
- Prevent gcc ped-warning for NETSNMP_REMOVE_CONST
- Remove declarations of functions that don't exist or are declared
elsewhere.
- Remove the oid typedef from <net-snmp/library/asn1.h>. It is still
present in <net-snmp/types.h>, use that file.
- Replace the debugging functions with dummies when debugging is
disabled.
- Revert 17808, instead factor out the declaration of oid to it's own
file and include that file from both types.h and asn1.h
- Use a void argument for the data argument of xdump.
- [BUG 2919320]: Avoid accessing freed memory Reported by Tomasz Lis
- [BUG 2922390]: Fix test for missing contextName parameter
- [PATCH 2871747]: plug memory leak in OID processing. The memory
leaked when small OID, which could fit pre-allocated vp->name_loc,
was placed in different (allocated) one.
- [PATCH 2942940]: Add a new function, netsnmp_parse_args, that is
like snmp_parse_args but takes an additional bitmask, flags, to
affect the behaviour. Also remove the magic handling of some
application names.
- [PATCH 2971270]: refuse to parse ASN.1 tokens with wrong type
field. This may yield to problems with third-party applications
which may depend on parsing ugly ASN.1 data - we'll see...
- add function to validate RowStatus and StorageType varbinds - also
remove some duplicate code and fix comments indent mangled
- add functions to remove list/row data from request list
- add interface for duplicating a container
- add interface for duplicating a container container changes: add
flags field to container meta-data; chg binary_array container to
use container meta-data flags
- add remove function to container iterator; implement it for
binary_array
- added the functions netsnmp_malloc(), netsnmp_calloc(),
netsnmp_realloc(), netsnmp_strdup() and netsnmp_free().
- builds again when HAVE_GETADDRINFO is not defined.
- conf files can now include other conf files - also tweaked debug
tokens here and there
- create indexes for certificates in config path
- directory container enhancements - fix potential memory leak - add
filter callback to filter files returned - add option to return
relative and not full paths - add option to sort returned list -
add option to return empty container instead of NULL if no files
found - change default container name to directory that was scanned
- tweak debug/log messages
- enhance file utils and dir utils - add optional stats struct to
netsnmp_file - generalize dir container filter, add context to
callback - add option to store netsnmp_files (w/stats) in container
instead of just name
- fix potential double free in CONTAINER_FREE - also added several
compare routines
- netsnmp_container enhancements: - add free_item function; defaults
to netsnmp_container_simple_free - add CONTAINER_FREE_ALL
macro/function (like CONTAINER_CLEAR but calls container free_item
for each item in primary container) - add ability to set options on
binary_array containers
- new certificate api to support tls/dtls
- new snmp token logOption allows specifying log destinations vi conf
files - if stderr log enabled because of no log destination, turn
it off when a log destination is enabled - don't call
netsnmp_enable_stderrlog() from apps anymore
- obsoleted NETSNMP_DS_LIB_ALARM_DONT_USE_SIG. From now on using
SIGALRM to trigger Net-SNMP alarm handlers is no longer supported.
Motivation: as known libnetsnmp supports time-based alarms via the
functions snmp_alarm_register(), run_alarms() and other functions.
Two different ways to trigger the function run_alarms() are
supported inside libnetsnmp: 1. By making sure that the timeout
argument of select() is small enough such that select() returns
before the next alarm must be handled (when the variable
NETSNMP_DS_LIB_ALARM_DONT_USE_SIG is set to one, which is the
default). 2. By making sure that the kernel fires SIGALRM at the
time when run_alarms() should be called (when the variable
NETSNMP_DS_LIB_ALARM_DONT_USE_SIG is set to zero, which has to be
configured explicitly). The following issues are associated with
the second approach: 1. Alarm functions are used inside Net-SNMP to
e.g. refresh cached table contents. As far as I can see there is
nothing in the Net-SNMP source code that prevents the following
from happening: a table refresh triggered via SIGALRM while a row
is being removed from a cached table. This can result in dangling
pointer dereferences and even a crash. 2. POSIX restricts signal
handlers to calling functions that are either reentrant or
non-interruptible
(http://www.opengroup.org/onlinepubs/009695399/functions/xsh_chap02
_04.html#tag_02_04). Standard I/O functions like printf() and
fprintf() are neither reentrant nor non-interruptible. run_alarms()
is called from inside a signal handler, which means that this
restriction applies to the function run_alarms() itself and all
functions called by it (which includes the alarm callback
functions). Or: e.g. snmp_log() and its callers must not be called
from inside run_alarms() when this function is invoked from inside
a signal handler. This is a severe restriction, and one that is
hard to work with. 3. Not all software developers know how to make
sure that signal delivery works correctly in a multithreaded
context. POSIX does not guarantee to which thread a signal like
SIGALRM will be delivered, unless that signal has been blocked
before thread creation and is unblocked after thread creation (see
also
http://www.opengroup.org/onlinepubs/009695399/functions/pthread_sig
mask.html). This is relevant for the Net-SNMP project not only
because a worker thread is created inside
agent/mibgroup/if-mib/data_access/interface_linux.c but also
because libnetsnmp is often used inside multithreaded software.
Currently no attempt is made to make sure that SIGALRM is processed
by the Net-SNMP event processing loop thread. If SIGALRM is
processed by another thread, this will result in one or more data
races. Because all the difficulties associated with processing
alarms from inside a signal handler function, and because fixing
these would require more effort than it is worth,
NETSNMP_DS_LIB_ALARM_DONT_USE_SIG has been deprecated and from now
on approach (1) is the only supported approach to trigger alarm
handlers.
- plit snmpIPBaseDomain and move the IPv4 parts to IPv4Base and the
socket generic parts to SocketBase.
- when freeing a cache, stop timer and call cache free func - also
add netsnmp_cache_remove
- new experimental simple state machine
- new experimental simple state machine new experimental row creation
API which uses a state machine to try really hard to create a row
from a given varbind list
- fix issue with USM using inactive users
- fixed potential buffer overflow when generating temp. file names
- implemented a fix for the issue reported in patch #3042770. Created
a snmp_select_info_flags function, and similar, that allow for
alarms to not be run. This is then used in the synch_response
functions to avoid 100% CPU loops
- patch: 3042770: from mehaf: Made run_alarms() reentrant
- when displaying a byte as single digit hex value, default to
prefixing with 0 unless there is a seperator or addition hint data
- 0 patch 3058645: from jorisesaturnus: modified version of the patch
to use MSG_DONTWAIT for the unix domain socket
- [PATCH 3067540]: Fix IPv4 OID indexes on 64-bit big-endian systems.
snmplib, snmpd:
- Do not check if values of type size_t are less than 0.
- Make sure that a mask is given to open when O_CREAT is specified
snmplib, snmpd, snmpnetstat:
- Add correct size prefixes when printing variables of type oid.
snmpd:
- Add support of network interfaces with HW address bigger than 6
bytes to ipNetToMediaTable and ipNetToPhysicalTable. Some HW, like
InfiniBand, uses HW addresses with 9 and more bytes. Snmpd on Linux
was not able to parse /proc/net/arp then and produced ugly 'ioctl
35123 returned -1' to log.
- Check the range of oid values towards the maximum oid value,
notULONG_MAX
- Extract the Exit and restart* subroutines from util_func in order
to make it possible to build less code for the minimal case.
- Fixed creation of views using snmpusm, OIDs with indexes > 255 are
allowed now. This reverts SVN commit #7492.
- Fixed invalid access to memory in TCP-MIB This partly reverts patch
17719 - the entries *are* used after raw_data container is freed.
These entries should be freed when associated rowreq_ctx is freed.
- Fixed logging of 'truncating integer value > 32 bits' in IP-MIB and
TCP-MIB The counters, which grow fast are now cut to 32bits.
- Fixed udpTable indexes on big-endian 64bit Linux. The index was
always '0.0.0.0' instead of real local IP address.
- Made subtree_context_cache::context_name a const char*.
- Make all the oids and oid lengths in agent_trap.c const and use
them from everywhere.
- Make the enterprise argument of netsnmp_send_traps and
send_enterprise_trap_vars const
- Only enable hostSwInst rpm support on linux hosts with librpm. This
makes it possible to build on non-rpm linux distributions.
- Removed the unused function xx_tokenize_exec_command from
utilities/execute.
- [BUG 2822360]: Fix memory leak when building table OIDs
- [BUG 2841008]: Protect against crash following failed AgentX
response
- [BUG 2873858]: Fix handling of schedOwner index. Patch provided by
Max Schubert.
- [BUG 2894059]: Handle errors when counting interfaces
- [BUG 2897000]: Suppress 32-bit counter truncation warnings.
- [BUG 2900078]: Add support for OID variables with size in elements
instead of bytes, correct sysObjectID to use this.
- [PATCH 2835576]: Fix endianness issues in pass/pass_persist
- [PATCH 2877518]: Fix handling of scoped AgentX variables
- [PATCH 2883092]: Support monitoring processes that should not be
running. Patch provided by Christian (cg75). Qn: Should this
functionality be back-ported to earlier lines?
- [PATCH 2883220]: Fix compilation problems when ifXTable is not
included.
- [PATCH 2887816]: Protect against division-by-zero crash
- [PATCH 2901029]: Fix compiler warning on CloseHandle() Endian
problems already addressed by patch #2835576
- [PATCH 2903092]: Fix broken handling of broadcast entries.
- [PATCH 2911323]: Fix agent lockup when monitoring AgentX-delegated
information
- [PATCH 2911970]: Properly terminate linked list of registrations.
Patch provided by Mirko Deckert.
- [PATCH 2956657]: Handle over-length AgentX OIDs. Patch provided by
Rob West
- [PATCH 2967400]: Retrieve error counters for the EtherLike-MIB
Patch supplied by Josef Moellers.
- [PATCH 2968642]: Catch overflow of pass-through command buffer.
Patch from Andreas Jaeger/Leonardo Chiquitto
- agent will no longer call table handlers if a set request for the
handler has invalid indexes
- agent will no longer call table handlers if a set request for the
handler has invalid indexes don't call cleanup on first request on
bad indexes. instead, set actual error later, and free request data
sets on first request for sets
- define and use new NETSNMP_LOGONCE macro
- fix crash in IF-MIB and IP-MIB when there are some interfaces with
broadcast IP address and some without. Reset the bcastentry in the
loop, so it cannot be inserted to the twice. Without this patch,
when an interface without broadcast address is processed, the
bcastaddress from previous loop is inserted into the container.
This obviously fails and the bcastentry is freed, but the container
still contains reference to it -> SIGSEGV.
- fix memory leak in ipAddressPrefixTable -
net_snmp_search_update_prefix_info returns different code, when the
entry was not inserted to list and can be freed.
- fix rare race condition when reading RPM database. Old rpm versions
return NULL instead of Header when another RPM instance holds
database locks. I.e. snmpd sometimes crashes when reading hr_swInst
and rpm is installing/updating/removing another package. As a
solution, whole RPM cache is thrown away and re-read when we got an
error from librpm. The whole process is restarted only three times,
to prevent endless loop.
- fixed a memory leak in TCP-MIB.
- fixed filedescriptor leak in Etherlike-MIB and RMON-MIB
- fixed memory leak when reading sensors for LM-SENSORS-MIB.
- fixed one leak-at-exit.
- include local port number in packet dumps. An example: Received 36
byte packet from UDP: [127.0.0.1]:53909->[127.0.0.1]:1161 0000: 30
22 02 01 01 04 06 70 75 62 6C 69 63 A1 15 02 0".....public... 0016:
04 37 F2 D4 9B 02 01 00 02 01 00 30 07 30 05 06 .7.........0.0..
0032: 01 01 05 00 .... Received SNMP packet(s) from UDP: GETNEXT
message -- ccitt.1 Sending 118 bytes to UDP:
[127.0.0.1]:53909->[127.0.0.1]:1161 0000: 30 74 02 01 01 04 06 70
75 62 6C 69 63 A2 67 02 0t.....public.g. 0016: 04 37 F2 D4 9B 02 01
00 02 01 00 30 59 30 57 06 .7.........0Y0W. 0032: 08 2B 06 01 02 01
01 01 00 04 4B 4C 69 6E 75 78 .+........KLinux 0048: 20 61 73 75 73
20 32 2E 36 2E 33 33 2E 32 2D 73 asus 2.6.33.2-s 0064: 63 73 74 20
23 31 20 53 4D 50 20 50 52 45 45 4D cst #1 SMP PREEM 0080: 50 54 20
53 61 74 20 41 70 72 20 33 20 32 31 3A PT Sat Apr 3 21: 0096: 31 30
3A 35 38 20 43 45 53 54 20 32 30 31 30 20 10:58 CEST 2010 0112: 78
38 36 5F 36 34 x86_64
- made sure that handler registration failure does not create
dangling pointers in the MIB subtree registry.
- report real ifSpeed of network interface even it is down. Some
interfaces can report their real speed, even they are down. And if
they can't, the fallback to 10Mbps is still there.
- table_data/tdata next handler will not be called during get
processing if no valid rows are found for the handler
- tdata helper now saves flags passed during creation; add tdata flag
to NOT create the table container
- translate NOSUCH*/ENDOFMIB errors during RESERVE1 to NOCREATION
- utilities/execute do not need anything from util_funcs, so stop
depending on it.
- fixed value of IP-MIB::ipv6InterfaceForwarding on Linux The value
was 0 (not forwarding) or 1 (forwarding), should be 2 and 1 instead
- netsnmp_interface_entry.forwarding_v6 is boolean, not TruthValue.
- new API for indicating that persistent store needs to be saved
after the current request finishes processing
- [BUG 3003981]: Protect against buffer overflow
- [BUG 3019243]: Register execFix compatability directive correctly.
- patch 2912520: from listom: Free kmem references on shutdown
- patch: 3028923: from jenso: new copy of the bridge-mib perl
implementation
- report gfs filesystems in hrStorageTable and hrFSTable.
- [PATCH 2904900]: Documentation plus assorted handler code fixes
- [PATCH 2911361]: Documentation (Provided by Tomasz Lis)
- [PATCH 2911361]: Re-order code to group related functions together
- [PATCH 2911361]: Remove redundant variables
- [PATCH 2931446]: make the load averages writable.
- [PATCH 3044512]: fix sysobjectid directive.
- patch 2790249: from willpwillp: reduce cache time for the iftable
to 3seconds to increase accuracy
- patch 2825653: from bru5ce: fix sendmail.cf parsing in certain
conditions
- Log before returning.
- [PATCH 3053428]: fix get_pid_from_inode when the inode is not
found.
- [PATCH 3058140]: check that inode is non-zero
- patch 3062526: from mariog85: fix security engineID setting in the
trapsess directive
snmpdlib:
- new functions to make stash ptr and newrow available to
table_dataset handlers nonews: fix typo; tabs to spaces; use sizeof
instead of constant
snmpdx:
- changed default TCP target from 0.0.0.0:705 to localhost:705. This
is not only a more secure choice but it also makes it possible on
Windows systems to let an AgentX subagent connect to an AgentX
master agent running on the same system without having to set the
variable NETSNMP_DS_AGENT_X_SOCKET.
snmptable:
- [BUG 2837998]: Handle missing instance subidentifiers in results
- [PATCH 2850067]: Suppress extraneous "index" header token Patch
supplied by Dan Nelson
snmpusm:
- Prefer to use a variable of the right type over an ugly cast.
Lessen the scope of the variable as well.
- patch from Martin Bjorklund to add a -Cw option to use
createAndWait for agents that are strict about not allowing a row
to be set to active until the authentication password has been
changed; plus white-space clean up, manual additions and help
output modifications by hardaker
- Correct ifdefs, remove dead variables.
man:
- clean up manual pages (from Debian patch 56_manpage)
snmpwalk:
- Handle the case when the end oid is longer than the current oid
correctly
apps:
- Add command to send AgentX notify requests to a master agent.
- Generic host-specific configuration snmp.conf files are now read.
See the HOST-SPECIFIC FILES section of the snmp.conf manual page.
- Only build agentxtrap if the agentx libraries are built. Add a test
case for agentxtrap. The enablement/disablement is inspired by
automake conditionals
- T command line flag can be used to configure transports
- A new 'snmptls' command for manipulating the agent's TLS configuration
apps, snmplib:
- [PATCH 2835577]: identified by "Bart Van Assche": Replace SNMP_ZERO
of arrays with a memset.
snmptranslate:
- fixed printing of ranges with UNSIGNED type.
build:
- [PATCH 2952020]: Explicitly set permission on temporary testing
output directories. Patch provided by Leonardo Chiquitto.
- run rpm configure checks for hr_swinst rewrite (rpm version only)
- Do not call vacm_standard_views() or init_vacm_config_tokens() if
the corresponding module was not compiled (from Debian patch
61_vacm_missing_dependency_check)
- Fix ipv6 generic case so test matches verification
building:
- 'make test TESTOPTS="-P tcp"' works fine now
- 0 In case exec_prefix is unset then set it to '${prefix}' in order
to pick up overrides of $prefix in make install.
- Building Net-SNMP with dmalloc support enabled is again possible.
- Do not link with libnetsnmphelpers any more as it is empty.
- Fixed compilation with rpm-4.6. Turn on the legacy API when rpm-4.6
is detected.
- Introduced the variable 'with_socklib' in the configure script.
This variable is set to "winsock2" for MinGW and to "default" for
all other systems. Winsock2 tests are only run if this variable is
set to "winsock2" (MinGW).
- OS header detection check is now run before IPv6 stack detection.
- Use AC_REPLACE_FUNCS to handle code that is missing on some
platforms.
- Use autoconf to decide if inet_ntop.c and inet_pton.c are to be
compiled.
- Use the same compiler command and flags for building of tests as
for building of the code, thus enabling test of e.g. 32-bit code
compiled on a 64-bit platform.
- abort if the file program could not be found, since this is
essential for proper operation of libtool.
- added detection of lm_sensors version. I am not Autoconf guru, so I
hope I got it right. The goal is to define NETSNMP_USE_SENSORS_V3
*before* config_modules_agent processes
agent/mibgroup/hardware/sensors.h.
- made sure that the configure script does no longer invoke "tail