From 60686bd11585b1a747453b58b976e0381e76d18d Mon Sep 17 00:00:00 2001 From: B4rkod Date: Thu, 9 Nov 2023 11:09:47 +0300 Subject: added netcheck --- netcheck.c | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 netcheck.c diff --git a/netcheck.c b/netcheck.c new file mode 100644 index 0000000..ce07bc2 --- /dev/null +++ b/netcheck.c @@ -0,0 +1,65 @@ +#include +#include +#include + +#define TMP "/tmp/netcheck_test.txt" + +#define ETH_DOWN_CURR fileread("/sys/class/net/eth0/statistics/rx_bytes") +#define ETH_UP_CURR fileread("/sys/class/net/eth0/statistics/tx_bytes") +#define WLAN_DOWN_CURR fileread("/sys/class/net/wlan0/statistics/rx_bytes") +#define WLAN_UP_CURR fileread("/sys/class/net/wlan0/statistics/tx_bytes") + +int con_size(double i){ +if (i > 1000000) + printf(" %1.1lfM", i / 1000000) ; +else if (i > 1000 ) + printf(" %3.0lfK", i / 1000) ; +else + printf(" %3.0lfB", i); +} + +int fileread(char *fi) +{ + FILE *f; unsigned long i; + f = fopen(fi, "r"); + fscanf(f, "%ld", &i); + fclose(f); + return i; +} + +int main() +{ +unsigned long curr_down, curr_up; +unsigned long former_down, former_up, former_time; +unsigned long curr_time = time(NULL); + +curr_down = WLAN_DOWN_CURR + ETH_DOWN_CURR ; +curr_up = WLAN_UP_CURR + ETH_UP_CURR ; + +FILE *tmp_file; +tmp_file = fopen(TMP, "r"); +if (tmp_file != NULL) +{ + fscanf(tmp_file, "%d %d %ld", &former_down, + &former_up, + &former_time); + fclose(tmp_file); + + unsigned short time_diff = curr_time - former_time; + + printf("DOWN"); + con_size((curr_down - former_down) / time_diff); + printf(" UP"); + con_size((curr_up - former_up) / time_diff); + printf("\n"); + } +else + printf("DOWN X UP X\n"); + + tmp_file = fopen(TMP, "w"); + fprintf(tmp_file,"%ld %ld %ld", curr_down, + curr_up, + curr_time); + fclose(tmp_file); +} + -- cgit v1.2.3