]> git.ipfire.org Git - thirdparty/sarg.git/blob - exclude.c
89de2e126d33a18175aa5ddc4ccd6141a30c1fe3
[thirdparty/sarg.git] / exclude.c
1 /*
2 * AUTHOR: Pedro Lineu Orso orso@brturbo.com.br
3 * 1998, 2005
4 * SARG Squid Analysis Report Generator http://sarg-squid.org
5 *
6 * SARG donations:
7 * please look at http://sarg.sourceforge.net/donations.php
8 * ---------------------------------------------------------------------
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
23 *
24 */
25
26 #include "include/conf.h"
27
28 int vhexclude(char *excludefile, char *ip)
29 {
30
31 char whost[1024];
32 char wip1[1024], wip2[1024];
33 char sn1[4], sn2[4], sn3[4];
34 char str[strlen(excludefile)];
35
36 whost[0]='\0';
37 strcpy(str,excludefile);
38 getword(whost,str,' ');
39
40 while(strcmp(whost,"*FIM*") != 0) {
41 if(strcmp(ip,whost) ==0)
42 return(0);
43
44 strcpy(wip1,ip);
45 getword(sn1,wip1,'.');
46 getword(sn2,wip1,'.');
47 getword(sn3,wip1,'.');
48
49 sprintf(wip1,"%s.%s.%s.0",sn1,sn2,sn3);
50 sprintf(wip2,"%s.%s.0.0",sn1,sn2);
51
52 if(strstr(whost,wip1) !=0)
53 return(0);
54
55 if(strstr(whost,wip2) !=0)
56 return(0);
57
58 getword(whost,str,' ');
59 }
60
61 return(1);
62 }
63
64
65 int vuexclude(char *excludeuser, char *user)
66 {
67
68 char wuser[MAXLEN];
69
70 strcpy(wuser,user);
71 strcat(wuser," ");
72
73 if(strstr(excludeuser,wuser) != 0 )
74 return(0);
75
76 return(1);
77 }