Eneboo - Documentación para desarrolladores
src/libmysql_macosx/include/my_md5.h
Ir a la documentación de este archivo.
00001 /* Copyright (C) 2000 MySQL AB
00002 
00003    This program is free software; you can redistribute it and/or modify
00004    it under the terms of the GNU General Public License as published by
00005    the Free Software Foundation; version 2 of the License.
00006 
00007    This program is distributed in the hope that it will be useful,
00008    but WITHOUT ANY WARRANTY; without even the implied warranty of
00009    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00010    GNU General Public License for more details.
00011 
00012    You should have received a copy of the GNU General Public License
00013    along with this program; if not, write to the Free Software
00014    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
00015 
00016 
00017 /* MD5.H - header file for MD5C.C
00018  */
00019 
00020 /* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
00021 rights reserved.
00022 
00023 License to copy and use this software is granted provided that it
00024 is identified as the "RSA Data Security, Inc. MD5 Message-Digest
00025 Algorithm" in all material mentioning or referencing this software
00026 or this function.
00027 
00028 License is also granted to make and use derivative works provided
00029 that such works are identified as "derived from the RSA Data
00030 Security, Inc. MD5 Message-Digest Algorithm" in all material
00031 mentioning or referencing the derived work.
00032 
00033 RSA Data Security, Inc. makes no representations concerning either
00034 the merchantability of this software or the suitability of this
00035 software for any particular purpose. It is provided "as is"
00036 without express or implied warranty of any kind.
00037 
00038 These notices must be retained in any copies of any part of this
00039 documentation and/or software.
00040  */
00041 
00042 /* GLOBAL.H - RSAREF types and constants
00043  */
00044 
00045 /* PROTOTYPES should be set to one if and only if the compiler supports
00046   function argument prototyping.
00047 The following makes PROTOTYPES default to 0 if it has not already
00048   been defined with C compiler flags.
00049  */
00050 
00051 /* egcs 1.1.2 under linux didn't defined it.... :( */
00052 
00053 #ifndef PROTOTYPES
00054 #define PROTOTYPES 1                            /* Assume prototypes */
00055 #endif
00056 
00057 /* POINTER defines a generic pointer type */
00058 typedef unsigned char *POINTER;
00059 
00060 /* UINT2 defines a two byte word */
00061 typedef uint16 UINT2;                           /* Fix for MySQL / Alpha */
00062 
00063 /* UINT4 defines a four byte word */
00064 typedef uint32 UINT4;                           /* Fix for MySQL / Alpha */
00065 
00066 /* PROTO_LIST is defined depending on how PROTOTYPES is defined above.
00067 If using PROTOTYPES, then PROTO_LIST returns the list, otherwise it
00068   returns an empty list.
00069  */
00070 #if PROTOTYPES
00071 #define PROTO_LIST(list) list
00072 #else
00073 #define PROTO_LIST(list) ()
00074 #endif
00075 /* MD5 context. */
00076 typedef struct {
00077   UINT4 state[4];                                   /* state (ABCD) */
00078   UINT4 count[2];        /* number of bits, modulo 2^64 (lsb first) */
00079   unsigned char buffer[64];                         /* input buffer */
00080 } my_MD5_CTX;
00081 
00082 #ifdef __cplusplus
00083 extern "C" {
00084 #endif
00085        void my_MD5Init PROTO_LIST ((my_MD5_CTX *));
00086        void my_MD5Update PROTO_LIST
00087          ((my_MD5_CTX *, unsigned char *, unsigned int));
00088        void my_MD5Final PROTO_LIST ((unsigned char [16], my_MD5_CTX *));
00089 
00090 #ifdef __cplusplus
00091 }
00092 #endif
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Propiedades Amigas 'defines'