crabs_firewall-3.0.1 ©2005-2011 - Christophe CAZAJUS (crabs-mettre_le_signe_at-crabs-world.com)
1 /* 2 **============================================================================= 3 ** crabs_firewall-3.0.1 : Firewall-Masquerade avec interface http 4 ** Copyright (C) 2005-2011 : Christophe CAZAJUS (crabs-mettre_le_signe_at-crabs-world.com) 5 ** 6 ** Ce source fait partie d'un projet logiciel libre. Vous pouvez le distribuer 7 ** et/ou le modifier en respectant les termes de la GNU General Public License 8 ** version 2 ou (suite a votre propre choix) une version ulterieure. 9 ** 10 ** Ce programme est distribue dans l'espoir qu'il puisse etre utile, mais 11 ** sans aucune garantie, meme si il est associe a un produit qui vous en 12 ** propose une. Conformez-vous a la GNU General Public License pour avoir 13 ** plus de precisions. 14 ** 15 ** L'auteur ne peut etre tenu responsable de l'utilisation faite des 16 ** composantes associees a ce projet (en partie ou dans leur totalite). 17 ** 18 ** Une copie du fichier de la GNU GPL est fournie dans le repertoire DOC 19 ** de ce projet sous le nom gnu_gpl.txt 20 ** 21 **============================================================================= 22 */ 23 #include <unistd.h> 24 #include <firewall.h> 25 #include <string.h> 26 #include <stdio.h> 27 #include <stdlib.h> 28 #include <fcntl.h> 29 30 int main( int argc, char** argv ) 31 { 32 char fmt [128] ; 33 char fichier [128] ; 34 time_t t ; 35 struct tm * lt ; 36 StatEthCpu sec ; 37 int in ; 38 39 strcpy( fmt, getenv("FW_HOME") ) ; 40 strcat( fmt, "/var/%04d-%02d-%02d.dat" ) ; 41 time(&t) ; lt = localtime( &t ) ; 42 sprintf( fichier, fmt, lt->tm_year+1900, lt->tm_mon+1, lt->tm_mday ) ; 43 44 if ( argc > 1 ) strcpy( fichier, argv[1] ) ; 45 46 printf( "--==>> %s\n", fichier ) ; 47 in = open( fichier, O_RDONLY ) ; 48 if ( in == -1 ) { perror( "open: " ) ; exit(1) ; } 49 lockf( in, F_LOCK, 0 ) ; 50 while ( read( in, &sec, sizeof( StatEthCpu ) ) > 0 ) 51 { 52 time_t t = (time_t) sec.t ; 53 struct tm* lt = localtime( &t ) ; 54 strftime(fmt, sizeof(fmt), "%H:%M:%S", lt ) ; 55 printf( "%s %ld %d %lu %lu %lu %lu %lu %lu %lu %lu\n", 56 fmt, sec.t, sec.cpu, 57 sec.eth0.recv_bytes, sec.eth0.recv_pack, 58 sec.eth0.trns_bytes, sec.eth0.trns_pack, 59 sec.eth1.recv_bytes, sec.eth1.recv_pack, 60 sec.eth1.trns_bytes, sec.eth1.trns_pack ) ; 61 } 62 lockf( in, F_ULOCK, 0 ) ; 63 close( in ) ; 64 65 return 0 ; 66 } 67
Date de génération : 22/09/2011 21:48