Personal tools
Skip to content. | Skip to navigation
Digest::SHA is a complete implementation of the NIST Secure Hash Standard. It gives Perl programmers a convenient way to calculate SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, and SHA-512/256 message digests. The module can handle all types of input, including partial-byte data.
The Digest::SHA1 module allows you to use the NIST SHA-1 message digest algorithm from within Perl programs. The algorithm takes as input a message of arbitrary length and produces as output a 160-bit "fingerprint" or "message digest" of the input. The Digest::SHA1 module provide a procedural interface for simple use, as well as an object oriented interface that can handle messages of arbitrary length and which can read files directly. A binary digest will be 20 bytes long. A hex digest will be 40 characters long. A base64 digest will be 27 characters long.
This module adds a _create_structured_tree_ subroutine to Directory::Scratch. This method is useful to create a directory structure needed for temporary purposes, e.g. for testing.
One shortcoming of the CPAN clients that currently exist is that they have no way of specifying conflicting downstream dependencies of modules. This module attempts to work around this issue by allowing you to specify conflicting versions of modules separately, and deal with them after the module is done installing. For instance, say you have a module Foo, and some other module Bar uses Foo. If Foo were to change its API in a non-backwards-compatible way, this would cause Bar to break until it is updated to use the new API. Foo can't just depend on the fixed version of Bar, because this will cause a circular dependency (because Bar is already depending on Foo), and this doesn't express intent properly anyway - Foo doesn't use Bar at all. The ideal solution would be for there to be a way to specify conflicting versions of modules in a way that would let CPAN clients update conflicting modules automatically after an existing module is upgraded, but until that happens, this module will allow users to do this manually.
This module provides a function-based interface to dynamic loading as used by Perl. Some details of dynamic loading are very platform-dependent, so correct use of these functions requires the programmer to be mindful of the space of platform variations.
This module provides an interface to libev (<http://software.schmorp.de/pkg/libev.html>). While the included documentation is comprehensive, one might also consult the documentation of libev itself (<http://cvs.schmorp.de/libev/ev.html>) for more subtle details on watcher semantics or some discussion on the available backends, or how to force a specific backend with "LIBEV_FLAGS", or just about in any case because it has much more detailed information.
This module can be used to emit RFC 2822 style date strings.