144d362409d5469aed47d19e7908d19bd194493aThomas Graf/* 244d362409d5469aed47d19e7908d19bd194493aThomas Graf * netlink/route/sch/htb.h HTB Qdisc 344d362409d5469aed47d19e7908d19bd194493aThomas Graf * 444d362409d5469aed47d19e7908d19bd194493aThomas Graf * This library is free software; you can redistribute it and/or 544d362409d5469aed47d19e7908d19bd194493aThomas Graf * modify it under the terms of the GNU Lesser General Public 644d362409d5469aed47d19e7908d19bd194493aThomas Graf * License as published by the Free Software Foundation version 2.1 744d362409d5469aed47d19e7908d19bd194493aThomas Graf * of the License. 844d362409d5469aed47d19e7908d19bd194493aThomas Graf * 944d362409d5469aed47d19e7908d19bd194493aThomas Graf * Copyright (c) 2003-2006 Thomas Graf <tgraf@suug.ch> 1044d362409d5469aed47d19e7908d19bd194493aThomas Graf * Copyright (c) 2005 Petr Gotthard <petr.gotthard@siemens.com> 1144d362409d5469aed47d19e7908d19bd194493aThomas Graf * Copyright (c) 2005 Siemens AG Oesterreich 1244d362409d5469aed47d19e7908d19bd194493aThomas Graf */ 1344d362409d5469aed47d19e7908d19bd194493aThomas Graf 1444d362409d5469aed47d19e7908d19bd194493aThomas Graf#ifndef NETLINK_HTB_H_ 1544d362409d5469aed47d19e7908d19bd194493aThomas Graf#define NETLINK_HTB_H_ 1644d362409d5469aed47d19e7908d19bd194493aThomas Graf 1744d362409d5469aed47d19e7908d19bd194493aThomas Graf#include <netlink/netlink.h> 1844d362409d5469aed47d19e7908d19bd194493aThomas Graf#include <netlink/route/tc.h> 1944d362409d5469aed47d19e7908d19bd194493aThomas Graf 2044d362409d5469aed47d19e7908d19bd194493aThomas Graf#ifdef __cplusplus 2144d362409d5469aed47d19e7908d19bd194493aThomas Grafextern "C" { 2244d362409d5469aed47d19e7908d19bd194493aThomas Graf#endif 2344d362409d5469aed47d19e7908d19bd194493aThomas Graf 2444d362409d5469aed47d19e7908d19bd194493aThomas Grafextern void rtnl_htb_set_rate2quantum(struct rtnl_qdisc *, uint32_t); 2544d362409d5469aed47d19e7908d19bd194493aThomas Grafextern void rtnl_htb_set_defcls(struct rtnl_qdisc *, uint32_t); 2644d362409d5469aed47d19e7908d19bd194493aThomas Graf 2744d362409d5469aed47d19e7908d19bd194493aThomas Grafextern void rtnl_htb_set_prio(struct rtnl_class *, uint32_t); 2844d362409d5469aed47d19e7908d19bd194493aThomas Grafextern void rtnl_htb_set_mtu(struct rtnl_class *, uint32_t); 2944d362409d5469aed47d19e7908d19bd194493aThomas Grafextern void rtnl_htb_set_rate(struct rtnl_class *, uint32_t); 3044d362409d5469aed47d19e7908d19bd194493aThomas Grafextern void rtnl_htb_set_ceil(struct rtnl_class *, uint32_t); 3144d362409d5469aed47d19e7908d19bd194493aThomas Grafextern void rtnl_htb_set_rbuffer(struct rtnl_class *, uint32_t); 3244d362409d5469aed47d19e7908d19bd194493aThomas Grafextern void rtnl_htb_set_cbuffer(struct rtnl_class *, uint32_t); 33cca3921f15ee2e7414a24222c635f0ad47e9547eRui Tiago Cação Matosextern void rtnl_htb_set_quantum(struct rtnl_class *, uint32_t quantum); 34cca3921f15ee2e7414a24222c635f0ad47e9547eRui Tiago Cação Matosextern void rtnl_htb_set_overhead(struct rtnl_class *, uint8_t overhead); 35cca3921f15ee2e7414a24222c635f0ad47e9547eRui Tiago Cação Matosextern void rtnl_htb_set_mpu(struct rtnl_class *, uint8_t mpu); 3644d362409d5469aed47d19e7908d19bd194493aThomas Graf 3744d362409d5469aed47d19e7908d19bd194493aThomas Graf#ifdef __cplusplus 3844d362409d5469aed47d19e7908d19bd194493aThomas Graf} 3944d362409d5469aed47d19e7908d19bd194493aThomas Graf#endif 4044d362409d5469aed47d19e7908d19bd194493aThomas Graf 4144d362409d5469aed47d19e7908d19bd194493aThomas Graf#endif 42