libnl: /data/src/libnl/include/netlink/route/qdisc/htb.h Source File

libnl 3.12.0

htb.h
1/* SPDX-License-Identifier: LGPL-2.1-only */
2/*
3 * Copyright (c) 2003-2011 Thomas Graf <tgraf@suug.ch>
4 * Copyright (c) 2005 Petr Gotthard <petr.gotthard@siemens.com>
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
17extern "C" {
18#endif
19
20extern uint32_t rtnl_htb_get_rate2quantum(struct rtnl_qdisc *);
21extern int rtnl_htb_set_rate2quantum(struct rtnl_qdisc *, uint32_t);
22extern uint32_t rtnl_htb_get_defcls(struct rtnl_qdisc *);
23extern int rtnl_htb_set_defcls(struct rtnl_qdisc *, uint32_t);
24
25extern uint32_t rtnl_htb_get_prio(struct rtnl_class *);
26extern int rtnl_htb_set_prio(struct rtnl_class *, uint32_t);
27
28extern uint32_t rtnl_htb_get_rate(struct rtnl_class *);
29extern int rtnl_htb_set_rate(struct rtnl_class *, uint32_t);
30extern uint32_t rtnl_htb_get_ceil(struct rtnl_class *);
31extern int rtnl_htb_set_ceil(struct rtnl_class *, uint32_t);
32
33extern int rtnl_htb_get_rate64(struct rtnl_class *, uint64_t *);
34extern int rtnl_htb_set_rate64(struct rtnl_class *, uint64_t);
35extern int rtnl_htb_get_ceil64(struct rtnl_class *, uint64_t *);
36extern int rtnl_htb_set_ceil64(struct rtnl_class *, uint64_t);
37
38extern uint32_t rtnl_htb_get_rbuffer(struct rtnl_class *);
39extern int rtnl_htb_set_rbuffer(struct rtnl_class *, uint32_t);
40extern uint32_t rtnl_htb_get_cbuffer(struct rtnl_class *);
41extern int rtnl_htb_set_cbuffer(struct rtnl_class *, uint32_t);
42extern uint32_t rtnl_htb_get_quantum(struct rtnl_class *);
43extern int rtnl_htb_set_quantum(struct rtnl_class *, uint32_t);
44extern int rtnl_htb_set_level(struct rtnl_class *, int);
45extern int rtnl_htb_get_level(struct rtnl_class *);
46
47#ifdef __cplusplus
48}
49#endif
50
51#endif
rtnl_htb_set_rbuffer
int rtnl_htb_set_rbuffer(struct rtnl_class *, uint32_t)
Set size of the rate bucket of HTB class.
Definition htb.c:586
rtnl_htb_set_level
int rtnl_htb_set_level(struct rtnl_class *, int)
Set level of HTB class.
Definition htb.c:712
rtnl_htb_get_ceil
uint32_t rtnl_htb_get_ceil(struct rtnl_class *)
Return ceil rate of HTB class.
Definition htb.c:496
rtnl_htb_set_defcls
int rtnl_htb_set_defcls(struct rtnl_qdisc *, uint32_t)
Set default class of the htb qdisc to the specified value.
Definition htb.c:373
rtnl_htb_get_defcls
uint32_t rtnl_htb_get_defcls(struct rtnl_qdisc *)
Return default class of HTB qdisc.
Definition htb.c:357
rtnl_htb_set_quantum
int rtnl_htb_set_quantum(struct rtnl_class *, uint32_t)
Set quantum of HTB class (overwrites value calculated based on r2q)
Definition htb.c:664
rtnl_htb_set_rate
int rtnl_htb_set_rate(struct rtnl_class *, uint32_t)
Set rate of HTB class.
Definition htb.c:461
rtnl_htb_get_ceil64
int rtnl_htb_get_ceil64(struct rtnl_class *, uint64_t *)
Return ceil rate of HTB class.
Definition htb.c:517
rtnl_htb_get_rate64
int rtnl_htb_get_rate64(struct rtnl_class *, uint64_t *)
Return rate of HTB class.
Definition htb.c:441
rtnl_htb_get_rate2quantum
uint32_t rtnl_htb_get_rate2quantum(struct rtnl_qdisc *)
Return rate/quantum ratio of HTB qdisc.
Definition htb.c:323
rtnl_htb_set_rate64
int rtnl_htb_set_rate64(struct rtnl_class *, uint64_t)
Set rate of HTB class.
Definition htb.c:473
rtnl_htb_get_rbuffer
uint32_t rtnl_htb_get_rbuffer(struct rtnl_class *)
Return burst buffer size of HTB class.
Definition htb.c:570
rtnl_htb_set_ceil
int rtnl_htb_set_ceil(struct rtnl_class *, uint32_t)
Set ceil rate of HTB class.
Definition htb.c:537
rtnl_htb_set_cbuffer
int rtnl_htb_set_cbuffer(struct rtnl_class *, uint32_t)
Set size of the ceil bucket of HTB class.
Definition htb.c:622
rtnl_htb_set_ceil64
int rtnl_htb_set_ceil64(struct rtnl_class *, uint64_t)
Set ceil rate of HTB class.
Definition htb.c:549
rtnl_htb_get_quantum
uint32_t rtnl_htb_get_quantum(struct rtnl_class *)
Return quantum of HTB class.
Definition htb.c:644
rtnl_htb_get_rate
uint32_t rtnl_htb_get_rate(struct rtnl_class *)
Return rate of HTB class.
Definition htb.c:420
rtnl_htb_get_cbuffer
uint32_t rtnl_htb_get_cbuffer(struct rtnl_class *)
Return ceil burst buffer size of HTB class.
Definition htb.c:606
rtnl_htb_get_level
int rtnl_htb_get_level(struct rtnl_class *)
Return level of HTB class.
Definition htb.c:688
rtnl_class
Definition class.c:23
rtnl_qdisc
Definition nl-route.h:119