projects
/
l2tpns.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
c9dedbc
)
CSTAT() adds "call_"; CHAP support
author
Brendan O'Dea
<bod@optus.net>
Fri, 7 Jan 2005 07:17:13 +0000
(07:17 +0000)
committer
Brendan O'Dea
<bod@optus.net>
Fri, 7 Jan 2005 07:17:13 +0000
(07:17 +0000)
l2tpns.h
patch
|
blob
|
history
diff --git
a/l2tpns.h
b/l2tpns.h
index
e7584f9
..
5245948
100644
(file)
--- a/
l2tpns.h
+++ b/
l2tpns.h
@@
-1,5
+1,5
@@
// L2TPNS Global Stuff
// L2TPNS Global Stuff
-// $Id: l2tpns.h,v 1.5
0 2004-12-18 01:20:05
bodea Exp $
+// $Id: l2tpns.h,v 1.5
1 2005-01-07 07:17:13
bodea Exp $
#ifndef __L2TPNS_H__
#define __L2TPNS_H__
#ifndef __L2TPNS_H__
#define __L2TPNS_H__
@@
-72,6
+72,7
@@
#endif
#define TUNDEVICE "/dev/net/tun"
#endif
#define TUNDEVICE "/dev/net/tun"
+#define RANDOMDEVICE "/dev/urandom" // default, not as secure as /dev/random but non-blocking
#define STATEFILE DATADIR "/state.dump" // State dump file
#define CONFIGFILE FLASHDIR "/startup-config" // Configuration file
#define CLIUSERS FLASHDIR "/users" // CLI Users file
#define STATEFILE DATADIR "/state.dump" // State dump file
#define CONFIGFILE FLASHDIR "/startup-config" // Configuration file
#define CLIUSERS FLASHDIR "/users" // CLI Users file
@@
-93,8
+94,8
@@
#define PPPIPV6 0x0057
#define PPPMP 0x003D
#define MIN_IP_SIZE 0x19
#define PPPIPV6 0x0057
#define PPPMP 0x003D
#define MIN_IP_SIZE 0x19
-enum
-{
+
+
enum
{
ConfigReq = 1,
ConfigAck,
ConfigNak,
ConfigReq = 1,
ConfigAck,
ConfigNak,
@@
-109,6
+110,15
@@
enum
IdentRequest
};
IdentRequest
};
+enum {
+ AccessRequest = 1,
+ AccessAccept,
+ AccessReject,
+ AccountingRequest,
+ AccountingResponse,
+ AccessChallenge = 11
+};
+
// Types
typedef uint16_t sessionidt;
typedef uint16_t tunnelidt;
// Types
typedef uint16_t sessionidt;
typedef uint16_t tunnelidt;
@@
-213,6
+223,9
@@
sessiont;
#define SF_IPV6CP_ACKED 8 // IPv6 negotiated
#define SF_IPV6_NACKED 16 // IPv6 rejected
#define SF_IPV6CP_ACKED 8 // IPv6 negotiated
#define SF_IPV6_NACKED 16 // IPv6 rejected
+#define AUTHPAP 1 // allow PAP
+#define AUTHCHAP 2 // allow CHAP
+
typedef struct
{
uint32_t cin;
typedef struct
{
uint32_t cin;
@@
-381,13
+394,14
@@
struct Tstats
uint32_t call_processrad;
uint32_t call_radiussend;
uint32_t call_radiusretry;
uint32_t call_processrad;
uint32_t call_radiussend;
uint32_t call_radiusretry;
+ uint32_t call_random_data;
#endif
};
#ifdef STATISTICS
#ifdef STAT_CALLS
#endif
};
#ifdef STATISTICS
#ifdef STAT_CALLS
-#define CSTAT(x) STAT(x)
+#define CSTAT(x) STAT(
call_ ##
x)
#else
#define CSTAT(x)
#endif
#else
#define CSTAT(x)
#endif
@@
-424,6
+438,8
@@
typedef struct
char log_filename[128];
char l2tpsecret[64];
char log_filename[128];
char l2tpsecret[64];
+ char random_device[256]; // random device path, defaults to RANDOMDEVICE
+
char radiussecret[64];
int radius_accounting;
in_addr_t radiusserver[MAXRADSERVER]; // radius servers
char radiussecret[64];
int radius_accounting;
in_addr_t radiusserver[MAXRADSERVER]; // radius servers
@@
-431,6
+447,10
@@
typedef struct
uint8_t numradiusservers; // radius server count
short num_radfds; // Number of radius filehandles allocated
uint8_t numradiusservers; // radius server count
short num_radfds; // Number of radius filehandles allocated
+ char radius_authtypes_s[32]; // list of valid authentication types (chap, pap) in order of preference
+ int radius_authtypes;
+ int radius_authprefer;
+
in_addr_t default_dns1, default_dns2;
unsigned long rl_rate; // default throttle rate
in_addr_t default_dns1, default_dns2;
unsigned long rl_rate; // default throttle rate
@@
-575,6
+595,7
@@
void radiusclear(uint16_t r, sessionidt s);
clockt backoff(uint8_t try);
sessionidt sessionbyip(in_addr_t ip);
sessionidt sessionbyuser(char *username);
clockt backoff(uint8_t try);
sessionidt sessionbyip(in_addr_t ip);
sessionidt sessionbyuser(char *username);
+void random_data(uint8_t *buf, int len);
void sessionshutdown(sessionidt s, char *reason);
void send_garp(in_addr_t ip);
void tunnelsend(uint8_t *buf, uint16_t l, tunnelidt t);
void sessionshutdown(sessionidt s, char *reason);
void send_garp(in_addr_t ip);
void tunnelsend(uint8_t *buf, uint16_t l, tunnelidt t);