<refentry id="camel-camel-junk-plugin">
<refmeta>
<refentrytitle role="top_of_page" id="camel-camel-junk-plugin.top_of_page">camel-junk-plugin</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>CAMEL Library</refmiscinfo>
</refmeta>

<refnamediv>
<refname>camel-junk-plugin</refname>
<refpurpose></refpurpose>
</refnamediv>

<refsynopsisdiv id="camel-camel-junk-plugin.synopsis" role="synopsis">
<title role="synopsis.title">Synopsis</title>

<synopsis>
#define             <link linkend="CAMEL-JUNK-PLUGIN--CAPS">CAMEL_JUNK_PLUGIN</link>                   (x)
                    <link linkend="CamelJunkPlugin">CamelJunkPlugin</link>;
const <link linkend="char">char</link> *        <link linkend="camel-junk-plugin-get-name">camel_junk_plugin_get_name</link>          (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp);
<link linkend="int">int</link>                 <link linkend="camel-junk-plugin-check-junk">camel_junk_plugin_check_junk</link>        (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp,
                                                         <link linkend="struct--CamelMimeMessage">struct _CamelMimeMessage</link> *message);
<link linkend="void">void</link>                <link linkend="camel-junk-plugin-report-junk">camel_junk_plugin_report_junk</link>       (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp,
                                                         <link linkend="struct--CamelMimeMessage">struct _CamelMimeMessage</link> *message);
<link linkend="void">void</link>                <link linkend="camel-junk-plugin-report-notjunk">camel_junk_plugin_report_notjunk</link>    (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp,
                                                         <link linkend="struct--CamelMimeMessage">struct _CamelMimeMessage</link> *message);
<link linkend="void">void</link>                <link linkend="camel-junk-plugin-commit-reports">camel_junk_plugin_commit_reports</link>    (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp);
<link linkend="void">void</link>                <link linkend="camel-junk-plugin-init">camel_junk_plugin_init</link>              (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp);
</synopsis>
</refsynopsisdiv>









<refsect1 id="camel-camel-junk-plugin.description" role="desc">
<title role="desc.title">Description</title>
<para>
</para>
</refsect1>

<refsect1 id="camel-camel-junk-plugin.details" role="details">
<title role="details.title">Details</title>
<refsect2 id="CAMEL-JUNK-PLUGIN--CAPS" role="macro">
<title>CAMEL_JUNK_PLUGIN()</title>
<indexterm zone="CAMEL-JUNK-PLUGIN--CAPS"><primary sortas="CAMEL_JUNK_PLUGIN">CAMEL_JUNK_PLUGIN</primary></indexterm><programlisting>#define CAMEL_JUNK_PLUGIN(x) ((CamelJunkPlugin *) x)
</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>x</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="CamelJunkPlugin" role="struct">
<title>CamelJunkPlugin</title>
<indexterm zone="CamelJunkPlugin"><primary sortas="CamelJunkPlugin">CamelJunkPlugin</primary></indexterm><programlisting>typedef struct {
	/* junk filter human readable name, translated */
	const char * (*get_name) (struct _CamelJunkPlugin *csp);

	/* should be set to 1 */
	int api_version;

	/* when called, it should return TRUE if message is identified as junk,
	   FALSE otherwise */
	int (*check_junk) (struct _CamelJunkPlugin *csp, struct _CamelMimeMessage *message);

	/* called when user identified a message to be junk */
	void (*report_junk) (struct _CamelJunkPlugin *csp, struct _CamelMimeMessage *message);

	/* called when user identified a message not to be junk */
	void (*report_notjunk) (struct _CamelJunkPlugin *csp, struct _CamelMimeMessage *message);

	/* called after one or more junk/ham(s) reported */
	void (*commit_reports) (struct _CamelJunkPlugin *csp);

	/* called before all other calls to junk plugin for initialization */
	void (*init) (struct _CamelJunkPlugin *csp);
} CamelJunkPlugin;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="camel-junk-plugin-get-name" role="function">
<title>camel_junk_plugin_get_name ()</title>
<indexterm zone="camel-junk-plugin-get-name"><primary sortas="camel_junk_plugin_get_name">camel_junk_plugin_get_name</primary></indexterm><programlisting>const <link linkend="char">char</link> *        camel_junk_plugin_get_name          (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>csp</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="camel-junk-plugin-check-junk" role="function">
<title>camel_junk_plugin_check_junk ()</title>
<indexterm zone="camel-junk-plugin-check-junk"><primary sortas="camel_junk_plugin_check_junk">camel_junk_plugin_check_junk</primary></indexterm><programlisting><link linkend="int">int</link>                 camel_junk_plugin_check_junk        (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp,
                                                         <link linkend="struct--CamelMimeMessage">struct _CamelMimeMessage</link> *message);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>csp</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>message</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="camel-junk-plugin-report-junk" role="function">
<title>camel_junk_plugin_report_junk ()</title>
<indexterm zone="camel-junk-plugin-report-junk"><primary sortas="camel_junk_plugin_report_junk">camel_junk_plugin_report_junk</primary></indexterm><programlisting><link linkend="void">void</link>                camel_junk_plugin_report_junk       (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp,
                                                         <link linkend="struct--CamelMimeMessage">struct _CamelMimeMessage</link> *message);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>csp</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>message</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="camel-junk-plugin-report-notjunk" role="function">
<title>camel_junk_plugin_report_notjunk ()</title>
<indexterm zone="camel-junk-plugin-report-notjunk"><primary sortas="camel_junk_plugin_report_notjunk">camel_junk_plugin_report_notjunk</primary></indexterm><programlisting><link linkend="void">void</link>                camel_junk_plugin_report_notjunk    (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp,
                                                         <link linkend="struct--CamelMimeMessage">struct _CamelMimeMessage</link> *message);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>csp</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>message</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="camel-junk-plugin-commit-reports" role="function">
<title>camel_junk_plugin_commit_reports ()</title>
<indexterm zone="camel-junk-plugin-commit-reports"><primary sortas="camel_junk_plugin_commit_reports">camel_junk_plugin_commit_reports</primary></indexterm><programlisting><link linkend="void">void</link>                camel_junk_plugin_commit_reports    (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>csp</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="camel-junk-plugin-init" role="function">
<title>camel_junk_plugin_init ()</title>
<indexterm zone="camel-junk-plugin-init"><primary sortas="camel_junk_plugin_init">camel_junk_plugin_init</primary></indexterm><programlisting><link linkend="void">void</link>                camel_junk_plugin_init              (<link linkend="CamelJunkPlugin">CamelJunkPlugin</link> *csp);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>csp</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>

</refsect1>




</refentry>
