libnl
3.2.3
|
00001 /* 00002 * netlink/route/sch/htb.h HTB 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-2011 Thomas Graf <tgraf@suug.ch> 00010 * Copyright (c) 2005 Petr Gotthard <petr.gotthard@siemens.com> 00011 * Copyright (c) 2005 Siemens AG Oesterreich 00012 */ 00013 00014 #ifndef NETLINK_HTB_H_ 00015 #define NETLINK_HTB_H_ 00016 00017 #include <netlink/netlink.h> 00018 #include <netlink/route/tc.h> 00019 00020 #ifdef __cplusplus 00021 extern "C" { 00022 #endif 00023 00024 extern uint32_t rtnl_htb_get_rate2quantum(struct rtnl_qdisc *); 00025 extern int rtnl_htb_set_rate2quantum(struct rtnl_qdisc *, uint32_t); 00026 extern uint32_t rtnl_htb_get_defcls(struct rtnl_qdisc *); 00027 extern int rtnl_htb_set_defcls(struct rtnl_qdisc *, uint32_t); 00028 00029 extern uint32_t rtnl_htb_get_prio(struct rtnl_class *); 00030 extern int rtnl_htb_set_prio(struct rtnl_class *, uint32_t); 00031 extern uint32_t rtnl_htb_get_rate(struct rtnl_class *); 00032 extern int rtnl_htb_set_rate(struct rtnl_class *, uint32_t); 00033 extern uint32_t rtnl_htb_get_ceil(struct rtnl_class *); 00034 extern int rtnl_htb_set_ceil(struct rtnl_class *, uint32_t); 00035 extern uint32_t rtnl_htb_get_rbuffer(struct rtnl_class *); 00036 extern int rtnl_htb_set_rbuffer(struct rtnl_class *, uint32_t); 00037 extern uint32_t rtnl_htb_get_cbuffer(struct rtnl_class *); 00038 extern int rtnl_htb_set_cbuffer(struct rtnl_class *, uint32_t); 00039 extern uint32_t rtnl_htb_get_quantum(struct rtnl_class *); 00040 extern int rtnl_htb_set_quantum(struct rtnl_class *, uint32_t); 00041 extern int rtnl_htb_get_level(struct rtnl_class *); 00042 00043 #ifdef __cplusplus 00044 } 00045 #endif 00046 00047 #endif