From 5a76512a347f5e728e6c0fa2c34fbd9b46645208 Mon Sep 17 00:00:00 2001 From: Niklas Date: Mon, 26 Sep 2011 12:15:40 +0200 Subject: renamed routemanager to networkmanager --- LogReceiver/routemanager.cpp | 177 ------------------------------------------- 1 file changed, 177 deletions(-) delete mode 100644 LogReceiver/routemanager.cpp (limited to 'LogReceiver/routemanager.cpp') diff --git a/LogReceiver/routemanager.cpp b/LogReceiver/routemanager.cpp deleted file mode 100644 index aa12fa3..0000000 --- a/LogReceiver/routemanager.cpp +++ /dev/null @@ -1,177 +0,0 @@ -/* - * routemanager.cpp - * - * Created on: Sep 5, 2011 - * Author: niklas - */ - -#include "routemanager.h" - -routemanager::routemanager() { - // TODO Auto-generated constructor stub - -} - -routemanager::~routemanager() { - // TODO Auto-generated destructor stub -} - -/** - * This method adds /replaces the default route. - * This method adds /replaces the default route. - * To keep it modular, it is possible - * to specify an ip address family. - * - * @param ifName - * the interface name - * - * @param gateway - * the gateway address (e.g: 192.168.0.254) - * @param mss - * the mss. - * @param af - * specify the family type of the ip address. - * possible values are: AF_INET for an IPv4 address - * AF_INET6 for an IPv6 address - * - - * @return - * return -1 if an error happened. - * return 0 if everything was ok. - */ -int routemanager::replaceDefaultRoute(QString ifname, QString gateway, - int mss, int af) { - struct nl_cache *cache; - struct nl_handle* rtsock; - struct nl_addr * gw; - struct rtnl_route * route; - int retval, iface_idx; - - QByteArray ba_ifn = ifname.toAscii(); - char * ifn = ba_ifn.data(); - - QByteArray ba_gw = gateway.toAscii(); - char * gwaddr = ba_gw.data(); - - qDebug() << "---doRoute() gwaddr" << gwaddr; - - if (!(gw = nl_addr_parse(gwaddr, af))) { - qDebug() << "Invalid router address given: %s\n", gwaddr; - return -1; - } - - rtsock = nl_handle_alloc(); - nl_connect(rtsock, NETLINK_ROUTE); - - if ((cache = rtnl_link_alloc_cache(rtsock)) == NULL) { - qDebug() << "error with link cache alloc \n"; - } - - iface_idx = rtnl_link_name2i(cache, ifn); - - route = rtnl_route_alloc(); - rtnl_route_set_scope(route, RT_SCOPE_UNIVERSE); - rtnl_route_set_gateway(route, gw); - rtnl_route_set_oif(route, iface_idx); - - if (mss > 0) { - rtnl_route_set_metric(route, RTAX_ADVMSS, mss); - } - - retval = rtnl_route_add(rtsock, route, NLM_F_REPLACE); - qDebug() << "return value:" << retval << ":" << strerror(-retval); - - rtnl_route_put(route); - nl_addr_put(gw); - nl_handle_destroy(rtsock); - - return retval; -} -/** - * This method brings an interface up or down. - * - * @param ifname - * is a string which contains the interface name which is going down or up. - * - * @param up - * is a bool. true means. we bring the interface up. - * false meand. we bring the interface down. - * @return - * 0 if everything is ok - * else an error - */ -int routemanager::bringInterfaceUpDown(QString ifname, bool up) { - struct nl_cache *cache; - struct nl_handle* rtsock; - struct rtnl_link* request = NULL; - struct rtnl_link* old = NULL; - int retval; - - QByteArray ba_ifn = ifname.toAscii(); - char * ifn = ba_ifn.data(); - - if(!(request = rtnl_link_alloc())) { - qDebug() << "error. couldn't allocate a rtnl link"; - return -1; - } - - rtsock = nl_handle_alloc(); - nl_connect(rtsock, NETLINK_ROUTE); - - if(up) { - rtnl_link_set_flags(request,IFF_UP); - } else { - rtnl_link_unset_flags(request, IFF_UP); - } - - if ((cache = rtnl_link_alloc_cache(rtsock)) == NULL) { - qDebug() << "error with link cache alloc "; - } - - old = rtnl_link_get_by_name(cache,ifn); - if (old) { - qDebug() << "change link"; - rtnl_link_change(rtsock, old, request, 0); - } else { - qDebug() << "change failed"; - } - - retval = 0; - - rtnl_link_put(old); - rtnl_link_put(request); - nl_handle_destroy(rtsock); - - return retval; -} - -/** - * This method adds or deletes a route. - * This method adds or deletes a route. According to the action, - * you can delete a route or add a route from/to the - * main routing table. In most cases, this method will be used for deleting - * or adding a default rout. To keep it modular, it is possible - * to specify an ip address family. - * - * @param ifName - * the interface name. - * @param destination - * the destination address (e.g: 0.0.0.0) - * - * @param gateway - * the gateway address (e.g: 192.168.0.254) - * - * @param af - * specify the family type of the ip address. - * possible values are: AF_INET for an IPv4 address - * AF_INET6 for an IPv6 address - * - * @param action - * possible values are: 0: perform add route - * 1: perform delete route - * - * @return - * return 1 if an error happened. - * return 0 if everything was ok. - */ -int routemanager::doRoute(QString ifName, QString destination, QString gateway, int af, int action) {return 0;} -- cgit v1.2.3-55-g7522