diff options
author | Andrew Bartlett <abartlet@samba.org> | 2001-07-07 07:00:15 +0000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2001-07-07 07:00:15 +0000 |
commit | 7be19ad10fc30fab199653facd11496170219e1b (patch) | |
tree | 2d4e14c153cc19e5bf893b47f28a4e8c4799277c /source3/include | |
parent | 1c3c9952210346aff1138a4417ff3ceff3ecd9c3 (diff) | |
download | samba-7be19ad10fc30fab199653facd11496170219e1b.tar.gz samba-7be19ad10fc30fab199653facd11496170219e1b.tar.bz2 samba-7be19ad10fc30fab199653facd11496170219e1b.zip |
Add backend encryption support for NTLMv2.
The leg-work for this was done by the folks at samba-tng.org, I'm just bringing
it accross to HEAD.
The MD5 implementation is seperatly derived, and does not have the copyright
problems that the one in TNG has.
Also add const to a few places where it makes sence.
Andrew Bartlett
(This used to be commit 8df8e841445dfe09fc7a06bb55d12adc3fecb345)
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/hmacmd5.h | 33 | ||||
-rw-r--r-- | source3/include/includes.h | 3 | ||||
-rw-r--r-- | source3/include/md5.h | 21 |
3 files changed, 57 insertions, 0 deletions
diff --git a/source3/include/hmacmd5.h b/source3/include/hmacmd5.h new file mode 100644 index 0000000000..adb52058a8 --- /dev/null +++ b/source3/include/hmacmd5.h @@ -0,0 +1,33 @@ +/* + Unix SMB/Netbios implementation. + Version 1.9. + Interface header: Scheduler service + Copyright (C) Luke Kenneth Casson Leighton 1996-1999 + Copyright (C) Andrew Tridgell 1992-1999 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +*/ + +#ifndef _HMAC_MD5_H + +typedef struct +{ + struct MD5Context ctx; + uchar k_ipad[65]; + uchar k_opad[65]; + +} HMACMD5Context; + +#endif /* _HMAC_MD5_H */ diff --git a/source3/include/includes.h b/source3/include/includes.h index 7c1a4a8607..3d6147f587 100644 --- a/source3/include/includes.h +++ b/source3/include/includes.h @@ -663,6 +663,9 @@ extern int errno; #include "mapping.h" +#include "md5.h" +#include "hmacmd5.h" + #ifndef MAXCODEPAGELINES #define MAXCODEPAGELINES 256 #endif diff --git a/source3/include/md5.h b/source3/include/md5.h new file mode 100644 index 0000000000..3737092c86 --- /dev/null +++ b/source3/include/md5.h @@ -0,0 +1,21 @@ +#ifndef MD5_H +#define MD5_H + +struct MD5Context { + uint32 buf[4]; + uint32 bits[2]; + unsigned char in[64]; +}; + +void MD5Init(struct MD5Context *context); +void MD5Update(struct MD5Context *context, unsigned char const *buf, + unsigned len); +void MD5Final(unsigned char digest[16], struct MD5Context *context); +void MD5Transform(uint32 buf[4], uint32 const in[16]); + +/* + * This is needed to make RSAREF happy on some MS-DOS compilers. + */ +typedef struct MD5Context MD5_CTX; + +#endif /* !MD5_H */ |