Add -ls to online help bit
[u/mdw/putty] / ssh.h
... / ...
CommitLineData
1#include <string.h>
2
3#define SSH_CIPHER_IDEA 1
4#define SSH_CIPHER_DES 2
5#define SSH_CIPHER_3DES 3
6#define SSH_CIPHER_BLOWFISH 6
7
8struct RSAKey {
9 int bits;
10 int bytes;
11#ifdef MSCRYPTOAPI
12 unsigned long exponent;
13 unsigned char *modulus;
14#else
15 void *modulus;
16 void *exponent;
17#endif
18};
19
20int makekey(unsigned char *data, struct RSAKey *result,
21 unsigned char **keystr);
22void rsaencrypt(unsigned char *data, int length, struct RSAKey *key);
23int rsastr_len(struct RSAKey *key);
24void rsastr_fmt(char *str, struct RSAKey *key);
25
26typedef unsigned int word32;
27typedef unsigned int uint32;
28
29unsigned long crc32(const void *s, size_t len);
30
31struct MD5Context {
32#ifdef MSCRYPTOAPI
33 unsigned long hHash;
34#else
35 uint32 buf[4];
36 uint32 bits[2];
37 unsigned char in[64];
38#endif
39};
40
41void MD5Init(struct MD5Context *context);
42void MD5Update(struct MD5Context *context, unsigned char const *buf,
43 unsigned len);
44void MD5Final(unsigned char digest[16], struct MD5Context *context);
45
46struct ssh_cipher {
47 void (*sesskey)(unsigned char *key);
48 void (*encrypt)(unsigned char *blk, int len);
49 void (*decrypt)(unsigned char *blk, int len);
50};
51
52#ifndef MSCRYPTOAPI
53void SHATransform(word32 *digest, word32 *data);
54#endif
55
56int random_byte(void);
57void random_add_noise(void *noise, int length);
58
59void logevent (char *);