CMGDK r49-rc2
K:/CMGDKv18/SDK/Source/SQL/MySQL/include/my_md5.h
浏览该文件的文档。
00001 / *   C o p y r i g h t   ( C )   2 0 0 0   M y S Q L   A B 
00002  
00003        T h i s   p r o g r a m   i s   f r e e   s o f t w a r e ;   y o u   c a n   r e d i s t r i b u t e   i t   a n d / o r   m o d i f y 
00004  
00005        i t   u n d e r   t h e   t e r m s   o f   t h e   G N U   G e n e r a l   P u b l i c   L i c e n s e   a s   p u b l i s h e d   b y 
00006  
00007        t h e   F r e e   S o f t w a r e   F o u n d a t i o n ;   v e r s i o n   2   o f   t h e   L i c e n s e . 
00008  
00009        T h i s   p r o g r a m   i s   d i s t r i b u t e d   i n   t h e   h o p e   t h a t   i t   w i l l   b e   u s e f u l , 
00010  
00011        b u t   W I T H O U T   A N Y   W A R R A N T Y ;   w i t h o u t   e v e n   t h e   i m p l i e d   w a r r a n t y   o f 
00012  
00013        M E R C H A N T A B I L I T Y   o r   F I T N E S S   F O R   A   P A R T I C U L A R   P U R P O S E .     S e e   t h e 
00014  
00015        G N U   G e n e r a l   P u b l i c   L i c e n s e   f o r   m o r e   d e t a i l s . 
00016  
00017        Y o u   s h o u l d   h a v e   r e c e i v e d   a   c o p y   o f   t h e   G N U   G e n e r a l   P u b l i c   L i c e n s e 
00018  
00019        a l o n g   w i t h   t h i s   p r o g r a m ;   i f   n o t ,   w r i t e   t o   t h e   F r e e   S o f t w a r e 
00020  
00021        F o u n d a t i o n ,   I n c . ,   5 9   T e m p l e   P l a c e ,   S u i t e   3 3 0 ,   B o s t o n ,   M A     0 2 1 1 1 - 1 3 0 7     U S A   * / 
00022  
00023  / *   S e e   m d 5 . c   f o r   e x p l a n a t i o n   a n d   c o p y r i g h t   i n f o r m a t i o n .     * / 
00024  
00025  / * 
00026  
00027    *   $ F r e e B S D :   s r c / c o n t r i b / c v s / l i b / m d 5 . h , v   1 . 2   1 9 9 9 / 1 2 / 1 1   1 5 : 1 0 : 0 2   p e t e r   E x p   $ 
00028  
00029    * / 
00030  
00031  / *   U n l i k e   p r e v i o u s   v e r s i o n s   o f   t h i s   c o d e ,   u i n t 3 2   n e e d   n o t   b e   e x a c t l y 
00032  
00033        3 2   b i t s ,   m e r e l y   3 2   b i t s   o r   m o r e .     C h o o s i n g   a   d a t a   t y p e   w h i c h   i s   3 2 
00034  
00035        b i t s   i n s t e a d   o f   6 4   i s   n o t   i m p o r t a n t ;   s p e e d   i s   c o n s i d e r a b l y   m o r e 
00036  
00037        i m p o r t a n t .     A N S I   g u a r a n t e e s   t h a t   " u n s i g n e d   l o n g "   w i l l   b e   b i g   e n o u g h , 
00038  
00039        a n d   a l w a y s   u s i n g   i t   s e e m s   t o   h a v e   f e w   d i s a d v a n t a g e s .     * / 
00040  
00041  t y p e d e f   u i n t 3 2   c v s _ u i n t 3 2 ; 
00042  
00043  t y p e d e f   s t r u c t   { 
00044  
00045      c v s _ u i n t 3 2   b u f [ 4 ] ; 
00046  
00047      c v s _ u i n t 3 2   b i t s [ 2 ] ; 
00048  
00049      u n s i g n e d   c h a r   i n [ 6 4 ] ; 
00050  
00051  }   m y _ M D 5 C o n t e x t ; 
00052  
00053  # i f d e f   _ _ c p l u s p l u s 
00054  
00055  e x t e r n   " C "   { 
00056  
00057  # e n d i f 
00058  
00059  v o i d   m y _ M D 5 I n i t   ( m y _ M D 5 C o n t e x t   * c o n t e x t ) ; 
00060  
00061  v o i d   m y _ M D 5 U p d a t e   ( m y _ M D 5 C o n t e x t   * c o n t e x t , 
00062  
00063                                        u n s i g n e d   c h a r   c o n s t   * b u f ,   u n s i g n e d   l e n ) ; 
00064  
00065  v o i d   m y _ M D 5 F i n a l   ( u n s i g n e d   c h a r   d i g e s t [ 1 6 ] , 
00066  
00067                                      m y _ M D 5 C o n t e x t   * c o n t e x t ) ; 
00068  
00069  # i f d e f   _ _ c p l u s p l u s 
00070  
00071  } 
00072  
00073  # e n d i f 
00074  
00075  # d e f i n e   M Y _ M D 5 _ H A S H ( d i g e s t , b u f , l e n )   \ 
00076  
00077  d o   {   \ 
00078  
00079      m y _ M D 5 C o n t e x t   c t x ;   \ 
00080  
00081      m y _ M D 5 I n i t   ( & c t x ) ;   \ 
00082  
00083      m y _ M D 5 U p d a t e   ( & c t x ,   b u f ,   l e n ) ;   \ 
00084  
00085      m y _ M D 5 F i n a l   ( d i g e s t ,   & c t x ) ;   \ 
00086  
00087  }   w h i l e   ( 0 ) 
00088  
00089  
 全部  名字空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义