/* * networkmanager.h * * Created on: Sep 5, 2011 * Author: niklas */ #ifndef NETWORKMANAGER_H_ #define NETWORKMANAGER_H_ #include #include #include #include #include #include #include #include #include #include #include class NetworkManager: public QObject { Q_OBJECT public: NetworkManager(); virtual ~NetworkManager(); int doRoute(QString ifName, QString destination, QString gateway, int af, int action); int replaceDefaultRoute(QString ifname, QString gateway, int metric, int af); int bringInterfaceUpDown(QString ifname, bool up); int ip4_setManualConfiguration(QString ifname, QString ipAddress, QString netmask, QString broadcast, QString gateway, int metric, int af, bool up, QString pathToResolvConf, QList nameServer); int ip4_configureInterface(QString ifname, QString ipAddress, QString broadcast, QString netmask, int af); int writeResolvConf(QString path, QString ifname, QList nameServer); private: int ip4_netmaskToPrefix(QString ipAddr, QString netmask); int sync_address(const char *iface, int ifindex, int family, struct rtnl_addr *addr); }; #endif /* NETWORKMANAGER_H_ */