\hypertarget{spp__ai_8c}{ \section{spp\_\-ai.c File Reference} \label{spp__ai_8c}\index{spp\_\-ai.c@{spp\_\-ai.c}} } {\ttfamily \#include \char`\"{}spp\_\-ai.h\char`\"{}}\par {\ttfamily \#include \char`\"{}sfPolicyUserData.h\char`\"{}}\par {\ttfamily \#include $<$stdlib.h$>$}\par {\ttfamily \#include $<$string.h$>$}\par {\ttfamily \#include $<$pthread.h$>$}\par \subsection*{Functions} \begin{DoxyCompactItemize} \item static void \hyperlink{spp__ai_8c_a3524cbdf8fddbcf38c4ed55241002242}{AI\_\-init} (char $\ast$args) \begin{DoxyCompactList}\small\item\em Initialize the preprocessor module. \item\end{DoxyCompactList}\item static void \hyperlink{spp__ai_8c_a57c05cda012c443cb4c358dc327cd3d1}{AI\_\-process} (void $\ast$pkt, void $\ast$context) \begin{DoxyCompactList}\small\item\em Function executed every time the module receives a packet to be processed. \item\end{DoxyCompactList}\item static \hyperlink{structAI__config}{AI\_\-config} $\ast$ \hyperlink{spp__ai_8c_ae1c5c4b38ee2819d427848eb3046373e}{AI\_\-parse} (char $\ast$args) \begin{DoxyCompactList}\small\item\em Parse the arguments passed to the module saving them to a valid configuration struct. \item\end{DoxyCompactList}\item void \hyperlink{spp__ai_8c_a1b9ebb5c719c7d9426ddfc1f3da36570}{AI\_\-setup} (void) \begin{DoxyCompactList}\small\item\em Set up the preprocessor module. \item\end{DoxyCompactList}\end{DoxyCompactItemize} \subsection*{Variables} \begin{DoxyCompactItemize} \item tSfPolicyUserContextId \hyperlink{spp__ai_8c_a3dd75596c540d148643fe6d1fdc02628}{ex\_\-config} = NULL \end{DoxyCompactItemize} \subsection{Function Documentation} \hypertarget{spp__ai_8c_a3524cbdf8fddbcf38c4ed55241002242}{ \index{spp\_\-ai.c@{spp\_\-ai.c}!AI\_\-init@{AI\_\-init}} \index{AI\_\-init@{AI\_\-init}!spp_ai.c@{spp\_\-ai.c}} \subsubsection[{AI\_\-init}]{\setlength{\rightskip}{0pt plus 5cm}static void AI\_\-init ( \begin{DoxyParamCaption} \item[{char $\ast$}]{ args} \end{DoxyParamCaption} )\hspace{0.3cm}{\ttfamily \mbox{[}static\mbox{]}}}} \label{spp__ai_8c_a3524cbdf8fddbcf38c4ed55241002242} Initialize the preprocessor module. FUNCTION: AI\_\-init \begin{DoxyParams}{Parameters} \item[{\em args}]Configuration arguments passed to the module \end{DoxyParams} \hypertarget{spp__ai_8c_ae1c5c4b38ee2819d427848eb3046373e}{ \index{spp\_\-ai.c@{spp\_\-ai.c}!AI\_\-parse@{AI\_\-parse}} \index{AI\_\-parse@{AI\_\-parse}!spp_ai.c@{spp\_\-ai.c}} \subsubsection[{AI\_\-parse}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf AI\_\-config} $\ast$ AI\_\-parse ( \begin{DoxyParamCaption} \item[{char $\ast$}]{ args} \end{DoxyParamCaption} )\hspace{0.3cm}{\ttfamily \mbox{[}static\mbox{]}}}} \label{spp__ai_8c_ae1c5c4b38ee2819d427848eb3046373e} Parse the arguments passed to the module saving them to a valid configuration struct. FUNCTION: \hyperlink{structAI__config}{AI\_\-config} \begin{DoxyParams}{Parameters} \item[{\em args}]Arguments passed to the module \end{DoxyParams} \begin{DoxyReturn}{Returns} Pointer to \hyperlink{structAI__config}{AI\_\-config} keeping the configuration for the module \end{DoxyReturn} \hypertarget{spp__ai_8c_a57c05cda012c443cb4c358dc327cd3d1}{ \index{spp\_\-ai.c@{spp\_\-ai.c}!AI\_\-process@{AI\_\-process}} \index{AI\_\-process@{AI\_\-process}!spp_ai.c@{spp\_\-ai.c}} \subsubsection[{AI\_\-process}]{\setlength{\rightskip}{0pt plus 5cm}void AI\_\-process ( \begin{DoxyParamCaption} \item[{void $\ast$}]{ pkt, } \item[{void $\ast$}]{ context} \end{DoxyParamCaption} )\hspace{0.3cm}{\ttfamily \mbox{[}static\mbox{]}}}} \label{spp__ai_8c_a57c05cda012c443cb4c358dc327cd3d1} Function executed every time the module receives a packet to be processed. FUNCTION: AI\_\-process \begin{DoxyParams}{Parameters} \item[{\em pkt}]void$\ast$ pointer to the packet data \item[{\em context}]void$\ast$ pointer to the context \end{DoxyParams} \hypertarget{spp__ai_8c_a1b9ebb5c719c7d9426ddfc1f3da36570}{ \index{spp\_\-ai.c@{spp\_\-ai.c}!AI\_\-setup@{AI\_\-setup}} \index{AI\_\-setup@{AI\_\-setup}!spp_ai.c@{spp\_\-ai.c}} \subsubsection[{AI\_\-setup}]{\setlength{\rightskip}{0pt plus 5cm}void AI\_\-setup ( \begin{DoxyParamCaption} \item[{void}]{} \end{DoxyParamCaption} )}} \label{spp__ai_8c_a1b9ebb5c719c7d9426ddfc1f3da36570} Set up the preprocessor module. FUNCTION: AI\_\-setup \subsection{Variable Documentation} \hypertarget{spp__ai_8c_a3dd75596c540d148643fe6d1fdc02628}{ \index{spp\_\-ai.c@{spp\_\-ai.c}!ex\_\-config@{ex\_\-config}} \index{ex\_\-config@{ex\_\-config}!spp_ai.c@{spp\_\-ai.c}} \subsubsection[{ex\_\-config}]{\setlength{\rightskip}{0pt plus 5cm}tSfPolicyUserContextId {\bf ex\_\-config} = NULL}} \label{spp__ai_8c_a3dd75596c540d148643fe6d1fdc02628}