public inbox for ipfire-scm@lists.ipfire.org
 help / color / mirror / Atom feed
* [git.ipfire.org] IPFire 2.x development tree branch, next, updated. a8dd6e98ba04b8dc0e7642beab16c9efeaee6e33
@ 2021-10-25 10:59 Arne Fitzenreiter
  0 siblings, 0 replies; only message in thread
From: Arne Fitzenreiter @ 2021-10-25 10:59 UTC (permalink / raw)
  To: ipfire-scm

[-- Attachment #1: Type: text/plain, Size: 4714 bytes --]

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "IPFire 2.x development tree".

The branch, next has been updated
       via  a8dd6e98ba04b8dc0e7642beab16c9efeaee6e33 (commit)
      from  36b00b8ed130601a9aab14036c81c2ea788aa000 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit a8dd6e98ba04b8dc0e7642beab16c9efeaee6e33
Author: Arne Fitzenreiter <arne_f(a)ipfire.org>
Date:   Mon Oct 25 12:58:10 2021 +0200

    speed.cgi: replave parsing of ip show output
    
    latest ipfroute2 update change the output so this repkace it by reading /sys/class/net/*/statistics
    
    Signed-off-by: Arne Fitzenreiter <arne_f(a)ipfire.org>

-----------------------------------------------------------------------

Summary of changes:
 config/qos/makeqosscripts.pl |  2 +-
 html/cgi-bin/speed.cgi       | 47 ++++++++++----------------------------------
 2 files changed, 11 insertions(+), 38 deletions(-)

Difference in files:
diff --git a/config/qos/makeqosscripts.pl b/config/qos/makeqosscripts.pl
index 0694bb78c..878e4bb43 100644
--- a/config/qos/makeqosscripts.pl
+++ b/config/qos/makeqosscripts.pl
@@ -4,7 +4,7 @@
 # IPFire.org - A linux based firewall                                         #
 # Copyright (C) 2007-2021  IPFire Team  <info(a)ipfire.org>                     #
 #                                                                             #
-# This program is free software: you can redistribute it and/or modify        #
+# This program is free software: you c:an redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
 # the Free Software Foundation, either version 3 of the License, or           #
 # (at your option) any later version.                                         #
diff --git a/html/cgi-bin/speed.cgi b/html/cgi-bin/speed.cgi
index 651c3c0b3..d4b83df4f 100644
--- a/html/cgi-bin/speed.cgi
+++ b/html/cgi-bin/speed.cgi
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2007-2021  IPFire Twan  <info(a)ipfire.org>                     #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -25,28 +25,6 @@
 # high system load                                                            #
 ###########################################OA##################################
 #
-# Returns the output of a shell command
-sub General__system_output($) {
-    my @command = @_;
-    my $pid;
-    my @output = ();
-
-    unless ($pid = open(OUTPUT, "-|")) {
-            open(STDERR, ">&STDOUT");
-            exec { ${command[0]} } @command;
-            die "Could not execute @command: $!";
-    }
-
-    waitpid($pid, 0);
-
-    while (<OUTPUT>) {
-            push(@output, $_);
-    }
-
-    close(OUTPUT);
-    return @output;
-}
-#
 # Function which will return the used interface for the red network zone (red0, ppp0, etc).
 sub General__get_red_interface() {
 
@@ -79,21 +57,16 @@ foreach $field (@fields) {
 }
 
 my $interface = &General__get_red_interface();
-my @data_now = &General__system_output("ip", "-s", "link", "show", "$interface");
 
-my $lastline;
-my $rxb_now = 0;
-my $txb_now = 0;
-foreach (@data_now) {
-	if ( $lastline =~ /RX/ ) {
-		@fields = split(/ /, $_);
-		$rxb_now = $fields[4];
-	} elsif ( $lastline =~ /TX/ ) {
-		@fields = split(/ /, $_);
-		$txb_now = $fields[4];
-	}
-	$lastline = $_;
-}
+open(RX, "/sys/class/net/$interface/statistics/rx_bytes") or die "Could not open /sys/class/net/$interface/statistics/rx_bytes";
+my $rxb_now = <RX>;
+close(RX);
+chomp $rxb_now;
+
+open(TX, "/sys/class/net/$interface/statistics/tx_bytes") or die "Could not open /sys/class/net/$interface/statistics/tx_bytes";
+my $txb_now = <TX>;
+close(TX);
+chomp $txb_now;
 
 my ($rx_kbs, $tx_kbs);
 my $rxb_diff	= $rxb_now - $rxb_last;


hooks/post-receive
--
IPFire 2.x development tree

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-10-25 10:59 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-25 10:59 [git.ipfire.org] IPFire 2.x development tree branch, next, updated. a8dd6e98ba04b8dc0e7642beab16c9efeaee6e33 Arne Fitzenreiter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox