$Lang::tr{'enabled'} |
|
- $Lang::tr{'local subnet'} |
-
-
- |
+ |
+ $Lang::tr{'local ip address'}: |
+
+ |
$Lang::tr{'remote host/ip'}: $blob |
|
+
+
+ $Lang::tr{'local subnet'} |
+
+
+ |
$Lang::tr{'remote subnet'} $blob |
-
+
|
@@ -2044,6 +2197,51 @@ END
print "";
&Header::closebox();
+ if ($cgiparams{'TYPE'} eq 'net') {
+ &Header::openbox('100%', 'left', $Lang::tr{'ipsec settings'});
+ print <
+
+
+ $Lang::tr{'mode'}: |
+
+
+ |
+ |
+
+
+
+ $Lang::tr{'interface mode'}: |
+
+
+ |
+
+ $Lang::tr{'ip address'}/$Lang::tr{'subnet mask'}: |
+
+
+ |
+
+
+
+ $Lang::tr{'mtu'}: |
+
+
+ |
+ |
+
+
+
+EOF
+ &Header::closebox();
+ }
+
if ($cgiparams{'KEY'} && $cgiparams{'AUTH'} eq 'psk') {
&Header::openbox('100%', 'left', $Lang::tr{'authentication'});
print <$Lang::tr{'encryption'}
|
|
@@ -2503,8 +2731,8 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
-
-
+
+
@@ -2513,8 +2741,8 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
-
-
+
+
|
@@ -2545,13 +2773,10 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
-
-
-
-
-
+
+
@@ -2570,13 +2795,10 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
-
-
-
-
-
+
+
|
@@ -2629,16 +2851,29 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
-
+ |
|
+
+
+ |
@@ -2801,13 +3036,19 @@ END
}
print " | $confighash{$key}[25] | ";
my $col1="bgcolor='${Header::colourred}'";
- # get real state
my $active = "$Lang::tr{'capsclosed'}";
+ if ($confighash{$key}[33] eq "add") {
+ $col1="bgcolor='${Header::colourorange}'";
+ $active = "$Lang::tr{'vpn wait'}";
+ }
foreach my $line (@status) {
if (($line =~ /\"$confighash{$key}[1]\".*IPsec SA established/) ||
($line =~ /$confighash{$key}[1]\{.*INSTALLED/)) {
$col1="bgcolor='${Header::colourgreen}'";
$active = "$Lang::tr{'capsopen'}";
+ } elsif ($line =~ /$confighash{$key}[1]\[.*CONNECTING/) {
+ $col1="bgcolor='${Header::colourorange}'";
+ $active = "$Lang::tr{'vpn connecting'}";
} elsif ($line =~ /$confighash{$key}[1]\{.*ROUTED/) {
$col1="bgcolor='${Header::colourorange}'";
$active = "$Lang::tr{'vpn on-demand'}";
@@ -3122,6 +3363,8 @@ sub make_algos($$$$$) {
if ($grp =~ m/^e(.*)$/) {
push(@algo, "ecp$1");
+ } elsif ($grp =~ m/curve25519/) {
+ push(@algo, "$grp");
} else {
push(@algo, "modp$grp");
}
@@ -3137,6 +3380,8 @@ sub make_algos($$$$$) {
# noop
} elsif ($grp =~ m/^e(.*)$/) {
push(@algo, "ecp$1");
+ } elsif ($grp =~ m/curve25519/) {
+ push(@algo, "$grp");
} else {
push(@algo, "modp$grp");
}
@@ -3150,13 +3395,19 @@ sub make_algos($$$$$) {
return &array_unique(\@algos);
}
-sub make_subnets($) {
+sub make_subnets($$) {
+ my $direction = shift;
my $subnets = shift;
my @nets = split(/\|/, $subnets);
my @cidr_nets = ();
foreach my $net (@nets) {
my $cidr_net = &General::ipcidr($net);
+
+ # Skip 0.0.0.0/0 for remote because this renders the
+ # while system inaccessible
+ next if (($direction eq "right") && ($cidr_net eq "0.0.0.0/0"));
+
push(@cidr_nets, $cidr_net);
}