binder: Add binder skeletal code for Android
authorRoshan Pius <rpius@google.com>
Wed, 17 Feb 2016 00:39:28 +0000 (16:39 -0800)
committerJouni Malinen <j@w1.fi>
Sat, 2 Apr 2016 14:35:26 +0000 (17:35 +0300)
commit7b4bbb9f946fb6861b2b4ded0f10949277514047
treefebb9cec4b7c85f8098d201002c9248c59d0900e
parent5914ebf5845b405eb3d6e29572df22daf0d8bb0d
binder: Add binder skeletal code for Android

Create the skeletal binder interface for wpa_supplicant. The interface
hierarchy is based off the existing dbus
interface(https://w1.fi/wpa_supplicant/devel/dbus.html).

Since we use libbinder, the binder interface codebase needs to be
written in C++ and can only be compiled on Android platform for now.

The aidl files define binder RPC interfaces. The Android build system
generates the corresponding C++ interface classes which needs to be
implemented by the server process.

The clients can obtain a reference to the binder service (root object)
using:
android::String16 service_name("fi.w1.wpa_supplicant");
android::sp<android::IBinder> binder =
  android::defaultServiceManager()->getService(service_name);

Once a reference to the root object is retrieved, the clients can
obtain references to other RPC objects using that root object methods.

Signed-off-by: Roshan Pius <rpius@google.com>
16 files changed:
wpa_supplicant/Android.mk
wpa_supplicant/android.config
wpa_supplicant/binder/binder.cpp [new file with mode: 0644]
wpa_supplicant/binder/binder.h [new file with mode: 0644]
wpa_supplicant/binder/binder_i.h [new file with mode: 0644]
wpa_supplicant/binder/binder_manager.cpp [new file with mode: 0644]
wpa_supplicant/binder/binder_manager.h [new file with mode: 0644]
wpa_supplicant/binder/fi/w1/wpa_supplicant/IIface.aidl [new file with mode: 0644]
wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicant.aidl [new file with mode: 0644]
wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicantCallbacks.aidl [new file with mode: 0644]
wpa_supplicant/binder/iface.cpp [new file with mode: 0644]
wpa_supplicant/binder/iface.h [new file with mode: 0644]
wpa_supplicant/binder/supplicant.cpp [new file with mode: 0644]
wpa_supplicant/binder/supplicant.h [new file with mode: 0644]
wpa_supplicant/notify.c
wpa_supplicant/wpa_supplicant_i.h