54#include "SDL_config.h"
62 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
63 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
64 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
65 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
66 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
67 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
68 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
69 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
73#define F(x, y, z) (((x) & (y)) | ((~x) & (z)))
74#define G(x, y, z) (((x) & (z)) | ((y) & (~z)))
75#define H(x, y, z) ((x) ^ (y) ^ (z))
76#define I(x, y, z) ((y) ^ ((x) | (~z)))
79#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n))))
84#define FF(a, b, c, d, x, s, ac) \
85 {(a) += F ((b), (c), (d)) + (x) + (MD5UINT4)(ac); \
86 (a) = ROTATE_LEFT ((a), (s)); \
89#define GG(a, b, c, d, x, s, ac) \
90 {(a) += G ((b), (c), (d)) + (x) + (MD5UINT4)(ac); \
91 (a) = ROTATE_LEFT ((a), (s)); \
94#define HH(a, b, c, d, x, s, ac) \
95 {(a) += H ((b), (c), (d)) + (x) + (MD5UINT4)(ac); \
96 (a) = ROTATE_LEFT ((a), (s)); \
99#define II(a, b, c, d, x, s, ac) \
100 {(a) += I ((b), (c), (d)) + (x) + (MD5UINT4)(ac); \
101 (a) = ROTATE_LEFT ((a), (s)); \
112 if (mdContext==
NULL)
return;
114 mdContext->
i[0] = mdContext->
i[1] = (
MD5UINT4) 0;
138 if (mdContext ==
NULL)
return;
139 if (inBuf ==
NULL || inLen < 1)
return;
144 mdi = (int) ((mdContext->
i[0] >> 3) & 0x3F);
149 if ((mdContext->
i[0] + ((
MD5UINT4) inLen << 3)) < mdContext->
i[0])
151 mdContext->
i[0] += ((
MD5UINT4) inLen << 3);
152 mdContext->
i[1] += ((
MD5UINT4) inLen >> 29);
158 mdContext->
in[mdi++] = *inBuf++;
164 for (
i = 0, ii = 0;
i < 16;
i++, ii += 4)
187 if (mdContext ==
NULL)
return;
192 in[14] = mdContext->
i[0];
193 in[15] = mdContext->
i[1];
198 mdi = (int) ((mdContext->
i[0] >> 3) & 0x3F);
203 padLen = (mdi < 56) ? (56 - mdi) : (120 - mdi);
209 for (
i = 0, ii = 0;
i < 14;
i++, ii += 4)
219 for (
i = 0, ii = 0;
i < 4;
i++, ii += 4) {
220 mdContext->
digest[ii] = (
unsigned char) (mdContext->
buf[
i] & 0xFF);
221 mdContext->
digest[ii + 1] =
222 (
unsigned char) ((mdContext->
buf[
i] >> 8) & 0xFF);
223 mdContext->
digest[ii + 2] =
224 (
unsigned char) ((mdContext->
buf[
i] >> 16) & 0xFF);
225 mdContext->
digest[ii + 3] =
226 (
unsigned char) ((mdContext->
buf[
i] >> 24) & 0xFF);
SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char const char SDL_SCANF_FORMAT_STRING const char return SDL_ThreadFunction const char void return Uint32 return Uint32 SDL_AssertionHandler void SDL_SpinLock SDL_atomic_t int int return SDL_atomic_t return void void void return void return int return SDL_AudioSpec SDL_AudioSpec return int int return return int SDL_RWops int SDL_AudioSpec Uint8 ** d
GLboolean GLboolean GLboolean b
GLboolean GLboolean GLboolean GLboolean a
GLenum GLuint GLenum GLsizei const GLchar * buf
#define FF(a, b, c, d, x, s, ac)
static unsigned char MD5PADDING[64]
void SDLTest_Md5Final(SDLTest_Md5Context *mdContext)
complete digest computation
void SDLTest_Md5Update(SDLTest_Md5Context *mdContext, unsigned char *inBuf, unsigned int inLen)
update digest from variable length data
#define GG(a, b, c, d, x, s, ac)
static void SDLTest_Md5Transform(MD5UINT4 *buf, MD5UINT4 *in)
#define HH(a, b, c, d, x, s, ac)
#define II(a, b, c, d, x, s, ac)
void SDLTest_Md5Init(SDLTest_Md5Context *mdContext)
initialize the context
unsigned long int MD5UINT4
return Display return Display Bool Bool int int int return Display XEvent Bool(*) XPointer return Display return Display Drawable _Xconst char unsigned int unsigned int return Display Pixmap Pixmap XColor XColor unsigned int unsigned int return Display _Xconst char char int char return Display Visual unsigned int int int char unsigned int unsigned int in i)