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-2011 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 #include <netlink/route/qdisc.h> 18 19 #ifdef __cplusplus 20 extern "C" { 21 #endif 22 23 extern void rtnl_qdisc_tbf_set_limit(struct rtnl_qdisc *, int); 24 extern int rtnl_qdisc_tbf_set_limit_by_latency(struct rtnl_qdisc *, int); 25 extern int rtnl_qdisc_tbf_get_limit(struct rtnl_qdisc *); 26 27 extern void rtnl_qdisc_tbf_set_rate(struct rtnl_qdisc *, int, int, int); 28 extern int rtnl_qdisc_tbf_get_rate(struct rtnl_qdisc *); 29 extern int rtnl_qdisc_tbf_get_rate_bucket(struct rtnl_qdisc *); 30 extern int rtnl_qdisc_tbf_get_rate_cell(struct rtnl_qdisc *); 31 32 extern int rtnl_qdisc_tbf_set_peakrate(struct rtnl_qdisc *, int, int, int); 33 extern int rtnl_qdisc_tbf_get_peakrate(struct rtnl_qdisc *); 34 extern int rtnl_qdisc_tbf_get_peakrate_bucket(struct rtnl_qdisc *); 35 extern int rtnl_qdisc_tbf_get_peakrate_cell(struct rtnl_qdisc *); 36 37 #ifdef __cplusplus 38 } 39 #endif 40 41 #endif 42