Fix map.clear() usage for array type maps
authorBrenden Blanco <bblanco@plumgrid.com>
Mon, 24 Aug 2015 05:59:38 +0000 (22:59 -0700)
committerBrenden Blanco <bblanco@plumgrid.com>
Mon, 24 Aug 2015 06:26:58 +0000 (23:26 -0700)
commit8e40c235a3ff80ad315def0ce8f1f4f7b0abd452
tree214005f406c50e5bd38f42d0e2c98455cf103538
parent136d85ff8bad2e6e571b70d1c5161ea673e1f6cc
Fix map.clear() usage for array type maps

Calling delete on an array type map entry does not have an effect.
Instead, the entry needs to be zeroed out, since the array slot always
exists. To avoid unnecessary calls to update(), only call update() when
the map type is array-like. The type was not exposed to python up until
now, so add it.

Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
src/cc/bpf_common.cc
src/cc/bpf_common.h
src/cc/bpf_module.cc
src/cc/bpf_module.h
src/cc/frontends/b/codegen_llvm.cc
src/cc/frontends/clang/b_frontend_action.cc
src/cc/table_desc.h
src/python/bpf/__init__.py
tools/pidpersec