annotate libpurple/protocols/myspace/crypt-rc4.h @ 16394:05e2df434077

Import msimprpl 0.4.
author Jeffrey Connelly <jaconnel@calpoly.edu>
date Sat, 21 Apr 2007 03:15:48 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16394
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
1 /*
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
2 Unix SMB/CIFS implementation.
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
3
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
4 a partial implementation of RC4 designed for use in the
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
5 SMB authentication protocol
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
6
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
7 Copyright (C) Andrew Tridgell 1998
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
8
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
9 $Id: crypt-rc4.h 12116 2004-09-27 23:29:22Z guy $
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
10
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
11 This program is free software; you can redistribute it and/or modify
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
12 it under the terms of the GNU General Public License as published by
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
13 the Free Software Foundation; either version 2 of the License, or
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
14 (at your option) any later version.
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
15
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
16 This program is distributed in the hope that it will be useful,
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
19 GNU General Public License for more details.
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
20
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
21 You should have received a copy of the GNU General Public License
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
22 along with this program; if not, write to the Free Software
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
23 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
24 */
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
25
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
26 typedef struct _rc4_state_struct {
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
27 unsigned char s_box[256];
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
28 unsigned char index_i;
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
29 unsigned char index_j;
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
30 } rc4_state_struct;
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
31
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
32 void crypt_rc4_init(rc4_state_struct *rc4_state,
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
33 const unsigned char *key, int key_len);
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
34
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
35 void crypt_rc4(rc4_state_struct *rc4_state, unsigned char *data, int data_len);
05e2df434077 Import msimprpl 0.4.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
36