comparison nss/lib/freebl/des.h @ 0:1e5118fa0cb1

This is NSS with a Cmake Buildsyste To compile a static NSS library for Windows we've used the Chromium-NSS fork and added a Cmake buildsystem to compile it statically for Windows. See README.chromium for chromium changes and README.trustbridge for our modifications.
author Andre Heinecke <andre.heinecke@intevation.de>
date Mon, 28 Jul 2014 10:47:06 +0200
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:1e5118fa0cb1
1 /*
2 * des.h
3 *
4 * header file for DES-150 library
5 *
6 * This Source Code Form is subject to the terms of the Mozilla Public
7 * License, v. 2.0. If a copy of the MPL was not distributed with this
8 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
9
10 #ifndef _DES_H_
11 #define _DES_H_ 1
12
13 #include "blapi.h"
14
15 typedef unsigned char BYTE;
16 typedef unsigned int HALF;
17
18 #define HALFPTR(x) ((HALF *)(x))
19 #define SHORTPTR(x) ((unsigned short *)(x))
20 #define BYTEPTR(x) ((BYTE *)(x))
21
22 typedef enum {
23 DES_ENCRYPT = 0x5555,
24 DES_DECRYPT = 0xAAAA
25 } DESDirection;
26
27 typedef void DESFunc(struct DESContextStr *cx, BYTE *out, const BYTE *in,
28 unsigned int len);
29
30 struct DESContextStr {
31 /* key schedule, 16 internal keys, each with 8 6-bit parts */
32 HALF ks0 [32];
33 HALF ks1 [32];
34 HALF ks2 [32];
35 HALF iv [2];
36 DESDirection direction;
37 DESFunc *worker;
38 };
39
40 void DES_MakeSchedule( HALF * ks, const BYTE * key, DESDirection direction);
41 void DES_Do1Block( HALF * ks, const BYTE * inbuf, BYTE * outbuf);
42
43 #endif
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)