X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=pppd%2Fpppd.h;h=90f74466bea38c3674d9428b14bf9adab34857e4;hp=3ade18e78960ceadd1843b00e0b3d99f082b2982;hb=93b9f7ad08d5f0ee16880ec2b21b1c13a00d4779;hpb=7bb8beb860037a6c18dd0b64b8d542a20aa2c8c0 diff --git a/pppd/pppd.h b/pppd/pppd.h index 3ade18e..90f7446 100644 --- a/pppd/pppd.h +++ b/pppd/pppd.h @@ -16,7 +16,7 @@ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * - * $Id: pppd.h,v 1.68 2002/05/21 17:26:49 dfs Exp $ + * $Id: pppd.h,v 1.75 2002/10/10 05:47:34 fcusack Exp $ */ /* @@ -79,7 +79,7 @@ typedef struct { enum opt_type type; void *addr; char *description; - int flags; + unsigned int flags; void *addr2; int upper_limit; int lower_limit; @@ -120,7 +120,6 @@ typedef struct { #define OPT_A2PRINTER 0x10000000 /* *addr2 is a fn for printing option */ #define OPT_A2STRVAL 0x20000000 /* *addr2 points to current string value */ #define OPT_NOPRINT 0x40000000 /* don't print this option at all */ -#define OPT_A3OR 0x80000000 /* addr3 -> third location to rcv | value */ #define OPT_VAL(x) ((x) & OPT_VALUE) @@ -287,6 +286,22 @@ extern char *bundle_name; /* bundle name for multilink */ extern bool dump_options; /* print out option values */ extern bool dryrun; /* check everything, print options, exit */ +#ifdef MAXOCTETS +extern unsigned int maxoctets; /* Maximum octetes per session (in bytes) */ +extern int maxoctets_dir; /* Direction : + 0 - in+out (default) + 1 - in + 2 - out + 3 - max(in,out) */ +extern int maxoctets_timeout; /* Timeout for check of octets limit */ +#define PPP_OCTETS_DIRECTION_SUM 0 +#define PPP_OCTETS_DIRECTION_IN 1 +#define PPP_OCTETS_DIRECTION_OUT 2 +#define PPP_OCTETS_DIRECTION_MAXOVERAL 3 +/* same as previos, but little different on RADIUS side */ +#define PPP_OCTETS_DIRECTION_MAXSESSION 4 +#endif + #ifdef PPP_FILTER extern struct bpf_program pass_filter; /* Filter for pkts to pass */ extern struct bpf_program active_filter; /* Filter for link-active pkts */ @@ -480,6 +495,7 @@ void link_terminated __P((int)); /* we are finished with the link */ void link_down __P((int)); /* the LCP layer has left the Opened state */ void link_established __P((int)); /* the link is up; authenticate now */ void start_networks __P((int)); /* start all the network control protos */ +void continue_networks __P((int)); /* start network [ip, etc] control protos */ void np_up __P((int, int)); /* a network protocol has come up */ void np_down __P((int, int)); /* a network protocol has gone down */ void np_finished __P((int, int)); /* a network protocol no longer needs link */ @@ -500,6 +516,7 @@ int get_secret __P((int, char *, char *, char *, int *, int)); /* get "secret" for chap */ int auth_ip_addr __P((int, u_int32_t)); /* check if IP address is authorized */ +int auth_number __P((void)); /* check if remote number is authorized */ int bad_ip_adrs __P((u_int32_t)); /* check if IP address is unreasonable */ @@ -736,6 +753,10 @@ extern void (*snoop_send_hook) __P((unsigned char *p, int len)); #define EXIT_LOOPBACK 17 #define EXIT_INIT_FAILED 18 #define EXIT_AUTH_TOPEER_FAILED 19 +#ifdef MAXOCTETS +#define EXIT_TRAFFIC_LIMIT 20 +#endif +#define EXIT_CNID_AUTH_FAILED 21 /* * Debug macros. Slightly useful for finding bugs in pppd, not particularly