libnl 1.1

include/netlink/route/sch/tbf.h

00001 /*
00002  * netlink/route/sch/tbf.h      TBF Qdisc
00003  *
00004  *      This library is free software; you can redistribute it and/or
00005  *      modify it under the terms of the GNU Lesser General Public
00006  *      License as published by the Free Software Foundation version 2.1
00007  *      of the License.
00008  *
00009  * Copyright (c) 2003-2006 Thomas Graf <tgraf@suug.ch>
00010  */
00011 
00012 #ifndef NETLINK_TBF_H_
00013 #define NETLINK_TBF_H_
00014 
00015 #include <netlink/netlink.h>
00016 #include <netlink/route/tc.h>
00017 
00018 #ifdef __cplusplus
00019 extern "C" {
00020 #endif
00021 
00022 extern int rtnl_qdisc_tbf_set_limit(struct rtnl_qdisc *, int);
00023 extern int rtnl_qdisc_tbf_set_limit_by_latency(struct rtnl_qdisc *, int);
00024 extern int rtnl_qdisc_tbf_get_limit(struct rtnl_qdisc *);
00025 
00026 extern int rtnl_qdisc_tbf_set_mpu(struct rtnl_qdisc *, int);
00027 extern int rtnl_qdisc_tbf_get_mpu(struct rtnl_qdisc *);
00028 
00029 extern int rtnl_qdisc_tbf_set_rate(struct rtnl_qdisc *, int, int, int);
00030 extern int rtnl_qdisc_tbf_get_rate(struct rtnl_qdisc *);
00031 extern int rtnl_qdisc_tbf_get_rate_bucket(struct rtnl_qdisc *);
00032 extern int rtnl_qdisc_tbf_get_rate_cell(struct rtnl_qdisc *);
00033 
00034 extern int rtnl_qdisc_tbf_set_peakrate(struct rtnl_qdisc *, int, int, int);
00035 extern int rtnl_qdisc_tbf_get_peakrate(struct rtnl_qdisc *);
00036 extern int rtnl_qdisc_tbf_get_peakrate_bucket(struct rtnl_qdisc *);
00037 extern int rtnl_qdisc_tbf_get_peakrate_cell(struct rtnl_qdisc *);
00038 
00039 #ifdef __cplusplus
00040 }
00041 #endif
00042 
00043 #endif