//md5.h头文件的内容开始
#define uchar unsigned chartypedef unsigned char *pointer;typedef unsigned short int uint2;typedef unsigned long int uint4;#define proto_list(list) list 【程序编程相关:四种程序启动画面的制作方法(VC)】
#pragma once 【推荐阅读:用ARP伪装广播探测网络中的Sniffe】
void md5init proto_list ((md5_ctx *));void md5update proto_list ((md5_ctx *, unsigned char *, unsigned int));void md5final proto_list ((unsigned char [16], md5_ctx *)); 【扩展信息:VC6.0中基于MSFlexGrid的可】
//md5 context.typedef struct md5_ctx { uint4 state[4]; // state (abcd) uint4 count[2]; // number of bits, modulo 2^64 (lsb first) unsigned char buffer[64]; // input buffer} md5_ctx;
/* constants for md5transform routine. */
#define s11 7#define s12 12#define s13 17#define s14 22#define s21 5#define s22 9#define s23 14#define s24 20#define s31 4#define s32 11#define s33 16#define s34 23#define s41 6#define s42 10#define s43 15#define s44 21
static void md5transform proto_list ((uint4 [4], unsigned char [64]));static void encode proto_list ((unsigned char *, uint4 *, unsigned int));static void decode proto_list ((uint4 *, unsigned char *, unsigned int));static void md5_memcpy proto_list ((pointer, pointer, unsigned int));static void md5_memset proto_list ((pointer, int, unsigned int));
... 下一页