Browse code

fix trie corruption

git-svn: trunk@1727

Tomasz Kojm authored on 2005/09/27 02:43:00
Showing 2 changed files
... ...
@@ -1,3 +1,8 @@
1
+Mon Sep 26 19:40:14 CEST 2005 (tk)
2
+----------------------------------
3
+  * libclamav/matcher.c: cl_build: cli_addtypesigs was corrupting AC trie in
4
+			 engine->root[0]
5
+
1 6
 Fri Sep 23 04:05:07 CEST 2005 (tk)
2 7
 ----------------------------------
3 8
   * libclamav/clamav.h: split cl_node into cli_matcher and cl_engine
... ...
@@ -449,7 +449,6 @@ int cli_scandesc(int desc, const char **virname, long int *scanned, const struct
449 449
 		pt += 2;
450 450
 	    }
451 451
 	    md5str[32] = 0;
452
-	    cli_dbgmsg("Calculated MD5 checksum: %s\n", md5str);
453 452
 	}
454 453
 
455 454
 	if((md5_node = cli_vermd5(digest, engine)) && !md5_node->fp) {
... ...
@@ -477,14 +476,15 @@ int cl_build(struct cl_engine *engine)
477 477
 	int i, ret;
478 478
 	struct cli_matcher *root;
479 479
 
480
+
481
+    if((ret = cli_addtypesigs(engine)))
482
+	return ret;
483
+
480 484
     for(i = 0; i < CL_TARGET_TABLE_SIZE; i++)
481 485
 	if((root = engine->root[i]))
482 486
 	    cli_ac_buildtrie(root);
483 487
     /* FIXME: check return values of cli_ac_buildtree */
484 488
 
485
-    if((ret = cli_addtypesigs(engine)))
486
-	return ret;
487
-
488 489
     return 0;
489 490
 }
490 491