docs/html/node43.html
61b40ee3
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
73e034df
 
61b40ee3
 <!--Converted with LaTeX2HTML 2002-2-1 (1.71)
73e034df
 original version by:  Nikos Drakos, CBLU, University of Leeds
 * revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
 * with significant contributions from:
   Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
 <HTML>
 <HEAD>
96e05490
 <TITLE>Engine structure</TITLE>
 <META NAME="description" CONTENT="Engine structure">
73e034df
 <META NAME="keywords" CONTENT="clamdoc">
 <META NAME="resource-type" CONTENT="document">
 <META NAME="distribution" CONTENT="global">
 
61b40ee3
 <META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
73e034df
 <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
 
 <LINK REL="STYLESHEET" HREF="clamdoc.css">
 
d8f8e62a
 <LINK REL="previous" HREF="node42.html">
96e05490
 <LINK REL="up" HREF="node39.html">
73e034df
 <LINK REL="next" HREF="node44.html">
 </HEAD>
 
 <BODY >
61b40ee3
 
 <DIV CLASS="navigation"><!--Navigation Panel-->
96e05490
 <A NAME="tex2html760"
73e034df
   HREF="node44.html">
 <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
96e05490
 <A NAME="tex2html756"
   HREF="node39.html">
73e034df
 <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
96e05490
 <A NAME="tex2html752"
73e034df
   HREF="node42.html">
 <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
96e05490
 <A NAME="tex2html758"
73e034df
   HREF="node1.html">
 <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>  
 <BR>
96e05490
 <B> Next:</B> <A NAME="tex2html761"
   HREF="node44.html">Database reloading</A>
 <B> Up:</B> <A NAME="tex2html757"
   HREF="node39.html">API</A>
 <B> Previous:</B> <A NAME="tex2html753"
   HREF="node42.html">Error handling</A>
  &nbsp; <B>  <A NAME="tex2html759"
73e034df
   HREF="node1.html">Contents</A></B> 
 <BR>
61b40ee3
 <BR></DIV>
73e034df
 <!--End of Navigation Panel-->
 
96e05490
 <H3><A NAME="SECTION00073400000000000000">
 Engine structure</A>
d8f8e62a
 </H3>
96e05490
     When all required databases are loaded you should prepare the detection
     engine by calling <code>cl_build</code>. In the case of failure you should
     free the memory occupied by the engine with <code>cl_free</code>:
73e034df
     <PRE>
96e05490
 	int cl_build(struct cl_engine *engine);
 	void cl_free(struct cl_engine *engine);
73e034df
 </PRE>
96e05490
     In our example:
73e034df
     <PRE>
96e05490
 	if((ret = cl_build(engine))) {
 	    printf("cl_build() error: %s\n", cl_strerror(ret));
 	    cl_free(engine);
 	    exit(1);
73e034df
 	}
 </PRE>
 
 <P>
96e05490
 <BR><HR>
73e034df
 <ADDRESS>
 Tomasz Kojm
96e05490
 2008-07-16
73e034df
 </ADDRESS>
 </BODY>
 </HTML>