--- mgrep.c.orig 1992-04-11 00:12:27.000000000 +0200 +++ mgrep.c 2011-11-27 13:42:10.000000000 +0100 @@ -1,7 +1,10 @@ /* Copyright (c) 1991 Sun Wu and Udi Manber. All Rights Reserved. */ /* multipattern matcher */ #include +#include #include +#include +#include #define MAXPAT 256 #define MAXLINE 1024 #define MAXSYM 256 @@ -14,11 +17,16 @@ #define W_DELIM 128 #define L_DELIM 10 -extern COUNT, FNAME, SILENT, FILENAMEONLY, num_of_matched; -extern INVERSE; -extern WORDBOUND, WHOLELINE, NOUPPER; +void countline(unsigned char *text, int len); +void monkey1( register unsigned char *text, int start, int end ); +void m_short( register unsigned char *text, int start, int end ); +void f_prep(int pat_index, unsigned char *Pattern); + +extern int COUNT, FNAME, SILENT, FILENAMEONLY, num_of_matched; +extern int INVERSE; +extern int WORDBOUND, WHOLELINE, NOUPPER; extern unsigned char CurrentFileName[], Progname[]; -extern total_line; +extern int total_line; int LONG = 0; int SHORT = 0; @@ -37,7 +45,7 @@ unsigned char pat_len[max_num]; -prepf(fp) +void prepf(fp) int fp; { int length=0, i, p=1, pdx=0, num_pat; @@ -85,7 +93,7 @@ if(p!=0 && p < p_size) p_size = p; } if(p_size == 0) { - fprintf(stderr, "%s: the pattern file is empty\n"); + fprintf(stderr, "%s: the pattern file is empty\n", Progname); exit(2); } if(length > 400 && p_size > 2) LONG = 1; @@ -98,7 +106,7 @@ } -mgrep(fd) +void mgrep(fd) int fd; { register char r_newline = '\n'; @@ -136,7 +144,7 @@ return; } /* end mgrep */ -countline(text, len) +void countline(text, len) unsigned char *text; int len; { int i; @@ -144,7 +152,7 @@ } -monkey1( text, start, end ) +void monkey1( text, start, end ) int start, end; register unsigned char *text; { register unsigned char *textend; @@ -232,7 +240,7 @@ if(INVERSE && !COUNT) while(lastout <= textend) putchar(*lastout++); } -m_short( text, start, end ) +void m_short( text, start, end ) int start, end; register unsigned char *text; { register unsigned char *textend; @@ -292,7 +300,7 @@ if(INVERSE && !COUNT) while(lastout <= textend) putchar(*lastout++); } -f_prep(pat_index, Pattern) +void f_prep(pat_index, Pattern) unsigned char *Pattern ; int pat_index; { int i, j, m;