Pull fix from branch_1_1
[freeradius.git] / src / modules / rlm_eap / types / rlm_eap_psk / SOBMMO.h
1 /**\r
2  *@memo         Implementation of the modified counter mode\r
3  *@doc           \r
4  *@author       A. MAGNIEZ (FT R&D - DTL/SSR) \r
5  *\r
6  * Copyright 2006 The FreeRADIUS server project\r
7  */\r
8 \r
9 #ifndef _SOBMMO_H_\r
10 #define _SOBMMO_H_\r
11 \r
12 #include <freeradius-devel/ident.h>\r
13 RCSIDH(SOBMMO_h, "$Id$")\r
14 \r
15 #include "BlockCipher.h"\r
16 \r
17 \r
18 class SOBMMO {\r
19  public:\r
20   \r
21   SOBMMO();\r
22   \r
23   int initialize(const byte* K, BlockCipher* E,const byte* inputBlock,int nb,const byte* counterValues);\r
24   \r
25   byte* getOutputBlock(int id);\r
26   \r
27   virtual ~SOBMMO();\r
28   \r
29 private:\r
30   int sizeBlock; //the size of a block cipher (input and output) in bytes\r
31   int nbOutputBlocks; //number of required output blocks\r
32   byte* outputBlocks; //pointer to output blocks\r
33 };\r
34 \r
35 #endif\r