blob: d1f9cafec20c50299133ef1181531a5a8b2f7612 [file] [log] [blame]
#! /usr/pkg/bin/perl
die "insufficient arguments" if (scalar(@ARGV) < 2);
$src = $ARGV[0];
$dst = $ARGV[1];
$mode = 'transport';
if (scalar(@ARGV) > 2) {
$mode = $ARGV[2];
}
open(OUT, "|setkey -c");
if ($mode eq 'transport') {
print STDERR "install esp transport mode: $src -> $dst\n";
print OUT "spdadd $src $dst any -P out ipsec esp/transport//require;\n";
print OUT "spdadd $dst $src any -P in ipsec esp/transport//require;\n";
} elsif ($mode eq 'delete') {
print STDERR "delete policy: $src -> $dst\n";
print OUT "spddelete $src $dst any -P out;\n";
print OUT "spddelete $dst $src any -P in;\n";
}
close(OUT);