summaryrefslogtreecommitdiff
path: root/lib/libc/stdlib/reallocarray.3
diff options
context:
space:
mode:
authorgdt <gdt@NetBSD.org>2015-02-05 16:50:19 +0000
committergdt <gdt@NetBSD.org>2015-02-05 16:50:19 +0000
commitaa821aef819548cc2ff04a5381f69a6949eb5928 (patch)
tree49b9b25da7a98e88839353ea486233a029fa7810 /lib/libc/stdlib/reallocarray.3
parentaf59946aaa491d43cb62969c06daa5abf4628e67 (diff)
Fix bug in mrouted about aging neighbors.
mrouted will periodically age its neighbors and will remove a neighbor if it hasn't heard from it for NEIGHBOR_EXPIRE_TIME. Unfortunately, the neighbor pointers 'a' and 'prev_a' were never advanced when timer was not expired. Therefore it would get stuck in a tight loop, advancing 'al_timer' until it would be greater than NEIGHBOR_EXPIRE_TIME. This caused the neighbor to allways get timed out and dropped. Furthermore, there was a second bug in this loop when deleting an item that was not at the head of the list (i.e., prev_a should stay the same instead of advancing). This bug fix is the work of Konrad Lorincz. Bug found and fix made on netbsd-6. This material is based upon work supported by the Defense Advanced Research Projects Agency and Space and Naval Warfare Systems Center, Pacific, under Contract No. N66001-09-C-2073. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the Defense Advanced Research Project Agency and Space and Naval Warfare Systems Center, Pacific. Approved for Public Release, Distribution Unlimited
Diffstat (limited to 'lib/libc/stdlib/reallocarray.3')
0 files changed, 0 insertions, 0 deletions