mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	project.
  ext/digest:
    This module provides the module Digest and the abstract class
    Digest::Base.
  ext/digest/md5 (which obsoletes ext/md5):
    This module provides the class Digest::MD5 which implements the
    MD5 Message-Digest Algorithm.
  ext/digest/rmd160:
    This module provides the class Digest::RMD160 which implements the
    RIPEMD-160 cryptographic hash function.
  ext/digest/sha1 (which obsoletes ext/sha1):
    This module provides the class Digest::SHA1 which implements the
    SHA-1 Secure Hash Algorithm.
  ext/digest/sha2:
    This module provides the classes Digest::SHA256, Digest::SHA384
    and Digest::SHA512 which implement the SHA-256, SHA-384 and
    SHA-512 Secure Hash Algorithms, respectively.
  lib/md5.rb, lib/sha1.rb:
    These files are provided for backward compatibility.
All these classes have the common API, which previously ext/md5 and
ext/sha1 modules provided.  While the new API keeps 100% backward
compatibility, it has been enriched with several utility methods.
Read digest.txt for further details.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
		
	
			
		
			
				
	
	
		
			34 lines
		
	
	
	
		
			764 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
	
		
			764 B
		
	
	
	
		
			C
		
	
	
	
	
	
/* $RoughId: md5init.c,v 1.2 2001/07/13 19:49:10 knu Exp $ */
 | 
						|
/* $Id$ */
 | 
						|
 | 
						|
#include "digest.h"
 | 
						|
#include "md5.h"
 | 
						|
 | 
						|
static algo_t md5 = {
 | 
						|
    MD5_DIGEST_LENGTH,
 | 
						|
    sizeof(MD5_CTX),
 | 
						|
    (hash_init_func_t)MD5_Init,
 | 
						|
    (hash_update_func_t)MD5_Update,
 | 
						|
    (hash_end_func_t)MD5_End,
 | 
						|
    (hash_final_func_t)MD5_Final,
 | 
						|
    (hash_equal_func_t)MD5_Equal,
 | 
						|
};
 | 
						|
 | 
						|
void
 | 
						|
Init_md5()
 | 
						|
{
 | 
						|
    VALUE mDigest, cDigest_Base, cDigest_MD5;
 | 
						|
    ID id_metadata;
 | 
						|
 | 
						|
    rb_require("digest.so");
 | 
						|
 | 
						|
    mDigest = rb_path2class("Digest");
 | 
						|
    cDigest_Base = rb_path2class("Digest::Base");
 | 
						|
 | 
						|
    cDigest_MD5 = rb_define_class_under(mDigest, "MD5", cDigest_Base);
 | 
						|
 | 
						|
    id_metadata = rb_intern("metadata");
 | 
						|
 | 
						|
    rb_cvar_declare(cDigest_MD5, id_metadata,
 | 
						|
		    Data_Wrap_Struct(rb_cObject, 0, 0, &md5));
 | 
						|
}
 |