libnl
1.1
Main Page
Modules
Data Structures
Files
File List
include
netlink
route
classifier.h
1
/*
2
* netlink/route/classifier.h Classifiers
3
*
4
* This library is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation version 2.1
7
* of the License.
8
*
9
* Copyright (c) 2003-2006 Thomas Graf <tgraf@suug.ch>
10
*/
11
12
#ifndef NETLINK_CLASSIFIER_H_
13
#define NETLINK_CLASSIFIER_H_
14
15
#include <netlink/netlink.h>
16
#include <netlink/cache.h>
17
#include <netlink/route/tc.h>
18
#include <netlink/utils.h>
19
20
#ifdef __cplusplus
21
extern
"C"
{
22
#endif
23
24
extern
struct
nl_object_ops
cls_obj_ops;
25
26
extern
struct
rtnl_cls *rtnl_cls_alloc(
void
);
27
extern
void
rtnl_cls_put(
struct
rtnl_cls *);
28
29
extern
struct
nl_cache *
rtnl_cls_alloc_cache
(
struct
nl_handle *,
int
, uint32_t);
30
31
/* classifier addition */
32
extern
int
rtnl_cls_add
(
struct
nl_handle *,
struct
rtnl_cls *,
33
int
);
34
extern
struct
nl_msg *
rtnl_cls_build_add_request
(
struct
rtnl_cls *,
int
);
35
36
extern
struct
nl_msg *
rtnl_cls_build_change_request
(
struct
rtnl_cls *,
int
);
37
extern
struct
nl_msg *
rtnl_cls_build_delete_request
(
struct
rtnl_cls *,
int
);
38
extern
int
rtnl_cls_delete
(
struct
nl_handle *,
struct
rtnl_cls *,
int
);
39
40
/* attribute modification */
41
extern
void
rtnl_cls_set_ifindex(
struct
rtnl_cls *,
int
);
42
extern
void
rtnl_cls_set_handle(
struct
rtnl_cls *, uint32_t);
43
extern
void
rtnl_cls_set_parent(
struct
rtnl_cls *, uint32_t);
44
extern
void
rtnl_cls_set_kind(
struct
rtnl_cls *,
const
char
*);
45
46
extern
void
rtnl_cls_set_prio(
struct
rtnl_cls *,
int
);
47
extern
int
rtnl_cls_get_prio(
struct
rtnl_cls *);
48
49
extern
void
rtnl_cls_set_protocol(
struct
rtnl_cls *,
int
);
50
extern
int
rtnl_cls_get_protocol(
struct
rtnl_cls *);
51
52
#ifdef __cplusplus
53
}
54
#endif
55
56
#endif
Generated on Tue Mar 1 2016 21:32:30 for libnl by
1.8.4