Git Product home page Git Product logo

mail-dkim's Introduction

Mail-DKIM

Build Status

Mail-DKIM

This module implements the various components of the DKIM, ARC, and DomainKeys message-signing and verifying standards for Internet mail. It currently tries to implement these specifications:

With each release, this module is getting bigger, but don't worry, most of the growth is from having more things to test with `make test'.

INSTALLATION

To install this module type the following:

perl Makefile.PL make make test make install

DEPENDENCIES

This module requires these other modules and libraries:

Crypt::OpenSSL::RSA Crypt::PK::Ed25519 Digest::SHA Mail::Address (part of the MailTools package) MIME::Base64 Net::DNS

USAGE

Decide whether you want to "sign" or "verify" messages. To sign, see the Mail::DKIM::Signer module. To verify, see the Mail::DKIM::Verifier module.

If you want to sign or verify ARC headers (https://tools.ietf.org/html/draft-ietf-dmarc-arc-protocol-06) then look at Mail::DKIM::ARC::Signer and Mail::DKIM::ARC::Verifier

BUGS

Some details of the specification are not completely implemented. See the TODO file for a list of things I know about.

Please report bugs to the CPAN RT or github issue tracker.

If `make test' fails, please include the versions of your installed Crypt::OpenSSL::RSA module and OpenSSL libraries.

COPYRIGHT AND LICENCE

Copyright (C) 2010 by Jason Long Copyright (C) 2006-2009 by Messiah College Copyright (C) 2017 FastMail Pty Ltd. Copyright (C) 2017 by Standcore LLC

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.6 or, at your option, any later version of Perl 5 you may have available.

SEE ALSO

The DKIM proxy home page, http://dkimproxy.sourceforge.net/

SourceForge SVN Repo, svn://svn.code.sf.net/p/dkimproxy/code/Mail-DKIM/trunk

mail-dkim's People

Contributors

bigio avatar brong avatar damienmascre avatar dev-aaront-org avatar fany avatar manwar avatar marcbradshaw avatar mwander avatar pflanze avatar

Watchers

 avatar  avatar  avatar  avatar

mail-dkim's Issues

Bad wrapped DKIM formatted signatures

In some cases, when using DKIM::TextWrap, some spaces are added between keys and values (d=, s=).
Example:

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= server0.domain.tld; h=from:message-id:
date:to :subject:mime-version:content-type:content-transfer-encoding; s= main; bh=fd...

ARC tests coverage

I was looking at test coverage in this module and noted some low numbers. I was wondering if we could improve this number by adding Perl specific tests or it should be added to the suite?

lib/Mail/DKIM/ARC/MessageSignature.pm  100.0   81.2   60.0  100.0   66.6    0.6   91.0
lib/Mail/DKIM/ARC/Seal.pm              100.0   71.4  100.0  100.0   80.0    0.5   92.3
lib/Mail/DKIM/ARC/Signer.pm             56.5   45.3   24.2   56.5   68.7    0.3   51.7
lib/Mail/DKIM/ARC/Verifier.pm           88.7   78.6   67.6   94.1   22.2    2.8   82.4

PS : I will send a PR for the travis changes to enable coverage.

test t/public_key.t fails: reason given is NODATA

t/Mail-DKIM.t ................... ok   
t/policy.t ...................... ok     
t/public_key.t .................. 1/5 
#   Failed test 'reason given is NODATA'
#   at t/public_key.t line 36.
# Looks like you failed 1 test of 5.
t/public_key.t .................. Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/5 subtests 
        (less 2 skipped subtests: 2 okay)

Seems like the response it gets is NXDOMAIN, which I guess is correct for a non-existing domain?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.