xref: /aosp_15_r20/external/libnl/include/netlink/route/qdisc/htb.h (revision 4dc78e53d49367fa8e61b07018507c90983a077d)
1 /* SPDX-License-Identifier: LGPL-2.1-only */
2 /*
3  * Copyright (c) 2003-2011 Thomas Graf <[email protected]>
4  * Copyright (c) 2005 Petr Gotthard <[email protected]>
5  * Copyright (c) 2005 Siemens AG Oesterreich
6  */
7 
8 #ifndef NETLINK_HTB_H_
9 #define NETLINK_HTB_H_
10 
11 #include <netlink/netlink.h>
12 #include <netlink/route/tc.h>
13 #include <netlink/route/qdisc.h>
14 #include <netlink/route/class.h>
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 extern uint32_t	rtnl_htb_get_rate2quantum(struct rtnl_qdisc *);
21 extern int	rtnl_htb_set_rate2quantum(struct rtnl_qdisc *, uint32_t);
22 extern uint32_t	rtnl_htb_get_defcls(struct rtnl_qdisc *);
23 extern int	rtnl_htb_set_defcls(struct rtnl_qdisc *, uint32_t);
24 
25 extern uint32_t	rtnl_htb_get_prio(struct rtnl_class *);
26 extern int	rtnl_htb_set_prio(struct rtnl_class *, uint32_t);
27 
28 extern uint32_t  rtnl_htb_get_rate(struct rtnl_class *);
29 extern int       rtnl_htb_set_rate(struct rtnl_class *, uint32_t);
30 extern uint32_t  rtnl_htb_get_ceil(struct rtnl_class *);
31 extern int       rtnl_htb_set_ceil(struct rtnl_class *, uint32_t);
32 
33 extern int       rtnl_htb_get_rate64(struct rtnl_class *, uint64_t *);
34 extern int       rtnl_htb_set_rate64(struct rtnl_class *, uint64_t);
35 extern int       rtnl_htb_get_ceil64(struct rtnl_class *, uint64_t *);
36 extern int       rtnl_htb_set_ceil64(struct rtnl_class *, uint64_t);
37 
38 extern uint32_t	rtnl_htb_get_rbuffer(struct rtnl_class *);
39 extern int	rtnl_htb_set_rbuffer(struct rtnl_class *, uint32_t);
40 extern uint32_t	rtnl_htb_get_cbuffer(struct rtnl_class *);
41 extern int	rtnl_htb_set_cbuffer(struct rtnl_class *, uint32_t);
42 extern uint32_t	rtnl_htb_get_quantum(struct rtnl_class *);
43 extern int	rtnl_htb_set_quantum(struct rtnl_class *, uint32_t);
44 extern int	rtnl_htb_set_level(struct rtnl_class *, int);
45 extern int	rtnl_htb_get_level(struct rtnl_class *);
46 
47 #ifdef __cplusplus
48 }
49 #endif
50 
51 #endif
52