samba-vscan/f-secure vscan-fsav.c,1.1.2.9,1.1.2.10 vscan-fsav.conf,1.1.2.9,1.1.2.10

Rainer Link <[email protected]> Sun, 10 Apr 2005 15:22:53 +0000
Newsgroups gmane.comp.security.virus.openantivirus.cvs
Message-ID <[email protected]>
Update of /cvsroot/openantivirus/samba-vscan/f-secure
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8392/f-secure

Modified Files:
      Tag: VSCAN_0_3
	vscan-fsav.c vscan-fsav.conf 
Log Message:
use file regexp stuff
modified some syslog satements to contain the INFO tag
some other small changes


Index: vscan-fsav.conf
===================================================================
RCS file: /cvsroot/openantivirus/samba-vscan/f-secure/Attic/vscan-fsav.conf,v
retrieving revision 1.1.2.9
retrieving revision 1.1.2.10
diff -u -d -r1.1.2.9 -r1.1.2.10
--- vscan-fsav.conf	7 Dec 2004 21:57:24 -0000	1.1.2.9
+++ vscan-fsav.conf	10 Apr 2005 15:22:51 -0000	1.1.2.10
@@ -57,6 +57,10 @@
 ; seperated list (default: empty list). Use this with care!
 exclude file types =
 
+; exclude files from being scanned via regular expression (PCRE)
+; (default: empty)
+exclude file regexp =
+
 ;
 ; F-Secure AV related settings
 ;

Index: vscan-fsav.c
===================================================================
RCS file: /cvsroot/openantivirus/samba-vscan/f-secure/Attic/vscan-fsav.c,v
retrieving revision 1.1.2.9
retrieving revision 1.1.2.10
diff -u -d -r1.1.2.9 -r1.1.2.10
--- vscan-fsav.c	23 Feb 2005 02:49:37 -0000	1.1.2.9
+++ vscan-fsav.c	10 Apr 2005 15:22:51 -0000	1.1.2.10
@@ -184,6 +184,9 @@
 	DEBUG(5, ("init file type\n"));
 	filetype_init(0, vscan_config.common.exclude_file_types);
 
+        /* initialise file regexp */
+        fileregexp_init(vscan_config.common.exclude_file_regexp);
+
         #if (SMB_VFS_INTERFACE_VERSION >= 6)
          return SMB_VFS_NEXT_CONNECT(handle, conn, svc, user);
         #else
@@ -265,9 +268,13 @@
 #else
                 return default_vfs_ops.open(conn, fname, flags, mode);
 #endif
+        else if ( fileregexp_skipscan(filepath) == VSCAN_FR_SKIP_SCAN ) {
+                if ( vscan_config.common.verbose_file_logging )
+                        vscan_syslog("INFO: file '%s' not scanned as file is machted by exclude regexp", filepath);
+        }
         else if ( filetype_skipscan(filepath) == VSCAN_FT_SKIP_SCAN ) {
-                if ( verbose_file_logging )
-                        vscan_syslog("File '%s' not scanned as file type is on exclude list", filepath);
+                if ( vscan_config.common.verbose_file_logging )
+                        vscan_syslog("INFO: file '%s' not scanned as file type is on exclude list", filepath);
 #if (SMB_VFS_INTERFACE_VERSION >= 6)
                 return SMB_VFS_NEXT_OPEN(handle, conn, fname, flags, mode);
 #else
@@ -313,7 +320,7 @@
 				/* deny access */
 				if ( vscan_config.common.verbose_file_logging )
 					vscan_syslog
-					    ("File '%s' has already been scanned and marked as infected. Not scanned any more. Access denied",
+					    ("INFO: File '%s' has already been scanned and marked as infected. Not scanned any more. Access denied",
 					     filepath);
 
 				/* close handle */
@@ -327,7 +334,7 @@
 				   not marked as infected and not modified */
 				if ( vscan_config.common.verbose_file_logging )
 					vscan_syslog
-					    ("File '%s' has already been scanned, not marked as infected and not modified. Not scanned anymore. Access granted",
+					    ("INFO: File '%s' has already been scanned, not marked as infected and not modified. Not scanned anymore. Access granted",
 					     filepath);
 
 				/* close handle */
@@ -467,11 +474,18 @@
 		return retval;
 	}
 
+        /* dont' scan file which matches exclude regexp */
+        if ( fileregexp_skipscan(filepath) == VSCAN_FR_SKIP_SCAN ) {
+                if ( vscan_config.common.verbose_file_logging )
+                        vscan_syslog("INFO: file '%s' not scanned as file is machted by exclude regexp", filepath);
+                return retval;
+        }
+
 	/* don't scan files which are in the list of exclude file types */
 	if (filetype_skipscan(filepath) == VSCAN_FT_SKIP_SCAN) {
 		if ( vscan_config.common.verbose_file_logging )
 			vscan_syslog
-			    ("File '%s' not scanned as file type is on exclude list",
+			    ("INFO: file '%s' not scanned as file type is on exclude list",
 			     filepath);
 		return retval;
 	}



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click