<html> <head><title>dkim_sig_process()</title></head> <body> <!-- $Id: dkim_sig_process.html,v 1.2 2010/07/24 04:52:15 cm-msk Exp $ --> <h1>dkim_sig_process()</h1> <p align="right"><a href="index.html">[back to index]</a></p> <table border="0" cellspacing=4 cellpadding=4> <!---------- Synopsis -----------> <tr><th valign="top" align=left width=150>SYNOPSIS</th><td> <pre> #include <dkim.h> <a href="dkim_stat.html">DKIM_STAT</a> dkim_sig_process( <a href="dkim.html"><tt>DKIM</tt></a> *dkim, <a href="dkim_siginfo.html"><tt>DKIM_SIGINFO</tt></a> *sig ); </pre> Runs verification on a signature, returning a result. The function will retrieve the key needed to verify the signature if that hasn't already been done, and if called from the <a href="dkim_set_final.html">final callback</a>, compare the computed body hash to the one found in the signature. <p> Upon completion of processing of the signature, the caller may use <a href="dkim_sig_getflags.html"><tt>dkim_sig_getflags()</tt></a> and <a href="dkim_sig_getbh.html"><tt>dkim_sig_getbh()</tt></a> to retrieve the results of the processing. <p> </td></tr> <!----------- Description ----------> <tr><th valign="top" align=left>DESCRIPTION</th><td> <table border="1" cellspacing=1 cellpadding=4> <tr align="left" valign=top> <th width="80">Called When</th> <td><tt>dkim_sig_process()</tt> can be called from within the user <a href="dkim_set_prescreen.html">prescreen</a> or <a href="dkim_set_final.html">final</a> callbacks, if defined. </td> </tr> </table> <!----------- Arguments ----------> <tr><th valign="top" align=left>ARGUMENTS</th><td> <table border="1" cellspacing=0> <tr bgcolor="#dddddd"><th>Argument</th><th>Description</th></tr> <tr valign="top"><td>dkim</td> <td>DKIM handle, returned by a prior call to <a href="dkim_verify.html"><tt>dkim_verify()</tt></a>. </td></tr> <tr valign="top"><td>sig</td> <td>Signature-specific handle generated by the library. </td></tr> </table> </td></tr> <!----------- Arguments ----------> <tr><th valign="top" align=left>RETURN VALUES</th><td> <table border="1" cellspacing=0> <tr bgcolor="#dddddd"><th>Return Value</th><th>Description</th></tr> <tr valign="top"><td>DKIM_STAT_OK</td> <td>Signature processing was completed. </td></tr> <tr valign="top"><td>DKIM_STAT_NORESOURCE</td> <td>The library was unable to create one or more data structures required to complete the processing. </td></tr> </table> </td></tr> <!----------- Notes ----------> <tr> <th valign="top" align=left>NOTES</th> <td> <ul> <li>A positive result from <tt>dkim_sig_getflags()</tt> after calling this function during the prescreen callback is not sufficient to conclude that the signature is good, since at that time a final result from <tt>dkim_sig_getbh()</tt> is not available. The latter must be tested in the final callback to ensure that the signature was good <i>and</i> the signature's body hash matched the one computed by the library. </ul> </td> </tr> </table> <hr size="1"> <font size="-1"> Copyright (c) 2007 Sendmail, Inc. and its suppliers. All rights reserved. <br> Copyright (c) 2009, 2010, The OpenDKIM Project. All rights reserved. <br> By using this file, you agree to the terms and conditions set forth in the respective licenses. </font> </body> </html>