binder: Add |INetwork| object interface

Create a new binder object interface to control networks. Neworks are
added/removed using the corresponding |IIface| binder object.

This CL only contains skeletal code for the new binder object.

While there,
Clean up the error codes in all the aid files and use the binder
exception codes to indicate INVALID_ARGS.

BUG: 30015382
Change-Id: I6953a623ab2c2b25f678d3b515a924a67d67d3fb
diff --git a/wpa_supplicant/binder/supplicant.h b/wpa_supplicant/binder/supplicant.h
index 136b99b..5b5fafa 100644
--- a/wpa_supplicant/binder/supplicant.h
+++ b/wpa_supplicant/binder/supplicant.h
@@ -10,6 +10,8 @@
 #ifndef WPA_SUPPLICANT_BINDER_SUPPLICANT_H
 #define WPA_SUPPLICANT_BINDER_SUPPLICANT_H
 
+#include <android-base/macros.h>
+
 #include "fi/w1/wpa_supplicant/BnSupplicant.h"
 #include "fi/w1/wpa_supplicant/IIface.h"
 #include "fi/w1/wpa_supplicant/ISupplicantCallbacks.h"
@@ -31,7 +33,7 @@
 {
 public:
 	Supplicant(struct wpa_global *global);
-	virtual ~Supplicant() = default;
+	~Supplicant() override = default;
 
 	android::binder::Status CreateInterface(
 	    const android::os::PersistableBundle &params,
@@ -48,6 +50,8 @@
 	/* All the callback objects registered by the clients. */
 	std::vector<android::sp<fi::w1::wpa_supplicant::ISupplicantCallbacks>>
 	    callbacks_;
+
+	DISALLOW_COPY_AND_ASSIGN(Supplicant);
 };
 
 } /* namespace wpa_supplicant_binder */