ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/gvpe/src/global.h
(Generate patch)

Comparing gvpe/src/global.h (file contents):
Revision 1.6 by pcg, Wed Mar 26 01:58:46 2003 UTC vs.
Revision 1.16 by pcg, Sat Jan 17 01:18:36 2004 UTC

1/* 1/*
2 global.h -- global variables and constants 2 global.h -- global variables and constants
3 Copyright (C) 2003-2004 Marc Lehmann <pcg@goof.com>
3 4
4 This program is free software; you can redistribute it and/or modify 5 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or 7 the Free Software Foundation; either version 2 of the License, or
7 (at your option) any later version. 8 (at your option) any later version.
21 22
22#include "config.h" 23#include "config.h"
23 24
24#include <time.h> 25#include <time.h>
25 26
27/* Protocol version. Different major versions are incompatible,
28 * different minor versions probably are compatible ;)
29 */
30
31#define PROTOCOL_MAJOR 0
32#define PROTOCOL_MINOR 1
26 33
27#define RSA_KEYBITS 1280 // must be >= 1280 and divisible by 8 34#define RSA_KEYBITS 1280 // must be >= 1280 and divisible by 8
28#define RSA_KEYLEN ((RSA_KEYBITS) >> 3) 35#define RSA_KEYLEN ((RSA_KEYBITS) >> 3)
29#define RSA_OVERHEAD (41 + 1) // well, no define for OAEP in openssl 36#define RSA_OVERHEAD (41 + 1) // well, no define for OAEP in openssl
30 37
31#define RSA_HASH EVP_ripemd160 ()// speed don't matter, boy, safety does.. I need sha256 :( 38#define RSA_HASH EVP_ripemd160 ()// speed don't matter, boy, safety does.. I need sha256 :(
32#define RSA_HASHLEN (160 >> 3) 39#define RSA_HASHLEN (160 >> 3)
40#define RSA_RESLEN RSA_HASHLEN
33 41
34#define RSA_IDLEN 16 // how many bytes are used to identify the challenge 42#define RSA_IDLEN 16 // how many bytes are used to identify the challenge
35#define RSA_TTL 20 // challenge bytes timeout after n seconds 43#define RSA_TTL 120 // challenge bytes timeout after n seconds
36 44
37#define CIPHER ENABLE_CIPHER () 45#define CIPHER ENABLE_CIPHER ()
38#define CIPHER_KEYLEN (EVP_CIPHER_key_length (CIPHER)) 46#define CIPHER_KEYLEN (EVP_CIPHER_key_length (CIPHER))
39#define DIGEST ENABLE_DIGEST () 47#define DIGEST ENABLE_DIGEST ()
40#define HMAC_KEYLEN (256 >> 3) // number of bits used for the HMAC key (also change CHG_HMAC_KEY) 48#define HMAC_KEYLEN (256 >> 3) // number of bits used for the HMAC key (also change CHG_HMAC_KEY)
46#define CHG_HMAC_KEY 86 // where the key starts within the rsa challenge (256 bits at the end!) 54#define CHG_HMAC_KEY 86 // where the key starts within the rsa challenge (256 bits at the end!)
47 55
48// hdr seq len hmac MAC MAC 56// hdr seq len hmac MAC MAC
49#define VPE_OVERHEAD (4 + 4 + 4 + RAND_SIZE + HMACLENGTH - 6 - 6) 57#define VPE_OVERHEAD (4 + 4 + 4 + RAND_SIZE + HMACLENGTH - 6 - 6)
50#define IP_OVERHEAD 20 // size of a (normal) ip header 58#define IP_OVERHEAD 20 // size of a (normal) ip header
59#define GRE_OVERHEAD (IP_OVERHEAD + 4)
60#define ICMP_OVERHEAD (IP_OVERHEAD + 4)
51#define UDP_OVERHEAD (IP_OVERHEAD + 20) // size of a (normal) ip + udp header 61#define UDP_OVERHEAD (IP_OVERHEAD + 20) // size of a (normal) ip + udp header
62#define TCP_OVERHEAD (IP_OVERHEAD + 22) // size of a (normal) ip + tcp header + pakcetlength
52#define MAX_OVERHEAD UDP_OVERHEAD // the max. overhead of any protocol 63#define MAX_OVERHEAD UDP_OVERHEAD // the max. overhead of any protocol (ok, tcp doesn't count)
53#define ETH_OVERHEAD 14 // the size of an ethernet header 64#define ETH_OVERHEAD 14 // the size of an ethernet header
54#define MAXSIZE (MAX_MTU + VPE_OVERHEAD)// slightly too large, but who cares 65#define MAXSIZE (MAX_MTU + VPE_OVERHEAD)// slightly too large, but who cares
55 66
56#define PKTCACHESIZE 4 // the size of the memory pool for packets 67#define PKTCACHESIZE 5 // the size of the memory pool for packets
57 68
58#define QUEUEDEPTH 16 // the number of packets that will be queued (should be low) 69#define QUEUEDEPTH 16 // the number of packets that will be queued (should be low)
59 70
60#define WINDOWSIZE 512 // sliding window size 71#define WINDOWSIZE 512 // sliding window size
61 72

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines