summaryrefslogtreecommitdiffstats
path: root/LogReceiver/routemanager.h
blob: 01530c70325458acec5176afa690a4ec808dac9b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/*
 * routemanager.h
 *
 *  Created on: Sep 5, 2011
 *      Author: niklas
 */

#ifndef ROUTEMANAGER_H_
#define ROUTEMANAGER_H_

#include <arpa/inet.h>
#include <interface.h>
#include <netlink/netlink.h>
#include <netlink/route/route.h>
#include <errno.h>
#include <QtCore>

class routemanager : public QObject{
Q_OBJECT

public:
	routemanager();
	virtual ~routemanager();

	int addRoute(QString ifname, QString destination, QString netmask, QString gateway, int metric);
	int delRoute(QString ifname, QString destination, QString netmask, QString gateway, int metric);

	int addRoute6(QString ifname, QString destination,
			QString netmask, QString gateway, int metric);
	int delRoute6(QString ifname, QString destination,
				QString netmask, QString gateway, int metric);
	int doRoute(QString destination, QString gateway, int af, int action);

private:
	QByteArray ba;
};


#endif /* ROUTEMANAGER_H_ */