NetworkManager/src/platform
Thomas Haller 99eef7a2ea platform: fix crash hashing NMPlatformTfilter and NMPlatformQdisc
@kind might be NULL. There are 3 forms of the hash-update functions for
string: str(), str0(), and strarr().

- str0() is when the string might be NULL.
- str() does not allow the string to be NULL
- strarr() is like str(), except it adds a G_STATIC_ASSERT()
  that the argument is a C array.

The reason why a difference between str() and str0() exists, is
because str0() hashes NULL different from a "" or any other string.
This has an overhead, because it effectively must hash another bit
of information that tells whether a string was passed or not.

The reason is, that hashing a tupple of two strings should always
yield a different hash value, even for "aa",""; "a","a"; "","aa",
where naive concatentation would yield identical hash values in all
three cases.

Fixes: e75fc8279b
(cherry picked from commit 27e8fffdb8)
2017-12-12 11:21:05 +01:00
..
tests platform/tests: fix memleaks in tests 2017-12-11 21:04:58 +01:00
wifi core: use nm_close() 2017-10-19 15:49:58 +02:00
nm-fake-platform.c platform: merge nm_platform_*_delete() delete functions 2017-12-11 19:00:41 +01:00
nm-fake-platform.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-linux-platform.c platform: fix TC to-string/hash/cmp functions to include the action 2017-12-11 19:53:09 +01:00
nm-linux-platform.h platform: use NMDedupMultiIndex for routes in NMPCache 2017-07-05 18:37:38 +02:00
nm-platform-private.h platform: expose emit-signal function from platform 2017-07-05 18:37:39 +02:00
nm-platform-utils.c udev: drop libgudev in favor of libudev 2017-03-22 12:41:06 +01:00
nm-platform-utils.h udev: drop libgudev in favor of libudev 2017-03-22 12:41:06 +01:00
nm-platform.c platform: fix crash hashing NMPlatformTfilter and NMPlatformQdisc 2017-12-12 11:21:05 +01:00
nm-platform.h platform: fix TC to-string/hash/cmp functions to include the action 2017-12-11 19:53:09 +01:00
nmp-netns.c platform: preserve errno when creating netns fails 2017-11-17 12:38:25 +01:00
nmp-netns.h core: cleanup implementation of nm_auto* macros to use nm_auto() 2017-10-11 08:43:40 +02:00
nmp-object.c platform: add support for traffic filters 2017-12-11 19:53:09 +01:00
nmp-object.h platform: add support for traffic filters 2017-12-11 19:53:09 +01:00