#define _NAT_CONTROLLER_H
#include <linux/in.h>
+#include <list>
- #include "SecondaryTableController.h"
+ class NetworkController;
+ class SecondaryTableController;
class NatController {
static const char* LOCAL_NAT_POSTROUTING;
static const char* LOCAL_TETHER_COUNTERS_CHAIN;
+ // List of strings of interface pairs.
+ std::list<std::string> ifacePairList;
+
private:
int natCount;
- SecondaryTableController *secondaryTableCtrl;
+ SecondaryTableController *mSecondaryTableCtrl;
+ NetworkController *mNetCtrl;
+ bool checkTetherCountingRuleExist(const char *pair_name);
+
int setDefaults();
int runCmd(int argc, const char **argv);
bool checkInterface(const char *iface);