Add WakeupController and NFLogListener

These classes work together to parse and dispatch NFLOG messages in
response to inbound packets annotated by the WiFi driver.

Test: as follows
    - built
    - flashed
    - booted
    - netd_unit_test passes

Change-Id: Id26d62858bf4bc4186ae66850f08077adf6fc2ac
diff --git a/server/NetdNativeService.h b/server/NetdNativeService.h
index fbe860c..a95b483 100644
--- a/server/NetdNativeService.h
+++ b/server/NetdNativeService.h
@@ -48,6 +48,13 @@
             std::vector<std::string>* domains, std::vector<int32_t>* params,
             std::vector<int32_t>* stats) override;
 
+    // NFLOG-related commands
+    binder::Status wakeupAddInterface(const std::string& ifName, const std::string& prefix,
+                                      int32_t mark, int32_t mask) override;
+
+    binder::Status wakeupDelInterface(const std::string& ifName, const std::string& prefix,
+                                      int32_t mark, int32_t mask) override;
+
     // Tethering-related commands.
     binder::Status tetherApplyDnsInterfaces(bool *ret) override;
 
@@ -108,7 +115,6 @@
 
     binder::Status ipSecRemoveTransportModeTransform(
             const android::base::unique_fd& socket);
-
 };
 
 }  // namespace net