#!/usr/bin/perl
# $Id: redirrule,v 1.6 2001/02/08 15:57:42 stes Exp $

$IPLOG=$ENV{'IPLOG'};

$i=0;
$flag=$ARGV[$i++];
$chain=$ARGV[$i++];
$num=$ARGV[$i++];
$dev=$ARGV[$i++];
$proto=$ARGV[$i++];
$dport=$ARGV[$i++];
$port=$ARGV[$i++];

$num="" if $num == 0;
$cmd="iptables -t nat $flag $chain $num -j REDIRECT";

$dev=~s/Any//;
$dev=~s/All//;
if ("x$dev" ne "x") {
  $cmd="$cmd -i $dev";
}
if ("x$proto" ne "x" and "$proto" ne "All" and "$proto" ne "Any") {
  $cmd="$cmd -p $proto";
  if ("x$dport" ne "x" and "$dport" ne "All" and "$dport" ne "Any") {
    $cmd="$cmd --dport $dport";
  }
  if ("x$port" ne "x" and "$port" ne "Default") {
     $cmd="$cmd --to-ports $port";
  } 
}

system("$cmd") if "x$cmd" ne "x";
system("echo \"$cmd\" >> $IPLOG");

