Setup interfaces for IPv6 tethering
Including:
- set the interface for router mode (accept_ra = 0)
- reset the interface for client mode (accept_ra = 1)
- InterfaceController::setAcceptIPv6Ra()
- InterfaceController::setAcceptIPv6Dad()
- make InterfaceController static
- refactor for more modern C++ usage here and there
- sporadic style guide fixes
Bug: 9580643
Change-Id: Ia557c8770e18c58b12ad16d982c63b6ebd525516
diff --git a/server/InterfaceController.h b/server/InterfaceController.h
index 89728b1..4c8057e 100644
--- a/server/InterfaceController.h
+++ b/server/InterfaceController.h
@@ -18,19 +18,24 @@
#define _INTERFACE_CONTROLLER_H
class InterfaceController {
- public:
- InterfaceController();
- virtual ~InterfaceController();
- int setEnableIPv6(const char *interface, const int on);
- int setIPv6PrivacyExtensions(const char *interface, const int on);
- int setIPv6NdOffload(char* interface, const int on);
- int setMtu(const char *interface, const char *mtu);
+public:
+ static void initializeAll();
- private:
- void setAcceptRA(const char* value);
- void setAcceptRARouteTable(int tableOrOffset);
- void setBaseReachableTimeMs(unsigned int millis);
- void setIPv6OptimisticMode(const char *value);
+ static int setEnableIPv6(const char *interface, const int on);
+ static int setAcceptIPv6Ra(const char *interface, const int on);
+ static int setAcceptIPv6Dad(const char *interface, const int on);
+ static int setIPv6PrivacyExtensions(const char *interface, const int on);
+ static int setIPv6NdOffload(char* interface, const int on);
+ static int setMtu(const char *interface, const char *mtu);
+
+private:
+ static void setAcceptRA(const char* value);
+ static void setAcceptRARouteTable(int tableOrOffset);
+ static void setBaseReachableTimeMs(unsigned int millis);
+ static void setIPv6OptimisticMode(const char *value);
+
+ InterfaceController() = delete;
+ ~InterfaceController() = delete;
};
#endif