blob: e3761ca259f1a0cfe0e6c0e16fefb4c246052473 [file] [log] [blame]
San Mehata430b2b2014-09-23 08:30:51 -07001#ifndef D3DES_H
2#define D3DES_H
3
4/*
5 * This is D3DES (V5.09) by Richard Outerbridge with the double and
6 * triple-length support removed for use in VNC.
7 *
8 * These changes are:
9 * Copyright (C) 1999 AT&T Laboratories Cambridge. All Rights Reserved.
10 *
11 * This software is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14 */
15
16/* d3des.h -
17 *
18 * Headers and defines for d3des.c
19 * Graven Imagery, 1992.
20 *
21 * Copyright (c) 1988,1989,1990,1991,1992 by Richard Outerbridge
22 * (GEnie : OUTER; CIS : [71755,204])
23 */
24
25#define EN0 0 /* MODE == encrypt */
26#define DE1 1 /* MODE == decrypt */
27
28extern void rfbDesKey(unsigned char *, int);
29/* hexkey[8] MODE
30 * Sets the internal key register according to the hexadecimal
31 * key contained in the 8 bytes of hexkey, according to the DES,
32 * for encryption or decryption according to MODE.
33 */
34
35extern void rfbUseKey(unsigned long *);
36/* cookedkey[32]
37 * Loads the internal key register with the data in cookedkey.
38 */
39
40extern void rfbCPKey(unsigned long *);
41/* cookedkey[32]
42 * Copies the contents of the internal key register into the storage
43 * located at &cookedkey[0].
44 */
45
46extern void rfbDes(unsigned char *, unsigned char *);
47/* from[8] to[8]
48 * Encrypts/Decrypts (according to the key currently loaded in the
49 * internal key register) one block of eight bytes at address 'from'
50 * into the block at address 'to'. They can be the same.
51 */
52
53/* d3des.h V5.09 rwo 9208.04 15:06 Graven Imagery
54 ********************************************************************/
55
56#endif