You are viewing a plain text version of this content. The canonical link for it is here.
Posted to site-dev@james.apache.org by rd...@apache.org on 2008/08/23 15:24:35 UTC

svn commit: r688314 [5/15] - in /james/site/trunk/www/mailet/crypto: ./ apidocs/ apidocs/org/ apidocs/org/apache/ apidocs/org/apache/james/ apidocs/org/apache/james/security/ apidocs/org/apache/james/security/class-use/ apidocs/org/apache/james/transpo...

Added: james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/AbstractSign.html
URL: http://svn.apache.org/viewvc/james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/AbstractSign.html?rev=688314&view=auto
==============================================================================
--- james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/AbstractSign.html (added)
+++ james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/AbstractSign.html Sat Aug 23 06:24:31 2008
@@ -0,0 +1,1003 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.5.0_16) on Sat Aug 23 14:16:17 BST 2008 -->
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<TITLE>
+AbstractSign (Apache JAMES Crypto Mailets 1.0-SNAPSHOT API)
+</TITLE>
+
+<META NAME="keywords" CONTENT="org.apache.james.transport.mailets.smime.AbstractSign class">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+    parent.document.title="AbstractSign (Apache JAMES Crypto Mailets 1.0-SNAPSHOT API)";
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/AbstractSign.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../org/apache/james/transport/mailets/smime/Sign.html" title="class in org.apache.james.transport.mailets.smime"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../../../index.html?org/apache/james/transport/mailets/smime/AbstractSign.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="AbstractSign.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.apache.james.transport.mailets.smime</FONT>
+<BR>
+Class AbstractSign</H2>
+<PRE>
+java.lang.Object
+  <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by ">org.apache.mailet.GenericMailet
+      <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.james.transport.mailets.smime.AbstractSign</B>
+</PRE>
+<DL>
+<DT><B>All Implemented Interfaces:</B> <DD>org.apache.mailet.Mailet, org.apache.mailet.MailetConfig</DD>
+</DL>
+<DL>
+<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../../../org/apache/james/transport/mailets/smime/Sign.html" title="class in org.apache.james.transport.mailets.smime">Sign</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public abstract class <B>AbstractSign</B><DT>extends org.apache.mailet.GenericMailet</DL>
+</PRE>
+
+<P>
+<P>Abstract mailet providing common SMIME signature services.<BR>
+ It can be subclassed to make authoring signing mailets simple.<BR>
+ By extending it and overriding one or more of the following methods a new behaviour can
+ be quickly created without the author having to address any issue other than
+ the relevant one:</P>
+ <ul>
+ <li><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initDebug()"><CODE>initDebug()</CODE></A>, <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setDebug(boolean)"><CODE>setDebug(boolean)</CODE></A> and <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#isDebug()"><CODE>isDebug()</CODE></A> manage the debugging mode.</li>
+ <li><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initExplanationText()"><CODE>initExplanationText()</CODE></A>, <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setExplanationText(java.lang.String)"><CODE>setExplanationText(java.lang.String)</CODE></A> and <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getExplanationText()"><CODE>getExplanationText()</CODE></A> manage the text of
+ an attachment that will be added to explain the meaning of this server-side signature.</li>
+ <li><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initKeyHolder()"><CODE>initKeyHolder()</CODE></A>, <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setKeyHolder(org.apache.james.security.KeyHolder)"><CODE>setKeyHolder(org.apache.james.security.KeyHolder)</CODE></A> and <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getKeyHolder()"><CODE>getKeyHolder()</CODE></A> manage the <A HREF="../../../../../../org/apache/james/security/KeyHolder.html" title="interface in org.apache.james.security"><CODE>KeyHolder</CODE></A> object that will
+ contain the keys and certificates and will do the crypto work.</li>
+ <li><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initPostmasterSigns()"><CODE>initPostmasterSigns()</CODE></A>, <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setPostmasterSigns(boolean)"><CODE>setPostmasterSigns(boolean)</CODE></A> and <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#isPostmasterSigns()"><CODE>isPostmasterSigns()</CODE></A>
+ determines whether messages originated by the Postmaster will be signed or not.</li>
+ <li><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initRebuildFrom()"><CODE>initRebuildFrom()</CODE></A>, <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setRebuildFrom(boolean)"><CODE>setRebuildFrom(boolean)</CODE></A> and <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#isRebuildFrom()"><CODE>isRebuildFrom()</CODE></A>
+ determines whether the "From:" header will be rebuilt to neutralize the wrong behaviour of
+ some MUAs like Microsoft Outlook Express.</li>
+ <li><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initSignerName()"><CODE>initSignerName()</CODE></A>, <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setSignerName(java.lang.String)"><CODE>setSignerName(java.lang.String)</CODE></A> and <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getSignerName()"><CODE>getSignerName()</CODE></A> manage the name
+ of the signer to be shown in the explanation text.</li>
+ <li><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#isOkToSign(org.apache.mailet.Mail)"><CODE>isOkToSign(org.apache.mailet.Mail)</CODE></A> controls whether the mail can be signed or not.</li>
+ <li>The abstract method <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getWrapperBodyPart(org.apache.mailet.Mail)"><CODE>getWrapperBodyPart(org.apache.mailet.Mail)</CODE></A> returns the massaged <CODE>MimeBodyPart</CODE>
+ that will be signed, or null if the message has to be signed "as is".</li>
+ </ul>
+
+ <P>Handles the following init parameters:</P>
+ <ul>
+ <li>&lt;keyHolderClass&gt;: Sets the class of the KeyHolder object that will handle the cryptography functions,
+ for example org.apache.james.security.SMIMEKeyHolder for SMIME.</li>
+ <li>&lt;debug&gt;: if <CODE>true</CODE> some useful information is logged.
+ The default is <CODE>false</CODE>.</li>
+ <li>&lt;keyStoreFileName&gt;: the <CODE>KeyStore</CODE> full file name.</li>
+ <li>&lt;keyStorePassword&gt;: the <CODE>KeyStore</CODE> password.
+      If given, it is used to check the integrity of the keystore data,
+      otherwise, if null, the integrity of the keystore is not checked.</li>
+ <li>&lt;keyAlias&gt;: the alias name to use to search the Key using <CODE>KeyStore.getKey(java.lang.String, char[])</CODE>.
+ The default is to look for the first and only alias in the keystore;
+ if zero or more than one is found a <CODE>KeyStoreException</CODE> is thrown.</li>
+ <li>&lt;keyAliasPassword&gt;: the alias password. The default is to use the <CODE>KeyStore</CODE> password.
+      At least one of the passwords must be provided.</li>
+ <li>&lt;keyStoreType&gt;: the type of the keystore. The default will use <CODE>KeyStore.getDefaultType()</CODE>.</li>
+ <li>&lt;postmasterSigns&gt;: if <CODE>true</CODE> the message will be signed even if the sender is the Postmaster.
+ The default is <CODE>false</CODE>.</li></li>
+ <li>&lt;rebuildFrom&gt;: If <CODE>true</CODE> will modify the "From:" header.
+ For more info see <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#isRebuildFrom()"><CODE>isRebuildFrom()</CODE></A>.
+ The default is <CODE>false</CODE>.</li>
+ <li>&lt;signerName&gt;: the name of the signer to be shown in the explanation text.
+ The default is to use the "CN=" property of the signing certificate.</li>
+ <li>&lt;explanationText&gt;: the text of an explanation of the meaning of this server-side signature.
+ May contain the following substitution patterns (see also <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getReplacedExplanationText(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><CODE>getReplacedExplanationText(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)</CODE></A>):
+ <CODE>[signerName]</CODE>, <CODE>[signerAddress]</CODE>, <CODE>[reversePath]</CODE>, <CODE>[headers]</CODE>.
+ It should be included in the signature.
+ The actual presentation of the text depends on the specific concrete mailet subclass:
+ see for example <A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMESign.html" title="class in org.apache.james.transport.mailets.smime"><CODE>SMIMESign</CODE></A>.
+ The default is to not have any explanation text.</li>
+ </ul>
+<P>
+
+<P>
+<DL>
+<DT><B>Since:</B></DT>
+  <DD>2.2.1</DD>
+<DT><B>Version:</B></DT>
+  <DD>CVS $Revision: 647925 $ $Date: 2008-04-14 19:38:17 +0100 (Mon, 14 Apr 2008) $</DD>
+</DL>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#AbstractSign()">AbstractSign</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#fromAddressSameAsReverse(org.apache.mailet.Mail)">fromAddressSameAsReverse</A></B>(org.apache.mailet.Mail&nbsp;mail)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Utility method that checks if there is at least one address in the "From:" header
+ same as the <i>reverse-path</i>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected abstract &nbsp;java.lang.String[]</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getAllowedInitParameters()">getAllowedInitParameters</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gets the expected init parameters.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getExplanationText()">getExplanationText</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Getter for property explanationText.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;<A HREF="../../../../../../org/apache/james/security/KeyHolder.html" title="interface in org.apache.james.security">KeyHolder</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getKeyHolder()">getKeyHolder</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Getter for property keyHolder.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.Class</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getKeyHolderClass()">getKeyHolderClass</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Getter for property keyHolderClass.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getMessageHeaders(javax.mail.internet.MimeMessage)">getMessageHeaders</A></B>(javax.mail.internet.MimeMessage&nbsp;message)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Utility method for obtaining a string representation of the Message's headers</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getReplacedExplanationText(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)">getReplacedExplanationText</A></B>(java.lang.String&nbsp;explanationText,
+                           java.lang.String&nbsp;signerName,
+                           java.lang.String&nbsp;signerAddress,
+                           java.lang.String&nbsp;reversePath,
+                           java.lang.String&nbsp;headers)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Prepares the explanation text making substitutions in the <I>explanationText</I> template string.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getSignerName()">getSignerName</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Getter for property signerName.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected abstract &nbsp;javax.mail.internet.MimeBodyPart</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#getWrapperBodyPart(org.apache.mailet.Mail)">getWrapperBodyPart</A></B>(org.apache.mailet.Mail&nbsp;mail)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates the <CODE>MimeBodyPart</CODE> that will be signed.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#init()">init</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mailet initialization routine.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initDebug()">initDebug</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializer for property debug.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initExplanationText()">initExplanationText</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializer for property explanationText.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initKeyHolder()">initKeyHolder</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializer for property keyHolder.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initKeyHolderClass()">initKeyHolderClass</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializer for property keyHolderClass.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initPostmasterSigns()">initPostmasterSigns</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializer for property postmasterSigns.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initRebuildFrom()">initRebuildFrom</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializer for property rebuildFrom.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#initSignerName()">initSignerName</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializer for property signerName.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#isDebug()">isDebug</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Getter for property debug.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#isOkToSign(org.apache.mailet.Mail)">isOkToSign</A></B>(org.apache.mailet.Mail&nbsp;mail)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Checks if the mail can be signed.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#isPostmasterSigns()">isPostmasterSigns</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Getter for property postmasterSigns.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#isRebuildFrom()">isRebuildFrom</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Getter for property rebuildFrom.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#service(org.apache.mailet.Mail)">service</A></B>(org.apache.mailet.Mail&nbsp;mail)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Service does the hard work, and signs</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setDebug(boolean)">setDebug</A></B>(boolean&nbsp;debug)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Setter for property debug.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setExplanationText(java.lang.String)">setExplanationText</A></B>(java.lang.String&nbsp;explanationText)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Setter for property explanationText.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setKeyHolder(org.apache.james.security.KeyHolder)">setKeyHolder</A></B>(<A HREF="../../../../../../org/apache/james/security/KeyHolder.html" title="interface in org.apache.james.security">KeyHolder</A>&nbsp;keyHolder)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Setter for property keyHolder.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setKeyHolderClass(java.lang.Class)">setKeyHolderClass</A></B>(java.lang.Class&nbsp;keyHolderClass)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Setter for property keyHolderClass.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setPostmasterSigns(boolean)">setPostmasterSigns</A></B>(boolean&nbsp;postmasterSigns)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Setter for property postmasterSigns.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setRebuildFrom(boolean)">setRebuildFrom</A></B>(boolean&nbsp;rebuildFrom)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Setter for property rebuildFrom.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#setSignerName(java.lang.String)">setSignerName</A></B>(java.lang.String&nbsp;signerName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Setter for property signerName.</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.apache.mailet.GenericMailet"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class org.apache.mailet.GenericMailet</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>arrayToString, checkInitParameters, destroy, getInitParameter, getInitParameter, getInitParameterNames, getMailetConfig, getMailetContext, getMailetInfo, getMailetName, init, log, log</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="AbstractSign()"><!-- --></A><H3>
+AbstractSign</H3>
+<PRE>
+public <B>AbstractSign</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getAllowedInitParameters()"><!-- --></A><H3>
+getAllowedInitParameters</H3>
+<PRE>
+protected abstract java.lang.String[] <B>getAllowedInitParameters</B>()</PRE>
+<DL>
+<DD>Gets the expected init parameters.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>An array containing the parameter names allowed for this mailet.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="initDebug()"><!-- --></A><H3>
+initDebug</H3>
+<PRE>
+protected void <B>initDebug</B>()</PRE>
+<DL>
+<DD>Initializer for property debug.
+<P>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isDebug()"><!-- --></A><H3>
+isDebug</H3>
+<PRE>
+public boolean <B>isDebug</B>()</PRE>
+<DL>
+<DD>Getter for property debug.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>Value of property debug.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setDebug(boolean)"><!-- --></A><H3>
+setDebug</H3>
+<PRE>
+public void <B>setDebug</B>(boolean&nbsp;debug)</PRE>
+<DL>
+<DD>Setter for property debug.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>debug</CODE> - New value of property debug.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="initKeyHolderClass()"><!-- --></A><H3>
+initKeyHolderClass</H3>
+<PRE>
+protected void <B>initKeyHolderClass</B>()
+                           throws javax.mail.MessagingException</PRE>
+<DL>
+<DD>Initializer for property keyHolderClass.
+<P>
+<DD><DL>
+
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getKeyHolderClass()"><!-- --></A><H3>
+getKeyHolderClass</H3>
+<PRE>
+public java.lang.Class <B>getKeyHolderClass</B>()</PRE>
+<DL>
+<DD>Getter for property keyHolderClass.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>Value of property keyHolderClass.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setKeyHolderClass(java.lang.Class)"><!-- --></A><H3>
+setKeyHolderClass</H3>
+<PRE>
+public void <B>setKeyHolderClass</B>(java.lang.Class&nbsp;keyHolderClass)</PRE>
+<DL>
+<DD>Setter for property keyHolderClass.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>keyHolderClass</CODE> - New value of property keyHolderClass.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="initExplanationText()"><!-- --></A><H3>
+initExplanationText</H3>
+<PRE>
+protected void <B>initExplanationText</B>()</PRE>
+<DL>
+<DD>Initializer for property explanationText.
+<P>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getExplanationText()"><!-- --></A><H3>
+getExplanationText</H3>
+<PRE>
+public java.lang.String <B>getExplanationText</B>()</PRE>
+<DL>
+<DD>Getter for property explanationText.
+ Text to be used in the SignatureExplanation.txt file.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>Value of property explanationText.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setExplanationText(java.lang.String)"><!-- --></A><H3>
+setExplanationText</H3>
+<PRE>
+public void <B>setExplanationText</B>(java.lang.String&nbsp;explanationText)</PRE>
+<DL>
+<DD>Setter for property explanationText.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>explanationText</CODE> - New value of property explanationText.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="initKeyHolder()"><!-- --></A><H3>
+initKeyHolder</H3>
+<PRE>
+protected void <B>initKeyHolder</B>()
+                      throws java.lang.Exception</PRE>
+<DL>
+<DD>Initializer for property keyHolder.
+<P>
+<DD><DL>
+
+<DT><B>Throws:</B>
+<DD><CODE>java.lang.Exception</CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getKeyHolder()"><!-- --></A><H3>
+getKeyHolder</H3>
+<PRE>
+protected <A HREF="../../../../../../org/apache/james/security/KeyHolder.html" title="interface in org.apache.james.security">KeyHolder</A> <B>getKeyHolder</B>()</PRE>
+<DL>
+<DD>Getter for property keyHolder.
+ It is <CODE>protected</CODE> instead of <CODE>public</CODE> for security reasons.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>Value of property keyHolder.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setKeyHolder(org.apache.james.security.KeyHolder)"><!-- --></A><H3>
+setKeyHolder</H3>
+<PRE>
+protected void <B>setKeyHolder</B>(<A HREF="../../../../../../org/apache/james/security/KeyHolder.html" title="interface in org.apache.james.security">KeyHolder</A>&nbsp;keyHolder)</PRE>
+<DL>
+<DD>Setter for property keyHolder.
+ It is <CODE>protected</CODE> instead of <CODE>public</CODE> for security reasons.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>keyHolder</CODE> - New value of property keyHolder.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="initPostmasterSigns()"><!-- --></A><H3>
+initPostmasterSigns</H3>
+<PRE>
+protected void <B>initPostmasterSigns</B>()</PRE>
+<DL>
+<DD>Initializer for property postmasterSigns.
+<P>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isPostmasterSigns()"><!-- --></A><H3>
+isPostmasterSigns</H3>
+<PRE>
+public boolean <B>isPostmasterSigns</B>()</PRE>
+<DL>
+<DD>Getter for property postmasterSigns.
+ If true will sign messages signed by the postmaster.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>Value of property postmasterSigns.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setPostmasterSigns(boolean)"><!-- --></A><H3>
+setPostmasterSigns</H3>
+<PRE>
+public void <B>setPostmasterSigns</B>(boolean&nbsp;postmasterSigns)</PRE>
+<DL>
+<DD>Setter for property postmasterSigns.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>postmasterSigns</CODE> - New value of property postmasterSigns.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="initRebuildFrom()"><!-- --></A><H3>
+initRebuildFrom</H3>
+<PRE>
+protected void <B>initRebuildFrom</B>()
+                        throws javax.mail.MessagingException</PRE>
+<DL>
+<DD>Initializer for property rebuildFrom.
+<P>
+<DD><DL>
+
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isRebuildFrom()"><!-- --></A><H3>
+isRebuildFrom</H3>
+<PRE>
+public boolean <B>isRebuildFrom</B>()</PRE>
+<DL>
+<DD>Getter for property rebuildFrom.
+ If true will modify the "From:" header.
+ <P>The modification is as follows:
+ assuming that the signer mail address in the signer certificate is <I>trusted-server@xxx.com&gt;</I>
+ and that <I>From: "John Smith" <jo...@xxx.com></I>
+ we will get <I>From: "John Smith" <jo...@xxx.com>" &lt;trusted-server@xxx.com&gt;</I>.</P>
+ <P>If the "ReplyTo:" header is missing or empty it will be set to the original "From:" header.</P>
+ <P>Such modification is necessary to achieve a correct behaviour
+ with some mail clients (e.g. Microsoft Outlook Express).</P>
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>Value of property rebuildFrom.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setRebuildFrom(boolean)"><!-- --></A><H3>
+setRebuildFrom</H3>
+<PRE>
+public void <B>setRebuildFrom</B>(boolean&nbsp;rebuildFrom)</PRE>
+<DL>
+<DD>Setter for property rebuildFrom.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>rebuildFrom</CODE> - New value of property rebuildFrom.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="initSignerName()"><!-- --></A><H3>
+initSignerName</H3>
+<PRE>
+protected void <B>initSignerName</B>()</PRE>
+<DL>
+<DD>Initializer for property signerName.
+<P>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getSignerName()"><!-- --></A><H3>
+getSignerName</H3>
+<PRE>
+public java.lang.String <B>getSignerName</B>()</PRE>
+<DL>
+<DD>Getter for property signerName.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>Value of property signerName.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setSignerName(java.lang.String)"><!-- --></A><H3>
+setSignerName</H3>
+<PRE>
+public void <B>setSignerName</B>(java.lang.String&nbsp;signerName)</PRE>
+<DL>
+<DD>Setter for property signerName.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>signerName</CODE> - New value of property signerName.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="init()"><!-- --></A><H3>
+init</H3>
+<PRE>
+public void <B>init</B>()
+          throws javax.mail.MessagingException</PRE>
+<DL>
+<DD>Mailet initialization routine.
+<P>
+<DD><DL>
+<DT><B>Overrides:</B><DD><CODE>init</CODE> in class <CODE>org.apache.mailet.GenericMailet</CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="service(org.apache.mailet.Mail)"><!-- --></A><H3>
+service</H3>
+<PRE>
+public void <B>service</B>(org.apache.mailet.Mail&nbsp;mail)
+             throws javax.mail.MessagingException</PRE>
+<DL>
+<DD>Service does the hard work, and signs
+<P>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE>service</CODE> in interface <CODE>org.apache.mailet.Mailet</CODE><DT><B>Specified by:</B><DD><CODE>service</CODE> in class <CODE>org.apache.mailet.GenericMailet</CODE></DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>mail</CODE> - the mail to sign
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE> - if a problem arises signing the mail</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isOkToSign(org.apache.mailet.Mail)"><!-- --></A><H3>
+isOkToSign</H3>
+<PRE>
+protected boolean <B>isOkToSign</B>(org.apache.mailet.Mail&nbsp;mail)
+                      throws javax.mail.MessagingException</PRE>
+<DL>
+<DD><P>Checks if the mail can be signed.</P>
+ <P>Rules:</P>
+ <OL>
+ <LI>The reverse-path != null (it is not a bounce).</LI>
+ <LI>The sender user must have been SMTP authenticated.</LI>
+ <LI>Either:</LI>
+ <UL>
+ <LI>The reverse-path is the postmaster address and <A HREF="../../../../../../org/apache/james/transport/mailets/smime/AbstractSign.html#isPostmasterSigns()"><CODE>isPostmasterSigns()</CODE></A> returns <I>true</I></LI>
+ <LI>or the reverse-path == the authenticated user
+ and there is at least one "From:" address == reverse-path.</LI>.
+ </UL>
+ <LI>The message has not already been signed (mimeType != <I>multipart/signed</I>
+ and != <I>application/pkcs7-mime</I>).</LI>
+ </OL>
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>mail</CODE> - The mail object to check.
+<DT><B>Returns:</B><DD>True if can be signed.
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getWrapperBodyPart(org.apache.mailet.Mail)"><!-- --></A><H3>
+getWrapperBodyPart</H3>
+<PRE>
+protected abstract javax.mail.internet.MimeBodyPart <B>getWrapperBodyPart</B>(org.apache.mailet.Mail&nbsp;mail)
+                                                                throws javax.mail.MessagingException,
+                                                                       java.io.IOException</PRE>
+<DL>
+<DD>Creates the <CODE>MimeBodyPart</CODE> that will be signed.
+ For example, may attach a text file explaining the meaning of the signature,
+ or an XML file containing information that can be checked by other MTAs.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>mail</CODE> - The mail to massage.
+<DT><B>Returns:</B><DD>The massaged MimeBodyPart to sign, or null to have the whole message signed "as is".
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE>
+<DD><CODE>java.io.IOException</CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="fromAddressSameAsReverse(org.apache.mailet.Mail)"><!-- --></A><H3>
+fromAddressSameAsReverse</H3>
+<PRE>
+protected final boolean <B>fromAddressSameAsReverse</B>(org.apache.mailet.Mail&nbsp;mail)</PRE>
+<DL>
+<DD>Utility method that checks if there is at least one address in the "From:" header
+ same as the <i>reverse-path</i>.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>mail</CODE> - The mail to check.
+<DT><B>Returns:</B><DD>True if an address is found, false otherwise.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getMessageHeaders(javax.mail.internet.MimeMessage)"><!-- --></A><H3>
+getMessageHeaders</H3>
+<PRE>
+protected final java.lang.String <B>getMessageHeaders</B>(javax.mail.internet.MimeMessage&nbsp;message)
+                                            throws javax.mail.MessagingException</PRE>
+<DL>
+<DD>Utility method for obtaining a string representation of the Message's headers
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>message</CODE> - The message to extract the headers from.
+<DT><B>Returns:</B><DD>The string containing the headers.
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getReplacedExplanationText(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
+getReplacedExplanationText</H3>
+<PRE>
+protected final java.lang.String <B>getReplacedExplanationText</B>(java.lang.String&nbsp;explanationText,
+                                                            java.lang.String&nbsp;signerName,
+                                                            java.lang.String&nbsp;signerAddress,
+                                                            java.lang.String&nbsp;reversePath,
+                                                            java.lang.String&nbsp;headers)</PRE>
+<DL>
+<DD>Prepares the explanation text making substitutions in the <I>explanationText</I> template string.
+ Utility method that searches for all occurrences of some pattern strings
+ and substitute them with the appropriate params.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>explanationText</CODE> - The template string for the explanation text.<DD><CODE>signerName</CODE> - The string that will replace the <CODE>[signerName]</CODE> pattern.<DD><CODE>signerAddress</CODE> - The string that will replace the <CODE>[signerAddress]</CODE> pattern.<DD><CODE>reversePath</CODE> - The string that will replace the <CODE>[reversePath]</CODE> pattern.<DD><CODE>headers</CODE> - The string that will replace the <CODE>[headers]</CODE> pattern.
+<DT><B>Returns:</B><DD>The actual explanation text string with all replacements done.</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/AbstractSign.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../org/apache/james/transport/mailets/smime/Sign.html" title="class in org.apache.james.transport.mailets.smime"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../../../index.html?org/apache/james/transport/mailets/smime/AbstractSign.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="AbstractSign.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+Copyright &#169; 2008 <a href="http://www.apache.org">The Apache Software Foundation</a>. All Rights Reserved.
+</BODY>
+</HTML>

Added: james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/SMIMECheckSignature.html
URL: http://svn.apache.org/viewvc/james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/SMIMECheckSignature.html?rev=688314&view=auto
==============================================================================
--- james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/SMIMECheckSignature.html (added)
+++ james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/SMIMECheckSignature.html Sat Aug 23 06:24:31 2008
@@ -0,0 +1,442 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.5.0_16) on Sat Aug 23 14:16:18 BST 2008 -->
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<TITLE>
+SMIMECheckSignature (Apache JAMES Crypto Mailets 1.0-SNAPSHOT API)
+</TITLE>
+
+<META NAME="keywords" CONTENT="org.apache.james.transport.mailets.smime.SMIMECheckSignature class">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+    parent.document.title="SMIMECheckSignature (Apache JAMES Crypto Mailets 1.0-SNAPSHOT API)";
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/SMIMECheckSignature.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../org/apache/james/transport/mailets/smime/Sign.html" title="class in org.apache.james.transport.mailets.smime"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMEDecrypt.html" title="class in org.apache.james.transport.mailets.smime"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../../../index.html?org/apache/james/transport/mailets/smime/SMIMECheckSignature.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="SMIMECheckSignature.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.apache.james.transport.mailets.smime</FONT>
+<BR>
+Class SMIMECheckSignature</H2>
+<PRE>
+java.lang.Object
+  <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by ">org.apache.mailet.GenericMailet
+      <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.james.transport.mailets.smime.SMIMECheckSignature</B>
+</PRE>
+<DL>
+<DT><B>All Implemented Interfaces:</B> <DD>org.apache.mailet.Mailet, org.apache.mailet.MailetConfig</DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public class <B>SMIMECheckSignature</B><DT>extends org.apache.mailet.GenericMailet</DL>
+</PRE>
+
+<P>
+<p>
+ Verifies the s/mime signature of a message. The s/mime signing ensure that
+ the private key owner is the real sender of the message. To be checked by
+ this mailet the s/mime signature must contain the actual signature, the
+ signer's certificate and optionally a set of certificate that can be used to
+ create a chain of trust that starts from the signer's certificate and leads
+ to a known trusted certificate.
+ </p>
+ <p>
+ This check is composed by two steps: firstly it's ensured that the signature
+ is valid, then it's checked if a chain of trust starting from the signer
+ certificate and that leads to a trusted certificate can be created. The first
+ check verifies that the the message has not been modified after the signature
+ was put and that the signer's certificate was valid at the time of the
+ signing. The latter should ensure that the signer is who he declare to be.
+ </p>
+ <p>
+ The results of the checks perfomed by this mailet are wrote as a mail
+ attribute which default name is org.apache.james.SMIMECheckSignature (it can
+ be changed using the mailet parameter <code>mailAttribute</code>). After
+ the check this attribute will contain a list of SMIMESignerInfo object, one
+ for each message's signer. These objects contain the signer's certificate and
+ the trust path.
+ </p>
+ <p>
+ Optionally, specifying the parameter <code>strip</code>, the signature of
+ the message can be stripped after the check. The message will become a
+ standard message without an attached s/mime signature.
+ </p>
+ <p>
+ The configuration parameter of this mailet are summerized below. The firsts
+ defines the location, the format and the password of the keystore containing
+ the certificates that are considered trusted. Note: only the trusted certificate
+ entries are read, the key ones are not.
+ <ul>
+ <li>keyStoreType (default: jks): Certificate store format . "jks" is the
+ standard java certificate store format, but pkcs12 is also quite common and
+ compatible with standard email clients like Outlook Express and Thunderbird.
+ <li>keyStoreFileName (default: JAVA_HOME/jre/lib/security/cacert): Certificate
+ store path.
+ <li>keyStorePassword (default: ""): Certificate store password.
+ </ul>
+ Other parameters configure the behavior of the mailet:
+ <ul>
+ <li>strip (default: false): Defines if the s/mime signature of the message
+ have to be stripped after the check or not. Possible values are true and
+ false.
+ <li>mailAttribute (default: org.apache.james.SMIMECheckSignature):
+ specifies in which attribute the check results will be written.
+ <li>onlyTrusted (default: true): Usually a message signature to be
+ considered by this mailet as authentic must be valid and trusted. Setting
+ this mailet parameter to "false" the last condition is relaxed and also
+ "untrusted" signature are considered will be considered as authentic.
+ </ul>
+ </p>
+<P>
+
+<P>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMECheckSignature.html#mailAttribute">mailAttribute</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMECheckSignature.html#onlyTrusted">onlyTrusted</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMECheckSignature.html#stripSignature">stripSignature</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;<A HREF="../../../../../../org/apache/james/security/KeyStoreHolder.html" title="class in org.apache.james.security">KeyStoreHolder</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMECheckSignature.html#trustedCertificateStore">trustedCertificateStore</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMECheckSignature.html#SMIMECheckSignature()">SMIMECheckSignature</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMECheckSignature.html#init()">init</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMECheckSignature.html#service(org.apache.mailet.Mail)">service</A></B>(org.apache.mailet.Mail&nbsp;mail)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.apache.mailet.GenericMailet"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class org.apache.mailet.GenericMailet</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>arrayToString, checkInitParameters, destroy, getInitParameter, getInitParameter, getInitParameterNames, getMailetConfig, getMailetContext, getMailetInfo, getMailetName, init, log, log</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="trustedCertificateStore"><!-- --></A><H3>
+trustedCertificateStore</H3>
+<PRE>
+protected <A HREF="../../../../../../org/apache/james/security/KeyStoreHolder.html" title="class in org.apache.james.security">KeyStoreHolder</A> <B>trustedCertificateStore</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="stripSignature"><!-- --></A><H3>
+stripSignature</H3>
+<PRE>
+protected boolean <B>stripSignature</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="onlyTrusted"><!-- --></A><H3>
+onlyTrusted</H3>
+<PRE>
+protected boolean <B>onlyTrusted</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="mailAttribute"><!-- --></A><H3>
+mailAttribute</H3>
+<PRE>
+protected java.lang.String <B>mailAttribute</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="SMIMECheckSignature()"><!-- --></A><H3>
+SMIMECheckSignature</H3>
+<PRE>
+public <B>SMIMECheckSignature</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="init()"><!-- --></A><H3>
+init</H3>
+<PRE>
+public void <B>init</B>()
+          throws javax.mail.MessagingException</PRE>
+<DL>
+<DD><DL>
+<DT><B>Overrides:</B><DD><CODE>init</CODE> in class <CODE>org.apache.mailet.GenericMailet</CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="service(org.apache.mailet.Mail)"><!-- --></A><H3>
+service</H3>
+<PRE>
+public void <B>service</B>(org.apache.mailet.Mail&nbsp;mail)
+             throws javax.mail.MessagingException</PRE>
+<DL>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE>service</CODE> in interface <CODE>org.apache.mailet.Mailet</CODE><DT><B>Specified by:</B><DD><CODE>service</CODE> in class <CODE>org.apache.mailet.GenericMailet</CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE><DT><B>See Also:</B><DD><CODE>Matcher.match(org.apache.mailet.Mail)</CODE></DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/SMIMECheckSignature.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../org/apache/james/transport/mailets/smime/Sign.html" title="class in org.apache.james.transport.mailets.smime"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMEDecrypt.html" title="class in org.apache.james.transport.mailets.smime"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../../../index.html?org/apache/james/transport/mailets/smime/SMIMECheckSignature.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="SMIMECheckSignature.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+Copyright &#169; 2008 <a href="http://www.apache.org">The Apache Software Foundation</a>. All Rights Reserved.
+</BODY>
+</HTML>

Added: james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/SMIMEDecrypt.html
URL: http://svn.apache.org/viewvc/james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/SMIMEDecrypt.html?rev=688314&view=auto
==============================================================================
--- james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/SMIMEDecrypt.html (added)
+++ james/site/trunk/www/mailet/crypto/apidocs/org/apache/james/transport/mailets/smime/SMIMEDecrypt.html Sat Aug 23 06:24:31 2008
@@ -0,0 +1,355 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.5.0_16) on Sat Aug 23 14:16:18 BST 2008 -->
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<TITLE>
+SMIMEDecrypt (Apache JAMES Crypto Mailets 1.0-SNAPSHOT API)
+</TITLE>
+
+<META NAME="keywords" CONTENT="org.apache.james.transport.mailets.smime.SMIMEDecrypt class">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+    parent.document.title="SMIMEDecrypt (Apache JAMES Crypto Mailets 1.0-SNAPSHOT API)";
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/SMIMEDecrypt.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMECheckSignature.html" title="class in org.apache.james.transport.mailets.smime"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMESign.html" title="class in org.apache.james.transport.mailets.smime"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../../../index.html?org/apache/james/transport/mailets/smime/SMIMEDecrypt.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="SMIMEDecrypt.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.apache.james.transport.mailets.smime</FONT>
+<BR>
+Class SMIMEDecrypt</H2>
+<PRE>
+java.lang.Object
+  <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by ">org.apache.mailet.GenericMailet
+      <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.james.transport.mailets.smime.SMIMEDecrypt</B>
+</PRE>
+<DL>
+<DT><B>All Implemented Interfaces:</B> <DD>org.apache.mailet.Mailet, org.apache.mailet.MailetConfig</DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public class <B>SMIMEDecrypt</B><DT>extends org.apache.mailet.GenericMailet</DL>
+</PRE>
+
+<P>
+This mailet decrypts a s/mime encrypted message. It takes as input an
+ encrypted message and it tries to dechiper it using the key specified in its
+ configuration. If the decryption is successful the mail will be changed and
+ it will contain the decrypted message. The mail attribute
+ <code>org.apache.james.SMIMEDecrypt</code> will contain the public
+ certificate of the key used in the process. 
+ 
+ The configuration parameters of this mailet are summarized below. The firsts
+ define the keystore where the key that will be used to decrypt messages is
+ saved.
+ <ul>
+ <li>keyStoreType (default: system dependent): defines the type of the store.
+ Usually jks, pkcs12 or pkcs7</li>
+ <li>keyStoreFileName (mandatory): private key store path.</li>
+ <li>keyStorePassword (default: ""): private key store password</li>
+ </ul>
+ The other parameters define which private key have to be used. (if the store
+ contains more than one key).
+ <ul>
+ <li>keyAlias: private key alias.</li>
+ <li>keyPass: private key password</li>
+ </ul>
+<P>
+
+<P>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMEDecrypt.html#mailAttribute">mailAttribute</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMEDecrypt.html#SMIMEDecrypt()">SMIMEDecrypt</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMEDecrypt.html#init()">init</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMEDecrypt.html#service(org.apache.mailet.Mail)">service</A></B>(org.apache.mailet.Mail&nbsp;mail)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.apache.mailet.GenericMailet"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class org.apache.mailet.GenericMailet</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>arrayToString, checkInitParameters, destroy, getInitParameter, getInitParameter, getInitParameterNames, getMailetConfig, getMailetContext, getMailetInfo, getMailetName, init, log, log</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="mailAttribute"><!-- --></A><H3>
+mailAttribute</H3>
+<PRE>
+protected java.lang.String <B>mailAttribute</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="SMIMEDecrypt()"><!-- --></A><H3>
+SMIMEDecrypt</H3>
+<PRE>
+public <B>SMIMEDecrypt</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="init()"><!-- --></A><H3>
+init</H3>
+<PRE>
+public void <B>init</B>()
+          throws javax.mail.MessagingException</PRE>
+<DL>
+<DD><DL>
+<DT><B>Overrides:</B><DD><CODE>init</CODE> in class <CODE>org.apache.mailet.GenericMailet</CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="service(org.apache.mailet.Mail)"><!-- --></A><H3>
+service</H3>
+<PRE>
+public void <B>service</B>(org.apache.mailet.Mail&nbsp;mail)
+             throws javax.mail.MessagingException</PRE>
+<DL>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE>service</CODE> in interface <CODE>org.apache.mailet.Mailet</CODE><DT><B>Specified by:</B><DD><CODE>service</CODE> in class <CODE>org.apache.mailet.GenericMailet</CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Throws:</B>
+<DD><CODE>javax.mail.MessagingException</CODE></DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/SMIMEDecrypt.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMECheckSignature.html" title="class in org.apache.james.transport.mailets.smime"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../org/apache/james/transport/mailets/smime/SMIMESign.html" title="class in org.apache.james.transport.mailets.smime"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../../../index.html?org/apache/james/transport/mailets/smime/SMIMEDecrypt.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="SMIMEDecrypt.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+Copyright &#169; 2008 <a href="http://www.apache.org">The Apache Software Foundation</a>. All Rights Reserved.
+</BODY>
+</HTML>