summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorslioch <slioch@eng-140.vyatta.com>2009-07-29 15:35:49 -0700
committerslioch <slioch@eng-140.vyatta.com>2009-07-29 15:35:49 -0700
commit9d410a3ac19e77de9a2e5340b625d76fc8d4c316 (patch)
tree15750e26fb6f1710817ecd5e6ca091cfb61d91e2
parent56efe337de62f998872bdf72a9858cc4e5021535 (diff)
downloadvyatta-wanloadbalance-9d410a3ac19e77de9a2e5340b625d76fc8d4c316.tar.gz
vyatta-wanloadbalance-9d410a3ac19e77de9a2e5340b625d76fc8d4c316.zip
fix for bug 4762. exclude packets from the mangle output table where the inbound interface for wlb is the same as the packet outbound interface.
-rw-r--r--src/lbdecision.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/lbdecision.cc b/src/lbdecision.cc
index 5534452..0f84630 100644
--- a/src/lbdecision.cc
+++ b/src/lbdecision.cc
@@ -557,8 +557,13 @@ LBDecision::get_application_cmd(LBRule &rule, bool local)
{
string filter;
- if (rule._in_iface.empty() == false && local == false) {
- filter += "-i " + rule._in_iface + " ";
+ if (rule._in_iface.empty() == false) {
+ if (local == true) {
+ filter += " ! -o " + rule._in_iface + " ";
+ }
+ else {
+ filter += "-i " + rule._in_iface + " ";
+ }
}
if (rule._proto.empty() == false) {