summaryrefslogtreecommitdiffstats
path: root/libsysutils/src/NetlinkListener.cpp
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2014-10-30 14:51:59 -0700
committerJeff Sharkey <jsharkey@android.com>2015-01-15 12:50:59 -0800
commit9a20e67fa62c1e0e0080910deec4be82ebecc922 (patch)
tree6d8c268d95a26bfecc3e574c9df1eb9dea0f5336 /libsysutils/src/NetlinkListener.cpp
parent4503a1450ce9b2ed86fd9bd3eb3c34c845e8ed08 (diff)
downloadsystem_core-9a20e67fa62c1e0e0080910deec4be82ebecc922.zip
system_core-9a20e67fa62c1e0e0080910deec4be82ebecc922.tar.gz
system_core-9a20e67fa62c1e0e0080910deec4be82ebecc922.tar.bz2
Extend to receive NFLOG packets.
Packets captured and logged by the NFLOG target are unicast, so extend to catch and decode them. To avoid escaping issues, the raw contents are passed around as hex strings. Bug: 18335678 Change-Id: Ib7299500baa00080a1f000f9da843eb527363353
Diffstat (limited to 'libsysutils/src/NetlinkListener.cpp')
-rw-r--r--libsysutils/src/NetlinkListener.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/libsysutils/src/NetlinkListener.cpp b/libsysutils/src/NetlinkListener.cpp
index 81c5cc2..637aa1e 100644
--- a/libsysutils/src/NetlinkListener.cpp
+++ b/libsysutils/src/NetlinkListener.cpp
@@ -47,8 +47,13 @@ bool NetlinkListener::onDataAvailable(SocketClient *cli)
ssize_t count;
uid_t uid = -1;
- count = TEMP_FAILURE_RETRY(uevent_kernel_multicast_uid_recv(
- socket, mBuffer, sizeof(mBuffer), &uid));
+ bool require_group = true;
+ if (mFormat == NETLINK_FORMAT_BINARY_UNICAST) {
+ require_group = false;
+ }
+
+ count = TEMP_FAILURE_RETRY(uevent_kernel_recv(socket,
+ mBuffer, sizeof(mBuffer), require_group, &uid));
if (count < 0) {
if (uid > 0)
LOG_EVENT_INT(65537, uid);