NetworkManager/src/tests
Thomas Haller 9bd4cf340d core: add NMMultiIndex class
A class to do efficient lookup for multiple values based on a key.

The values are opaque pointers (void*). These values can be
associated with keys. The keys are an opaque type NMMultiIndexId
with arbitrary hash/equal functions.

Think of the keys being a set of buckets. A value can be associated with multiple
keys, just like with a regular GHashTable (i.e. it can be in multiple buckets).
But one key can also be associated with multiple values (i.e. one bucket can contain
multiple values). Hence the name "multi".
One bucket can only either contain a value or not. It cannot contain the same
value multiple times.

This is implemented as a hash of hashes with the outer keys being
NMMultiIndexId. The inner hashes are the "buckets".

This class will be used as an efficient lookup index to find all values
that belong to a certain key (bucket). Later we will ask for example
"Which IP4-Addresses are associated with a certain ifindex" and
efficiently retrieve the cached result list.

(cherry picked from commit f99723eda5)
2015-06-21 15:21:56 +02:00
..
config config: support a [connection] section to NetworkManager.conf to specify connection defaults 2015-06-19 12:10:51 +02:00
Makefile.am tests: enable valgrind tests for tests 2015-03-13 11:50:04 +01:00
test-dcb.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
test-general-with-expect.c core: add NMMultiIndex class 2015-06-21 15:21:56 +02:00
test-general.c libnm: move _nm_utils_ascii_str_to_int64() from src/ to libnm-core/ 2015-06-17 13:30:39 +02:00
test-ip4-config.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
test-ip6-config.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
test-resolvconf-capture.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
test-secret-agent.py use /usr/bin/env instead of /bin/env 2011-03-29 01:00:47 +02:00
test-wired-defname.c test: initialize auto-destructed pointers 2015-03-13 11:50:50 +01:00