From: Donald Sharp Date: Fri, 6 Jul 2018 14:18:50 +0000 (-0400) Subject: lib: Add some documentation X-Git-Tag: frr-6.1-dev~187^2~1 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=8b52179d2ae6eecad2155fb04ec99610077618f9;p=mirror%2Ffrr.git lib: Add some documentation Add some documentation to hash_walk/iterate to tell people to not do something stupid. Signed-off-by: Donald Sharp --- diff --git a/lib/hash.h b/lib/hash.h index c7e670b723..12c214e469 100644 --- a/lib/hash.h +++ b/lib/hash.h @@ -232,7 +232,9 @@ extern void *hash_release(struct hash *hash, void *data); * Iterate over the elements in a hash table. * * It is safe to delete items passed to the iteration function from the hash - * table during iteration. + * table during iteration. Please note that adding entries to the hash + * during the walk will cause undefined behavior in that some new entries + * will be walked and some will not. So do not do this. * * hash * hash table to operate on @@ -250,7 +252,9 @@ extern void hash_iterate(struct hash *hash, * Iterate over the elements in a hash table, stopping on condition. * * It is safe to delete items passed to the iteration function from the hash - * table during iteration. + * table during iteration. Please note that adding entries to the hash + * during the walk will cause undefined behavior in that some new entries + * will be walked and some will not. So do not do this. * * hash * hash table to operate on