1 /*
2  *************************************************************************
3  * Ralink Tech Inc.
4  * 5F., No.36, Taiyuan St., Jhubei City,
5  * Hsinchu County 302,
6  * Taiwan, R.O.C.
7  *
8  * (c) Copyright 2002-2007, Ralink Technology, Inc.
9  *
10  * This program is free software; you can redistribute it and/or modify  *
11  * it under the terms of the GNU General Public License as published by  *
12  * the Free Software Foundation; either version 2 of the License, or     *
13  * (at your option) any later version.                                   *
14  *                                                                       *
15  * This program is distributed in the hope that it will be useful,       *
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of        *
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
18  * GNU General Public License for more details.                          *
19  *                                                                       *
20  * You should have received a copy of the GNU General Public License     *
21  * along with this program; if not, write to the                         *
22  * Free Software Foundation, Inc.,                                       *
23  * 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
24  *                                                                       *
25  *************************************************************************
26  */
27 
28 /****************************************************************************
29     Module Name:
30     HMAC
31 
32     Abstract:
33     FIPS 198: The Keyed-Hash Message Authentication Code (HMAC)
34 
35     Revision History:
36     Who         When            What
37     --------    ----------      ------------------------------------------
38     Eddy        2008/11/24      Create HMAC-SHA1, HMAC-SHA256
39 ***************************************************************************/
40 #ifndef __CRYPT_HMAC_H__
41 #define __CRYPT_HMAC_H__
42 
43 #ifdef CRYPT_TESTPLAN
44 #include "crypt_testplan.h"
45 #else
46 #include "rt_config.h"
47 #endif /* CRYPT_TESTPLAN */
48 
49 #ifdef SHA1_SUPPORT
50 #define HMAC_SHA1_SUPPORT
51 void HMAC_SHA1(IN const u8 Key[],
52 	       u32 KeyLen,
53 	       IN const u8 Message[],
54 	       u32 MessageLen, u8 MAC[], u32 MACLen);
55 #endif /* SHA1_SUPPORT */
56 
57 #ifdef MD5_SUPPORT
58 #define HMAC_MD5_SUPPORT
59 void HMAC_MD5(IN const u8 Key[],
60 	      u32 KeyLen,
61 	      IN const u8 Message[],
62 	      u32 MessageLen, u8 MAC[], u32 MACLen);
63 #endif /* MD5_SUPPORT */
64 
65 #endif /* __CRYPT_HMAC_H__ */
66