Dash:
[t2.git] / misc / luabash / md5 / md5.h
blob63dfffc6bb9532058f85467c7ee31e090780f545
1 /*
2 * Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
3 * rights reserved.
4 *
5 * License to copy and use this software is granted provided that it
6 * is identified as the "RSA Data Security, Inc. MD5 Message-Digest
7 * Algorithm" in all material mentioning or referencing this software
8 * or this function.
9 *
10 * License is also granted to make and use derivative works provided
11 * that such works are identified as "derived from the RSA Data
12 * Security, Inc. MD5 Message-Digest Algorithm" in all material
13 * mentioning or referencing the derived work.
15 * RSA Data Security, Inc. makes no representations concerning either
16 * the merchantability of this software or the suitability of this
17 * software for any particular purpose. It is provided "as is"
18 * without express or implied warranty of any kind.
19 * These notices must be retained in any copies of any part of this
20 * documentation and/or software.
22 * --- T2-COPYRIGHT-NOTE-BEGIN ---
23 * This copyright note is auto-generated by ./scripts/Create-CopyPatch.
25 * T2 SDE: misc/luabash/md5/md5.c
26 * Copyright (C) 2006 The T2 SDE Project
27 * Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991.
28 * Copyright (C) 2006 Felix von Leitner
30 * More information can be found in the files COPYING and README.
32 * This program is free software; you can redistribute it and/or modify
33 * it under the terms of the GNU General Public License as published by
34 * the Free Software Foundation; version 2 of the License. A copy of the
35 * GNU General Public License can be found in the file COPYING.
36 * --- T2-COPYRIGHT-NOTE-END ---
40 #ifndef _MD5_H
41 #define _MD5_H
43 #include <sys/types.h>
44 #include <inttypes.h>
46 __BEGIN_DECLS
49 Define the MD5 context structure.
50 Please DO NOT change the order or contents of the structure as
51 various assembler files depend on it !!
53 typedef struct {
54 uint32_t state[4]; /* state (ABCD) */
55 uint32_t count[2]; /* number of bits, modulo 2^64 (least sig word first) */
56 uint8_t buffer[64]; /* input buffer for incomplete buffer data */
57 } MD5_CTX;
59 void MD5Init(MD5_CTX* ctx);
60 void MD5Update(MD5_CTX* ctx, const uint8_t* buf, size_t len);
61 void MD5Final(uint8_t digest[16], MD5_CTX* ctx);
63 char* md5crypt(const char* pw, const char* salt);
65 __END_DECLS
67 #endif