My Project
UDK 3.2.7 C/C++ API Reference
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
digest.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
3  *
4  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5  *
6  * Copyright 2000, 2010 Oracle and/or its affiliates.
7  *
8  * OpenOffice.org - a multi-platform office productivity suite
9  *
10  * This file is part of OpenOffice.org.
11  *
12  * OpenOffice.org is free software: you can redistribute it and/or modify
13  * it under the terms of the GNU Lesser General Public License version 3
14  * only, as published by the Free Software Foundation.
15  *
16  * OpenOffice.org is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU Lesser General Public License version 3 for more details
20  * (a copy is included in the LICENSE file that accompanied this code).
21  *
22  * You should have received a copy of the GNU Lesser General Public License
23  * version 3 along with OpenOffice.org. If not, see
24  * <http://www.openoffice.org/license.html>
25  * for a copy of the LGPLv3 License.
26  *
27  ************************************************************************/
28 
29 #ifndef _RTL_DIGEST_H_
30 #define _RTL_DIGEST_H_
31 
32 #include <sal/types.h>
33 
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37 
38 /*========================================================================
39  *
40  * rtlDigest.
41  *
42  *======================================================================*/
45 typedef void* rtlDigest;
46 
47 
52 {
57 
60 
63 };
64 
68 
69 
73 {
81 };
82 
86 
87 
94 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_create (
95  rtlDigestAlgorithm Algorithm
97 
98 
104 SAL_DLLPUBLIC void SAL_CALL rtl_digest_destroy (
105  rtlDigest Digest
107 
108 
113 SAL_DLLPUBLIC rtlDigestAlgorithm SAL_CALL rtl_digest_queryAlgorithm (
114  rtlDigest Digest
116 
117 
122 SAL_DLLPUBLIC sal_uInt32 SAL_CALL rtl_digest_queryLength (
123  rtlDigest Digest
125 
126 
134 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_init (
135  rtlDigest Digest,
136  const sal_uInt8 *pData, sal_uInt32 nDatLen
138 
139 
147 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_update (
148  rtlDigest Digest,
149  const void *pData, sal_uInt32 nDatLen
151 
152 
165 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_get (
166  rtlDigest Digest,
167  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
169 
170 /*========================================================================
171  *
172  * rtl_digest_MD2 interface.
173  *
174  *======================================================================*/
175 #define RTL_DIGEST_LENGTH_MD2 16
176 
185 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createMD2 (void) SAL_THROW_EXTERN_C();
186 
187 
191 SAL_DLLPUBLIC void SAL_CALL rtl_digest_destroyMD2 (
192  rtlDigest Digest
193 ) SAL_THROW_EXTERN_C();
194 
195 
199 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateMD2 (
200  rtlDigest Digest,
201  const void *pData, sal_uInt32 nDatLen
202 ) SAL_THROW_EXTERN_C();
203 
204 
208 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getMD2 (
209  rtlDigest Digest,
210  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
211 ) SAL_THROW_EXTERN_C();
212 
213 
228 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_MD2 (
229  const void *pData, sal_uInt32 nDatLen,
230  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
231 ) SAL_THROW_EXTERN_C();
232 
233 /*========================================================================
234  *
235  * rtl_digest_MD5 interface.
236  *
237  *======================================================================*/
238 #define RTL_DIGEST_LENGTH_MD5 16
239 
248 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createMD5 (void) SAL_THROW_EXTERN_C();
249 
250 
254 SAL_DLLPUBLIC void SAL_CALL rtl_digest_destroyMD5 (
255  rtlDigest Digest
256 ) SAL_THROW_EXTERN_C();
257 
258 
262 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateMD5 (
263  rtlDigest Digest,
264  const void *pData, sal_uInt32 nDatLen
265 ) SAL_THROW_EXTERN_C();
266 
267 
271 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getMD5 (
272  rtlDigest Digest,
273  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
274 ) SAL_THROW_EXTERN_C();
275 
276 
284 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_rawMD5 (
285  rtlDigest Digest,
286  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
287 ) SAL_THROW_EXTERN_C();
288 
289 
304 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_MD5 (
305  const void *pData, sal_uInt32 nDatLen,
306  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
307 ) SAL_THROW_EXTERN_C();
308 
309 /*========================================================================
310  *
311  * rtl_digest_SHA interface.
312  *
313  *======================================================================*/
314 #define RTL_DIGEST_LENGTH_SHA 20
315 
324 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createSHA (void) SAL_THROW_EXTERN_C();
325 
326 
330 SAL_DLLPUBLIC void SAL_CALL rtl_digest_destroySHA (
331  rtlDigest Digest
332 ) SAL_THROW_EXTERN_C();
333 
334 
338 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateSHA (
339  rtlDigest Digest,
340  const void *pData, sal_uInt32 nDatLen
341 ) SAL_THROW_EXTERN_C();
342 
343 
347 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getSHA (
348  rtlDigest Digest,
349  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
350 ) SAL_THROW_EXTERN_C();
351 
352 
367 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_SHA (
368  const void *pData, sal_uInt32 nDatLen,
369  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
370 ) SAL_THROW_EXTERN_C();
371 
372 /*========================================================================
373  *
374  * rtl_digest_SHA1 interface.
375  *
376  *======================================================================*/
377 #define RTL_DIGEST_LENGTH_SHA1 20
378 
387 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createSHA1 (void) SAL_THROW_EXTERN_C();
388 
389 
394  rtlDigest Digest
395 ) SAL_THROW_EXTERN_C();
396 
397 
401 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateSHA1 (
402  rtlDigest Digest,
403  const void *pData, sal_uInt32 nDatLen
404 ) SAL_THROW_EXTERN_C();
405 
406 
410 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getSHA1 (
411  rtlDigest Digest,
412  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
413 ) SAL_THROW_EXTERN_C();
414 
415 
430 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_SHA1 (
431  const void *pData, sal_uInt32 nDatLen,
432  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
433 ) SAL_THROW_EXTERN_C();
434 
435 /*========================================================================
436  *
437  * rtl_digest_HMAC_MD5 interface.
438  *
439  *======================================================================*/
440 #define RTL_DIGEST_LENGTH_HMAC_MD5 RTL_DIGEST_LENGTH_MD5
441 
450 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createHMAC_MD5 (void) SAL_THROW_EXTERN_C();
451 
452 
457  rtlDigest Digest
458 ) SAL_THROW_EXTERN_C();
459 
460 
470 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_initHMAC_MD5 (
471  rtlDigest Digest,
472  const sal_uInt8 *pKeyData, sal_uInt32 nKeyLen
473 ) SAL_THROW_EXTERN_C();
474 
475 
479 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateHMAC_MD5 (
480  rtlDigest Digest,
481  const void *pData, sal_uInt32 nDatLen
482 ) SAL_THROW_EXTERN_C();
483 
484 
488 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getHMAC_MD5 (
489  rtlDigest Digest,
490  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
491 ) SAL_THROW_EXTERN_C();
492 
493 
511 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_HMAC_MD5 (
512  const sal_uInt8 *pKeyData, sal_uInt32 nKeyLen,
513  const void *pData, sal_uInt32 nDatLen,
514  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
515 ) SAL_THROW_EXTERN_C();
516 
517 /*========================================================================
518  *
519  * rtl_digest_HMAC_SHA1 interface.
520  *
521  *======================================================================*/
522 #define RTL_DIGEST_LENGTH_HMAC_SHA1 RTL_DIGEST_LENGTH_SHA1
523 
534 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createHMAC_SHA1 (void) SAL_THROW_EXTERN_C();
535 
536 
541  rtlDigest Digest
542 ) SAL_THROW_EXTERN_C();
543 
544 
554 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_initHMAC_SHA1 (
555  rtlDigest Digest,
556  const sal_uInt8 *pKeyData, sal_uInt32 nKeyLen
557 ) SAL_THROW_EXTERN_C();
558 
559 
563 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateHMAC_SHA1 (
564  rtlDigest Digest,
565  const void *pData, sal_uInt32 nDatLen
566 ) SAL_THROW_EXTERN_C();
567 
568 
572 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getHMAC_SHA1 (
573  rtlDigest Digest,
574  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
575 ) SAL_THROW_EXTERN_C();
576 
577 
595 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_HMAC_SHA1 (
596  const sal_uInt8 *pKeyData, sal_uInt32 nKeyLen,
597  const void *pData, sal_uInt32 nDatLen,
598  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
599 ) SAL_THROW_EXTERN_C();
600 
601 /*========================================================================
602  *
603  * rtl_digest_PBKDF2 interface.
604  *
605  *======================================================================*/
622 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_PBKDF2 (
623  sal_uInt8 *pKeyData , sal_uInt32 nKeyLen,
624  const sal_uInt8 *pPassData, sal_uInt32 nPassLen,
625  const sal_uInt8 *pSaltData, sal_uInt32 nSaltLen,
626  sal_uInt32 nCount
627 ) SAL_THROW_EXTERN_C();
628 
629 /*========================================================================
630  *
631  * The End.
632  *
633  *======================================================================*/
634 
635 #ifdef __cplusplus
636 }
637 #endif
638 
639 #endif /* _RTL_DIGEST_H_ */
640 
641 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */