|
NAMEMail::OpenDKIM - Provides an interface to libOpenDKIMSYNOPSIS# sign outgoing message use Mail::DKIM::Signer; # create a signer object my $dkim = Mail::OpenDKIM::Signer->new( Algorithm => 'rsa-sha1', Method => 'relaxed', Domain => 'example.org', Selector => 'selector1', KeyFile => 'private.key', ); # read an email and pass it into the signer, one line at a time while(<STDIN>) { # remove local line terminators chomp; s/\015$//; # use SMTP line terminators $dkim->PRINT("$_\015\012"); } $dkim->CLOSE(); # what is the signature result? my $signature = $dkim->signature; print $signature->as_string; # check validity of incoming message my $o = Mail::OpenDKIM->new(); $o->dkim_init(); my $d = $o->dkim_verify({ id => 'MLM', }); $msg =~ s/\n/\r\n/g; $d->dkim_chunk({ chunkp => $msg, len => length($msg) }); $d->dkim_chunk({ chunkp => '', len => 0 }); $d->dkim_eom(); my $sig = $d->dkim_getsignature(); $d->dkim_sig_process({ sig => $sig }); printf "0x\n", $d->dkim_sig_getflags({ sig => $sig }); $d->dkim_free(); $o->dkim_close(); DESCRIPTIONMail::OpenDKIM, coupled with Mail::OpenDKIM::DKIM, provides a means of calling libOpenDKIM from Perl. Mail::OpenDKIM implements those routine taking a DKIM_LIB argument; those taking a DKIM argument have been implemented in Mail::OpenDKIM::DKIM.Mail::OpenDKIM::Signer provides a drop in replacement for the signature process provided by Mail::DKIM::Signer. When an error is encountered, an Error::Simple object is thrown. SUBROUTINES/METHODSnewCreate a new signing/verifying object. After doing this you will need to call the dkim_init method before you can do much else.dkim_initFor further information, refer to http://www.opendkim.org/libopendkim/dkim_closeFor further information, refer to http://www.opendkim.org/libopendkim/dkim_flush_cacheFor further information, refer to http://www.opendkim.org/libopendkim/dkim_libfeatureFor further information, refer to http://www.opendkim.org/libopendkim/dkim_signFor further information, refer to http://www.opendkim.org/libopendkim/Returns a Mail::OpenDKIM::DKIM object. dkim_verifyFor further information, refer to http://www.opendkim.org/libopendkim/Returns a Mail::OpenDKIM::DKIM object. The memclosure argument is ignored. dkim_getcachestatsFor further information, refer to http://www.opendkim.org/libopendkim/dkim_set_dns_callbackFor further information, refer to http://www.opendkim.org/libopendkim/dkim_set_key_lookupFor further information, refer to http://www.opendkim.org/libopendkim/dkim_set_signature_handleFor further information, refer to http://www.opendkim.org/libopendkim/dkim_set_signature_handle_freeFor further information, refer to http://www.opendkim.org/libopendkim/dkim_set_signature_tagvaluesFor further information, refer to http://www.opendkim.org/libopendkim/dkim_dns_set_query_cancelFor further information, refer to http://www.opendkim.org/libopendkim/dkim_dns_set_query_serviceFor further information, refer to http://www.opendkim.org/libopendkim/dkim_dns_set_query_startFor further information, refer to http://www.opendkim.org/libopendkim/dkim_dns_set_query_waitreplyFor further information, refer to http://www.opendkim.org/libopendkim/dkim_optionsFor further information, refer to http://www.opendkim.org/libopendkim/dkim_libversionStatic method.dkim_ssl_versionStatic method.dkim_getcachestatsStatic method.dkim_getresultstrCalls C routine of same name.dkim_sig_geterrorstrCalls C routine of same name.dkim_mail_parseCalls C routine of same name.EXPORTMany DKIM_* constants, e.g. DKIM_STAT_OK are exported.SEE ALSOMail::DKIMhttp://www.opendkim.org/libopendkim/ RFC 4870, RFC 4871 REPOSITORY<https://github.com/infracaninophile/Mail-OpenDKIM.git>DEPENDENCIESThis module requires these other modules and libraries:Test::More libOpenDKIM 2.10 (http://www.opendkim.org/libopendkim/) C compiler NOTESTested against libOpenDKIM 2.10.3.Only portions of Mail::DKIM::Signer interface, and the support for it, have been implemented. Please report any bugs or feature requests to "bug-mail-opendkim at rt.cpan.org", or through the web interface at <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Mail-OpenDKIM>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. The signature creation rountines have been tested more thoroughly than the signature verification routines. Feedback will be greatfully received. AUTHORNigel HorneVick Khera, "<vivek at khera.org>" Matthew Seaman, "<m.seaman@infracaninophile.co.uk>" SUPPORTYou can find documentation for this module with the perldoc command.perldoc Mail::OpenDKIM You can also look for information at:
SPONSORThis code has been developed under sponsorship of MailerMailer LLC, http://www.mailermailer.com/COPYRIGHT AND LICENCEThis module is Copyright 2014 Khera Communications, Inc. Copyright 2015 Matthew Seaman It is licensed under the same terms as Perl itself.
Visit the GSP FreeBSD Man Page Interface. |