Firewall-Masquerade avec interface http

crabs_firewall-3.0.1 ©2005-2011 - Christophe CAZAJUS (crabs-mettre_le_signe_at-crabs-world.com)

suid_cut80~~ / SUID / CUT_80 / main.c
Makefile main.c
    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 <stdio.h>
   24 #include <unistd.h>
   25 #include <string.h>
   26 
   27 int main( int argc, char** argv )
   28     {
   29     char    fichier [128]   ;
   30     FILE*   entree          ;
   31     char    ligne   [80]    ;
   32     int     c               ;
   33     int     l               ;
   34 
   35     strcpy( fichier, "/var/log/" ) ;
   36     strcat( fichier, argv[1] ) ;
   37     if ( argv[2] )
   38         if ( *argv[2] )
   39             {
   40             strcat( fichier, "." ) ;
   41             strncat( fichier, argv[2], 127 ) ;
   42             }
   43 
   44     entree = fopen( fichier, "r" ) ;
   45     if ( !entree )
   46         {
   47         perror( fichier ) ;
   48         return 1 ;
   49         }
   50 
   51     l = -1 ;
   52     while ( ( c = fgetc( entree ) ) != EOF )
   53         {
   54         if ( c == '\n' )
   55             {
   56             if ( l > 0 ) write( 1, ligne, l+1 ) ;
   57             write( 1, "\n", 1 ) ;
   58             l = -1 ;
   59             continue ;
   60             }
   61         l++ ;
   62         if ( l > 80 )
   63             {
   64             int i, pos ;
   65             for( i=l-1; i>=0; i-- ) if ( ligne[i] == ' ' ) break ;
   66             if ( i != 0 )
   67                 {
   68                 write( 1, ligne, i ) ; write( 1, "\n", 1 ) ;
   69                 strcpy( ligne, "...     " ) ;
   70                 for( ++i, pos=8; i<l; pos++, i++ )
   71                     ligne[pos] = ligne[i] ;
   72                 l = pos ;
   73                 }
   74             else
   75                 {
   76                 write( 1, ligne, 80 ) ; write( 1, "\n", 1 ) ;
   77                 strcpy( ligne, "...     " ) ;
   78                 l = 8 ;
   79                 }
   80             }
   81         ligne[l] = (char) c ;
   82         }
   83     if ( l>=0 )
   84         {
   85         write( 1, ligne, l ) ;
   86         write( 1, "\n", 1 ) ;
   87         }
   88     fclose( entree ) ;
   89     return 0 ;
   90     }
   91 
Makefile main.c
suid_cut80~~ / SUID / CUT_80 / main.c

Haut de page

Contacter crabs

Date de génération : 22/09/2011 21:48