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  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 
20 #ifndef _RTL_DIGEST_H_
21 #define _RTL_DIGEST_H_
22 
23 #include "sal/config.h"
24 
25 #include "sal/saldllapi.h"
26 #include "sal/types.h"
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
32 /*========================================================================
33  *
34  * rtlDigest.
35  *
36  *======================================================================*/
39 typedef void* rtlDigest;
40 
41 
46 {
51 
54 
57 };
58 
62 
63 
67 {
75 };
76 
80 
81 
88 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_create (
89  rtlDigestAlgorithm Algorithm
91 
92 
98 SAL_DLLPUBLIC void SAL_CALL rtl_digest_destroy (
99  rtlDigest Digest
101 
102 
107 SAL_DLLPUBLIC rtlDigestAlgorithm SAL_CALL rtl_digest_queryAlgorithm (
108  rtlDigest Digest
110 
111 
116 SAL_DLLPUBLIC sal_uInt32 SAL_CALL rtl_digest_queryLength (
117  rtlDigest Digest
119 
120 
128 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_init (
129  rtlDigest Digest,
130  const sal_uInt8 *pData, sal_uInt32 nDatLen
132 
133 
141 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_update (
142  rtlDigest Digest,
143  const void *pData, sal_uInt32 nDatLen
145 
146 
159 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_get (
160  rtlDigest Digest,
161  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
163 
164 /*========================================================================
165  *
166  * rtl_digest_MD2 interface.
167  *
168  *======================================================================*/
169 #define RTL_DIGEST_LENGTH_MD2 16
170 
179 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createMD2 (void) SAL_THROW_EXTERN_C();
180 
181 
185 SAL_DLLPUBLIC void SAL_CALL rtl_digest_destroyMD2 (
186  rtlDigest Digest
187 ) SAL_THROW_EXTERN_C();
188 
189 
193 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateMD2 (
194  rtlDigest Digest,
195  const void *pData, sal_uInt32 nDatLen
196 ) SAL_THROW_EXTERN_C();
197 
198 
202 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getMD2 (
203  rtlDigest Digest,
204  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
205 ) SAL_THROW_EXTERN_C();
206 
207 
222 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_MD2 (
223  const void *pData, sal_uInt32 nDatLen,
224  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
225 ) SAL_THROW_EXTERN_C();
226 
227 /*========================================================================
228  *
229  * rtl_digest_MD5 interface.
230  *
231  *======================================================================*/
232 #define RTL_DIGEST_LENGTH_MD5 16
233 
242 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createMD5 (void) SAL_THROW_EXTERN_C();
243 
244 
248 SAL_DLLPUBLIC void SAL_CALL rtl_digest_destroyMD5 (
249  rtlDigest Digest
250 ) SAL_THROW_EXTERN_C();
251 
252 
256 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateMD5 (
257  rtlDigest Digest,
258  const void *pData, sal_uInt32 nDatLen
259 ) SAL_THROW_EXTERN_C();
260 
261 
265 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getMD5 (
266  rtlDigest Digest,
267  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
268 ) SAL_THROW_EXTERN_C();
269 
270 
278 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_rawMD5 (
279  rtlDigest Digest,
280  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
281 ) SAL_THROW_EXTERN_C();
282 
283 
298 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_MD5 (
299  const void *pData, sal_uInt32 nDatLen,
300  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
301 ) SAL_THROW_EXTERN_C();
302 
303 /*========================================================================
304  *
305  * rtl_digest_SHA interface.
306  *
307  *======================================================================*/
308 #define RTL_DIGEST_LENGTH_SHA 20
309 
318 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createSHA (void) SAL_THROW_EXTERN_C();
319 
320 
324 SAL_DLLPUBLIC void SAL_CALL rtl_digest_destroySHA (
325  rtlDigest Digest
326 ) SAL_THROW_EXTERN_C();
327 
328 
332 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateSHA (
333  rtlDigest Digest,
334  const void *pData, sal_uInt32 nDatLen
335 ) SAL_THROW_EXTERN_C();
336 
337 
341 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getSHA (
342  rtlDigest Digest,
343  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
344 ) SAL_THROW_EXTERN_C();
345 
346 
361 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_SHA (
362  const void *pData, sal_uInt32 nDatLen,
363  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
364 ) SAL_THROW_EXTERN_C();
365 
366 /*========================================================================
367  *
368  * rtl_digest_SHA1 interface.
369  *
370  *======================================================================*/
371 #define RTL_DIGEST_LENGTH_SHA1 20
372 
381 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createSHA1 (void) SAL_THROW_EXTERN_C();
382 
383 
388  rtlDigest Digest
389 ) SAL_THROW_EXTERN_C();
390 
391 
395 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateSHA1 (
396  rtlDigest Digest,
397  const void *pData, sal_uInt32 nDatLen
398 ) SAL_THROW_EXTERN_C();
399 
400 
404 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getSHA1 (
405  rtlDigest Digest,
406  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
407 ) SAL_THROW_EXTERN_C();
408 
409 
424 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_SHA1 (
425  const void *pData, sal_uInt32 nDatLen,
426  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
427 ) SAL_THROW_EXTERN_C();
428 
429 /*========================================================================
430  *
431  * rtl_digest_HMAC_MD5 interface.
432  *
433  *======================================================================*/
434 #define RTL_DIGEST_LENGTH_HMAC_MD5 RTL_DIGEST_LENGTH_MD5
435 
444 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createHMAC_MD5 (void) SAL_THROW_EXTERN_C();
445 
446 
451  rtlDigest Digest
452 ) SAL_THROW_EXTERN_C();
453 
454 
464 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_initHMAC_MD5 (
465  rtlDigest Digest,
466  const sal_uInt8 *pKeyData, sal_uInt32 nKeyLen
467 ) SAL_THROW_EXTERN_C();
468 
469 
473 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateHMAC_MD5 (
474  rtlDigest Digest,
475  const void *pData, sal_uInt32 nDatLen
476 ) SAL_THROW_EXTERN_C();
477 
478 
482 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getHMAC_MD5 (
483  rtlDigest Digest,
484  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
485 ) SAL_THROW_EXTERN_C();
486 
487 
505 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_HMAC_MD5 (
506  const sal_uInt8 *pKeyData, sal_uInt32 nKeyLen,
507  const void *pData, sal_uInt32 nDatLen,
508  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
509 ) SAL_THROW_EXTERN_C();
510 
511 /*========================================================================
512  *
513  * rtl_digest_HMAC_SHA1 interface.
514  *
515  *======================================================================*/
516 #define RTL_DIGEST_LENGTH_HMAC_SHA1 RTL_DIGEST_LENGTH_SHA1
517 
528 SAL_DLLPUBLIC rtlDigest SAL_CALL rtl_digest_createHMAC_SHA1 (void) SAL_THROW_EXTERN_C();
529 
530 
535  rtlDigest Digest
536 ) SAL_THROW_EXTERN_C();
537 
538 
548 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_initHMAC_SHA1 (
549  rtlDigest Digest,
550  const sal_uInt8 *pKeyData, sal_uInt32 nKeyLen
551 ) SAL_THROW_EXTERN_C();
552 
553 
557 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_updateHMAC_SHA1 (
558  rtlDigest Digest,
559  const void *pData, sal_uInt32 nDatLen
560 ) SAL_THROW_EXTERN_C();
561 
562 
566 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_getHMAC_SHA1 (
567  rtlDigest Digest,
568  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
569 ) SAL_THROW_EXTERN_C();
570 
571 
589 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_HMAC_SHA1 (
590  const sal_uInt8 *pKeyData, sal_uInt32 nKeyLen,
591  const void *pData, sal_uInt32 nDatLen,
592  sal_uInt8 *pBuffer, sal_uInt32 nBufLen
593 ) SAL_THROW_EXTERN_C();
594 
595 /*========================================================================
596  *
597  * rtl_digest_PBKDF2 interface.
598  *
599  *======================================================================*/
616 SAL_DLLPUBLIC rtlDigestError SAL_CALL rtl_digest_PBKDF2 (
617  sal_uInt8 *pKeyData , sal_uInt32 nKeyLen,
618  const sal_uInt8 *pPassData, sal_uInt32 nPassLen,
619  const sal_uInt8 *pSaltData, sal_uInt32 nSaltLen,
620  sal_uInt32 nCount
621 ) SAL_THROW_EXTERN_C();
622 
623 /*========================================================================
624  *
625  * The End.
626  *
627  *======================================================================*/
628 
629 #ifdef __cplusplus
630 }
631 #endif
632 
633 #endif /* _RTL_DIGEST_H_ */
634 
635 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */