From fdfec12a5f272c8f960f3fcbc4af356f80fc1b9a Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Tue, 16 Apr 2024 18:21:59 +0200 Subject: [PATCH] wireguard.cgi: Show peers in a table Signed-off-by: Michael Tremer --- html/cgi-bin/wireguard.cgi | 100 +++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) diff --git a/html/cgi-bin/wireguard.cgi b/html/cgi-bin/wireguard.cgi index c49f11687..73d40e7ab 100644 --- a/html/cgi-bin/wireguard.cgi +++ b/html/cgi-bin/wireguard.cgi @@ -34,6 +34,10 @@ my @errormessages = (); my %settings = (); &General::readhash("/var/ipfire/wireguard/settings", \%settings); +# Read all peers +my %peers = (); +&General::readhasharray("/var/ipfire/wireguard/peers", \%peers); + # Set any defaults &General::set_defaults(\%settings, { "ENABLED" => "off", @@ -126,7 +130,103 @@ MAIN: END + &Header::closebox(); + + # Show a list with all peers + &Header::openbox('100%', 'LEFT', $Lang::tr{'peers'}); + + print < + + + $Lang::tr{'name'} + + + + $Lang::tr{'remark'} + + + + $Lang::tr{'status'} + + + + $Lang::tr{'action'} + + +END + # Iterate through all peers... + foreach my $key (sort { $peers{$a}[2] cmp $peers{$b}[2] } keys %peers) { + my $enabled = $peers{$key}[0]; + my $type = $peers{$key}[1]; + my $name = $peers{$key}[2]; + my $pubkey = $peers{$key}[3]; + my $endpoint = $peers{$key}[4]; + my $port = $peers{$key}[5]; + my $routes = $peers{$key}[6]; + my $remarks = $peers{$key}[7]; + + my $gif = ($enabled eq "on") ? "on.gif" : "off.gif"; + + print < + + $name + + + + $remarks + + + + TBD + + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + +END + } + + print""; + + # Show controls + print < + + +
+ +
+ + + +END &Header::closebox(); &Header::closepage(); -- 2.39.5