Re: [Clamav-devel] Why the function ac_maketrans defined size of array is 256?

2012-02-03 Thread Tomasz Kojm
On Fri, 03 Feb 2012 08:18:24 +0700 Chatsiri Ratana
chats...@chatsiri.com wrote:
 - Original message -
 On 02/02/2012 05:53 AM, chatsiri wrote:
 Hello All,

 I   debug code of clamav.   Aho-Corasick( AC) Algorithms concepts for
 matching between virus and signature files. Step for AC is build trie
 ( keyword tree)   for inserting signature from virus database files. I 
 have question in step build tire before matching with input
 information. Why source code in static int ac_maketrans(struct
 cli_matcher *root) [1]   define size of array is 256?.

 Because the trie matches byte-by-byte, so each node has 256 children,
 and that includes the root.
 What's contain in node? My view, Node contains a signature files for matching 
 with virus in files.right? My plan for optimized algorithm code of string 
 matching with GPU.

I'd suggest you have a look at the source code - all the information is
there.

-- 
   oo. Tomasz Kojm tk...@clamav.net
  (\/)\. http://www.ClamAV.net/gpg/tkojm.gpg
 \..._ 0DCA5A08407D5288279DB43454822DC8985A444B
   //\   /\  Fri Feb  3 16:57:08 CET 2012
___
http://lurker.clamav.net/list/clamav-devel.html
Please submit your patches to our Bugzilla: http://bugs.clamav.net


Re: [Clamav-devel] Why the function ac_maketrans defined size of array is 256?

2012-02-02 Thread Török Edwin
On 02/02/2012 05:53 AM, chatsiri wrote:
 Hello All,
 
 I  debug code of clamav.  Aho-Corasick( AC) Algorithms concepts for 
 matching between virus and signature files. Step for AC is build trie ( 
 keyword tree)  for inserting signature from virus
 database files. I  have question in step build tire before matching with 
 input information. Why source code in static int ac_maketrans(struct 
 cli_matcher *root) [1]  define size of array is 256?.

Because the trie matches byte-by-byte, so each node has 256 children, and that 
includes the root.

  In addition, Do you using the Depth First Search Algorithm( DFS) for 
 building trie?

ac_maketrans uses BFS.

Best regards,
--Edwin
___
http://lurker.clamav.net/list/clamav-devel.html
Please submit your patches to our Bugzilla: http://bugs.clamav.net