libnl  3.2.24-rc1
fq_codel.h
1 /*
2  * netlink/route/sch/fq_codel.h fq_codel
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) 2013 Cong Wang <xiyou.wangcong@gmail.com>
10  */
11 
12 #ifndef NETLINK_FQ_CODEL_H_
13 #define NETLINK_FQ_CODEL_H_
14 
15 #include <netlink/netlink.h>
16 #include <netlink/route/qdisc.h>
17 
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21 
22 extern int rtnl_qdisc_fq_codel_set_limit(struct rtnl_qdisc *, int);
23 extern int rtnl_qdisc_fq_codel_get_limit(struct rtnl_qdisc *);
24 
25 extern int rtnl_qdisc_fq_codel_set_target(struct rtnl_qdisc *, uint32_t);
26 extern uint32_t rtnl_qdisc_fq_codel_get_target(struct rtnl_qdisc *);
27 
28 extern int rtnl_qdisc_fq_codel_set_interval(struct rtnl_qdisc *, uint32_t);
29 extern uint32_t rtnl_qdisc_fq_codel_get_interval(struct rtnl_qdisc *);
30 
31 extern int rtnl_qdisc_fq_codel_set_quantum(struct rtnl_qdisc *, uint32_t);
32 extern uint32_t rtnl_qdisc_fq_codel_get_quantum(struct rtnl_qdisc *);
33 
34 extern int rtnl_qdisc_fq_codel_set_flows(struct rtnl_qdisc *, int);
35 extern int rtnl_qdisc_fq_codel_get_flows(struct rtnl_qdisc *);
36 
37 extern int rtnl_qdisc_fq_codel_set_ecn(struct rtnl_qdisc *, int);
38 extern int rtnl_qdisc_fq_codel_get_ecn(struct rtnl_qdisc *);
39 
40 #ifdef __cplusplus
41 }
42 #endif
43 
44 #endif