// L2TPNS Global Stuff
-// $Id: l2tpns.h,v 1.75 2005/06/02 11:32:31 bodea Exp $
+// $Id: l2tpns.h,v 1.79 2005/06/24 07:05:04 bodea Exp $
#ifndef __L2TPNS_H__
#define __L2TPNS_H__
#include <sys/types.h>
#include <libcli.h>
-#define VERSION "2.1.0"
+#define VERSION "2.1.2"
// Limits
#define MAXTUNNEL 500 // could be up to 65535
#define MAXTBFS 6000 // Maximum token bucket filters. Might need up to 2 * session.
#define RADIUS_SHIFT 6
+#define RADIUS_FDS (1 << RADIUS_SHIFT)
#define RADIUS_MASK ((1 << RADIUS_SHIFT) - 1)
#define MAXRADIUS (1 << (8 + RADIUS_SHIFT))
in_addr_t radiusserver[MAXRADSERVER]; // radius servers
uint16_t radiusport[MAXRADSERVER]; // radius base ports
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;
void *array[20]; \
char **strings; \
int size, i; \
- LOG(0, 0, t, "Backtrace follows"); \
+ LOG(0, 0, t, "Backtrace follows:\n"); \
size = backtrace(array, 10); \
strings = backtrace_symbols(array, size); \
if (strings) for (i = 0; i < size; i++) \
{ \
- LOG(0, 0, t, "%s\n", strings[i]); \
+ LOG(0, 0, t, " %s\n", strings[i]); \
} \
free(strings); \
}
extern in_addr_t my_address;
extern int tun_write(uint8_t *data, int size);
extern int clifd;
-
+extern int epollfd;
+
+struct event_data {
+ enum {
+ FD_TYPE_CONTROL,
+ FD_TYPE_CLI,
+ FD_TYPE_UDP,
+ FD_TYPE_TUN,
+ FD_TYPE_CLUSTER,
+ FD_TYPE_RADIUS,
+ FD_TYPE_BGP,
+ } type;
+ int index; // for RADIUS, BGP
+};
#define TIME (config->current_time)