1library TF_DLL;
2
3{$ifndef DLL}
4  error('compile with $define DLL');
5  end.
6{$endif}
7
8
9(*************************************************************************
10
11 DESCRIPTION     :  DLL for Twofish
12
13 REQUIREMENTS    :  D2-D7/D9-D10/D12, compile with $define DLL
14
15 EXTERNAL DATA   :  ---
16
17 MEMORY USAGE    :  ---
18
19 DISPLAY MODE    :  ---
20
21 Version  Date      Author      Modification
22 -------  --------  -------     ------------------------------------------
23 0.10     30.05.06  W.Ehrhardt  Initial version analog BF_DLL
24 0.11     04.06.06  we          Incl version info, updated TF_DLL_Version
25 0.12     16.06.07  we          TF_OMAC, TF_EAX; exports TF_Reset
26 0.13     16.07.09  we          TF_DLL_Version returns PAnsiChar
27 0.14     31.07.10  we          TF_CTR_Seek, longint ILen, TF_OMAC_UpdateXL removed
28 0.15     01.08.10  we          Removed TF_CTR_Seek (handled in interface unit)
29**************************************************************************)
30
31(*-------------------------------------------------------------------------
32 (C) Copyright 2006-2010 Wolfgang Ehrhardt
33
34 This software is provided 'as-is', without any express or implied warranty.
35 In no event will the authors be held liable for any damages arising from
36 the use of this software.
37
38 Permission is granted to anyone to use this software for any purpose,
39 including commercial applications, and to alter it and redistribute it
40 freely, subject to the following restrictions:
41
42 1. The origin of this software must not be misrepresented; you must not
43    claim that you wrote the original software. If you use this software in
44    a product, an acknowledgment in the product documentation would be
45    appreciated but is not required.
46
47 2. Altered source versions must be plainly marked as such, and must not be
48    misrepresented as being the original software.
49
50 3. This notice may not be removed or altered from any source distribution.
51----------------------------------------------------------------------------*)
52
53uses
54  tf_base, tf_ctr, tf_cfb, tf_ofb, tf_cbc, tf_ecb, tf_omac, tf_eax;
55
56{$R *.RES}
57
58
59{---------------------------------------------------------------------------}
60function TF_DLL_Version: PAnsiChar; stdcall;
61  {-Return DLL version as PAnsiChar}
62begin
63  Result := '0.15';
64end;
65
66
67exports  TF_DLL_Version        name 'TF_DLL_Version';
68exports  TF_XorBlock           name 'TF_XorBlock';
69exports  TF_Init               name 'TF_Init';
70exports  TF_Encrypt            name 'TF_Encrypt';
71exports  TF_Decrypt            name 'TF_Decrypt';
72exports  TF_Reset              name 'TF_Reset';
73exports  TF_SetFastInit        name 'TF_SetFastInit';
74exports  TF_GetFastInit        name 'TF_GetFastInit';
75
76exports  TF_ECB_Init           name 'TF_ECB_Init';
77exports  TF_ECB_Reset          name 'TF_ECB_Reset';
78exports  TF_ECB_Encrypt        name 'TF_ECB_Encrypt';
79exports  TF_ECB_Decrypt        name 'TF_ECB_Decrypt';
80
81exports  TF_CBC_Init           name 'TF_CBC_Init';
82exports  TF_CBC_Reset          name 'TF_CBC_Reset';
83exports  TF_CBC_Encrypt        name 'TF_CBC_Encrypt';
84exports  TF_CBC_Decrypt        name 'TF_CBC_Decrypt';
85
86exports  TF_CFB_Init           name 'TF_CFB_Init';
87exports  TF_CFB_Reset          name 'TF_CFB_Reset';
88exports  TF_CFB_Encrypt        name 'TF_CFB_Encrypt';
89exports  TF_CFB_Decrypt        name 'TF_CFB_Decrypt';
90
91exports  TF_OFB_Init           name 'TF_OFB_Init';
92exports  TF_OFB_Reset          name 'TF_OFB_Reset';
93exports  TF_OFB_Encrypt        name 'TF_OFB_Encrypt';
94exports  TF_OFB_Decrypt        name 'TF_OFB_Decrypt';
95
96exports  TF_CTR_Init           name 'TF_CTR_Init';
97exports  TF_CTR_Reset          name 'TF_CTR_Reset';
98exports  TF_CTR_Encrypt        name 'TF_CTR_Encrypt';
99exports  TF_CTR_Decrypt        name 'TF_CTR_Decrypt';
100exports  TF_SetIncProc         name 'TF_SetIncProc';
101exports  TF_IncMSBFull         name 'TF_IncMSBFull';
102exports  TF_IncLSBFull         name 'TF_IncLSBFull';
103exports  TF_IncMSBPart         name 'TF_IncMSBPart';
104exports  TF_IncLSBPart         name 'TF_IncLSBPart';
105
106
107exports  TF_OMAC_Init          name 'TF_OMAC_Init';
108exports  TF_OMAC_Update        name 'TF_OMAC_Update';
109exports  TF_OMAC_Final         name 'TF_OMAC_Final';
110exports  TF_OMAC1_Final        name 'TF_OMAC1_Final';
111exports  TF_OMAC2_Final        name 'TF_OMAC2_Final';
112
113exports  TF_EAX_Init           name 'TF_EAX_Init';
114exports  TF_EAX_Provide_Header name 'TF_EAX_Provide_Header';
115exports  TF_EAX_Encrypt        name 'TF_EAX_Encrypt';
116exports  TF_EAX_Decrypt        name 'TF_EAX_Decrypt';
117exports  TF_EAX_Final          name 'TF_EAX_Final';
118
119
120end.
121
122