From 5348aafd849d59887051514a004b3c2d4730c8b3 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Mon, 24 Aug 2009 11:28:25 -0300 Subject: Adding traffic shapping support via tcdevices, tcrules and tcclasses --- manifests/init.pp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/manifests/init.pp b/manifests/init.pp index c93b260..84ce030 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -202,6 +202,30 @@ class shorewall { } } + # See http://www.shorewall.net/3.0/traffic_shaping.htm + managed_file { tcdevices: } + define tcdevices($in_bandwidth, $out_bandwidth, $order='100'){ + entry { "tcdevices.d/${order}-${title}": + line => "${name} ${in_bandwidth} ${out_bandwidth}", + } + } + + # See http://www.shorewall.net/3.0/traffic_shaping.htm + managed_file { tcrules: } + define tcrules($source, $destination, $protocol, $ports , $order='1'){ + entry { "tcrules.d/${order}-${title}": + line => "# ${name}\n${order} ${source} ${destination} ${protocol} ${ports}", + } + } + + # See http://www.shorewall.net/3.0/traffic_shaping.htm + managed_file { tcclasses: } + define tcclasses($rate, $ceil, $priority, $options , $order='1'){ + entry { "tcclasses.d/${order}-${title}": + line => "${name} ${order} ${rate} ${ceil} ${priority} ${options}", + } + } + # See http://shorewall.net/shorewall_extension_scripts.htm define extension_script($script = '') { case $name { -- cgit v1.2.3