#!/usr/bin/perl -I/usr/sausalito/perl
#
# Copyright 2000, 2001 Sun Microsystems, Inc.  All rights reserved.
# $Id: ip_masqing,v 1.1.1.1 2004/01/03 06:28:36 shibuya Exp $
# ip_masqing
# enable/disable ip masquerading using ipchains

use Sauce::Service;
use Sauce::Util;
use CCE;

my $DEBUG = 0;

my $cce = new CCE;
$cce->connectfd();

my $sysoid = $cce->event_oid();
my ($ok, $sys) = $cce->get($sysoid, 'Network');

if (!$ok) 
{ 
    $DEBUG && print STDERR "$0: could not get system object $sysoid\n";
    $cce->bye('FAIL', '[[base-network.cantReadSystem]]');
    exit(1);
}

my $enabled = $sys->{nat} || 0;

my $rule = '';
if ($enabled) 
{
    $rule = "/sbin/ipchains -I forward 2 -j MASQ\n";
} 
else 
{
    $rule = "# ip forwarding disabled ($enabled).\n";
}

# edit the ipchains configuration file
Sauce::Util::replaceblock(
    '/etc/ipchains.conf',
    '# start of ip_forwarding block',
    $rule,
    '# end of ip_forwarding block',
);

# restart ipchains
service_run_init('ipchains', 'restart');

$cce->bye('SUCCESS');
exit(0);
