* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*/
-#ifndef lint
-static char rcsid[] = "$Id: demand.c,v 1.9 1999/03/19 01:21:28 paulus Exp $";
-#endif
+#define RCSID "$Id: demand.c,v 1.14 2000/12/27 23:27:29 paulus Exp $"
#include <stdio.h>
#include <stdlib.h>
#include "ipcp.h"
#include "lcp.h"
+static const char rcsid[] = RCSID;
+
char *frame;
int framelen;
int framemax;
struct packet *pend_qtail;
static int active_packet __P((unsigned char *, int));
-static int loop_frame __P((unsigned char *, int));
/*
* demand_conf - configure the interface for doing dial-on-demand.
if (!escape_flag && !flush_flag
&& framelen > 2 && fcs == PPP_GOODFCS) {
framelen -= 2;
- if (loop_frame(frame, framelen))
+ if (loop_frame((unsigned char *)frame, framelen))
rv = 1;
}
framelen = 0;
* We apply the active_filter to see if we want this packet to
* bring up the link.
*/
-static int
+int
loop_frame(frame, len)
unsigned char *frame;
int len;
return 0;
proto = PPP_PROTOCOL(p);
#ifdef PPP_FILTER
+ if (pass_filter.bf_len != 0
+ && bpf_filter(pass_filter.bf_insns, p, len, len) == 0)
+ return 0;
if (active_filter.bf_len != 0
- && bpf_filter(active_filter.bf_insns, frame, len, len) == 0)
+ && bpf_filter(active_filter.bf_insns, p, len, len) == 0)
return 0;
#endif
for (i = 0; (protp = protocols[i]) != NULL; ++i) {