1/*
2 * netlink/route/sch/tbf.h	TBF Qdisc
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_TBF_H_
13#define NETLINK_TBF_H_
14
15#include <netlink/netlink.h>
16#include <netlink/route/tc.h>
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
22extern int rtnl_qdisc_tbf_set_limit(struct rtnl_qdisc *, int);
23extern int rtnl_qdisc_tbf_set_limit_by_latency(struct rtnl_qdisc *, int);
24extern int rtnl_qdisc_tbf_get_limit(struct rtnl_qdisc *);
25
26extern int rtnl_qdisc_tbf_set_mpu(struct rtnl_qdisc *, int);
27extern int rtnl_qdisc_tbf_get_mpu(struct rtnl_qdisc *);
28
29extern int rtnl_qdisc_tbf_set_rate(struct rtnl_qdisc *, int, int, int);
30extern int rtnl_qdisc_tbf_get_rate(struct rtnl_qdisc *);
31extern int rtnl_qdisc_tbf_get_rate_bucket(struct rtnl_qdisc *);
32extern int rtnl_qdisc_tbf_get_rate_cell(struct rtnl_qdisc *);
33
34extern int rtnl_qdisc_tbf_set_peakrate(struct rtnl_qdisc *, int, int, int);
35extern int rtnl_qdisc_tbf_get_peakrate(struct rtnl_qdisc *);
36extern int rtnl_qdisc_tbf_get_peakrate_bucket(struct rtnl_qdisc *);
37extern int rtnl_qdisc_tbf_get_peakrate_cell(struct rtnl_qdisc *);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif
44