mirror of
https://gitlab.com/shorewall/code.git
synced 2025-08-17 04:07:45 +02:00
First fix for SAME in 4.4.12
This commit is contained in:
@ -959,12 +959,12 @@ sub handle_stickiness( $ ) {
|
|||||||
$rule1 =~ s/-j sticky/-m mark --mark $mark\/$mask -m recent --name $list --set/;
|
$rule1 =~ s/-j sticky/-m mark --mark $mark\/$mask -m recent --name $list --set/;
|
||||||
}
|
}
|
||||||
|
|
||||||
$rule1 =~ s/-A tcpre //;
|
$rule1 =~ s/-A //;
|
||||||
|
|
||||||
add_rule $chainref, $rule1;
|
add_rule $chainref, $rule1;
|
||||||
|
|
||||||
if ( $rule2 ) {
|
if ( $rule2 ) {
|
||||||
$rule2 =~ s/-A tcpre //;
|
$rule2 =~ s/-A //;
|
||||||
add_rule $chainref, $rule2;
|
add_rule $chainref, $rule2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -986,12 +986,12 @@ sub handle_stickiness( $ ) {
|
|||||||
$rule1 =~ s/-j sticko/-m mark --mark $mark -m recent --name $list --rdest --set/;
|
$rule1 =~ s/-j sticko/-m mark --mark $mark -m recent --name $list --rdest --set/;
|
||||||
}
|
}
|
||||||
|
|
||||||
$rule1 =~ s/-A tcout //;
|
$rule1 =~ s/-A //;
|
||||||
|
|
||||||
add_rule $chainref, $rule1;
|
add_rule $chainref, $rule1;
|
||||||
|
|
||||||
if ( $rule2 ) {
|
if ( $rule2 ) {
|
||||||
$rule2 =~ s/-A tcout //;
|
$rule2 =~ s/-A //;
|
||||||
add_rule $chainref, $rule2;
|
add_rule $chainref, $rule2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -275,6 +275,8 @@ sub process_tc_rule( ) {
|
|||||||
fatal_error "SAME rules are only allowed in the PREROUTING and OUTPUT chains" if $chain ne 'tcpre';
|
fatal_error "SAME rules are only allowed in the PREROUTING and OUTPUT chains" if $chain ne 'tcpre';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ensure_mangle_chain( $target );
|
||||||
|
|
||||||
$sticky++;
|
$sticky++;
|
||||||
} elsif ( $target eq 'IPMARK ' ) {
|
} elsif ( $target eq 'IPMARK ' ) {
|
||||||
my ( $srcdst, $mask1, $mask2, $shift ) = ('src', 255, 0, 0 );
|
my ( $srcdst, $mask1, $mask2, $shift ) = ('src', 255, 0, 0 );
|
||||||
|
Reference in New Issue
Block a user