$Lang::tr{'encryption'}
|
|
@@ -2504,8 +2684,8 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
-
-
+
+
@@ -2514,8 +2694,8 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
-
-
+
+
|
@@ -2532,6 +2712,7 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
$Lang::tr{'grouptype'} |
|
|
@@ -2626,16 +2804,29 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
-
+ |
|
+
+
+ |
@@ -2798,13 +2989,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'}";
@@ -3119,6 +3316,8 @@ sub make_algos($$$$$) {
if ($grp =~ m/^e(.*)$/) {
push(@algo, "ecp$1");
+ } elsif ($grp =~ m/curve25519/) {
+ push(@algo, "$grp");
} else {
push(@algo, "modp$grp");
}
@@ -3134,6 +3333,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");
}
@@ -3147,13 +3348,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);
}