X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=pppd%2Fdemand.c;h=c2eeb41a4d544cedfa7eef79731bff42d70f4859;hp=72e379c2e5d42c7ccd1625209e90a5e7e76cf67e;hb=HEAD;hpb=b1fcf16fa66159f380ee4abd7c9a76b59809dc7b diff --git a/pppd/demand.c b/pppd/demand.c index 72e379c..b7f9508 100644 --- a/pppd/demand.c +++ b/pppd/demand.c @@ -17,7 +17,7 @@ * 3. Redistributions of any form whatsoever must retain the following * acknowledgment: * "This product includes software developed by Paul Mackerras - * ". + * ". * * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY @@ -30,6 +30,10 @@ #define RCSID "$Id: demand.c,v 1.20 2005/08/25 12:14:18 paulus Exp $" +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include #include #include @@ -43,11 +47,11 @@ #include #include #include -#ifdef PPP_FILTER +#ifdef PPP_WITH_FILTER #include #endif -#include "pppd.h" +#include "pppd-private.h" #include "fsm.h" #include "ipcp.h" #include "lcp.h" @@ -69,13 +73,13 @@ struct packet { struct packet *pend_q; struct packet *pend_qtail; -static int active_packet __P((unsigned char *, int)); +static int active_packet(unsigned char *, int); /* * demand_conf - configure the interface for doing dial-on-demand. */ void -demand_conf() +demand_conf(void) { int i; struct protent *protp; @@ -93,12 +97,12 @@ demand_conf() flush_flag = 0; fcs = PPP_INITFCS; - netif_set_mtu(0, MIN(lcp_allowoptions[0].mru, PPP_MRU)); + ppp_set_mtu(0, MIN(lcp_allowoptions[0].mru, PPP_MRU)); if (ppp_send_config(0, PPP_MRU, (u_int32_t) 0, 0, 0) < 0 || ppp_recv_config(0, PPP_MRU, (u_int32_t) 0, 0, 0) < 0) fatal("Couldn't set up demand-dialled PPP interface: %m"); -#ifdef PPP_FILTER +#ifdef PPP_WITH_FILTER set_filters(&pass_filter, &active_filter); #endif @@ -116,7 +120,7 @@ demand_conf() * demand_block - set each network protocol to block further packets. */ void -demand_block() +demand_block(void) { int i; struct protent *protp; @@ -132,7 +136,7 @@ demand_block() * with an error. */ void -demand_discard() +demand_discard(void) { struct packet *pkt, *nextpkt; int i; @@ -159,7 +163,7 @@ demand_discard() * demand_unblock - set each enabled network protocol to pass packets. */ void -demand_unblock() +demand_unblock(void) { int i; struct protent *protp; @@ -206,6 +210,7 @@ static u_short fcstab[256] = { 0xf78f, 0xe606, 0xd49d, 0xc514, 0xb1ab, 0xa022, 0x92b9, 0x8330, 0x7bc7, 0x6a4e, 0x58d5, 0x495c, 0x3de3, 0x2c6a, 0x1ef1, 0x0f78 }; +#define PPP_FCS(fcs, c) (((fcs) >> 8) ^ fcstab[((fcs) ^ (c)) & 0xff]) /* * loop_chars - process characters received from the loopback. @@ -213,9 +218,7 @@ static u_short fcstab[256] = { * Return value is 1 if we need to bring up the link, 0 otherwise. */ int -loop_chars(p, n) - unsigned char *p; - int n; +loop_chars(unsigned char *p, int n) { int c, rv; @@ -265,9 +268,7 @@ loop_chars(p, n) * bring up the link. */ int -loop_frame(frame, len) - unsigned char *frame; - int len; +loop_frame(unsigned char *frame, int len) { struct packet *pkt; @@ -298,8 +299,7 @@ loop_frame(frame, len) * loopback, now that the real serial link is up. */ void -demand_rexmit(proto) - int proto; +demand_rexmit(int proto) { struct packet *pkt, *prev, *nextpkt; @@ -329,9 +329,7 @@ demand_rexmit(proto) * that is, whether it is worth bringing up the link for. */ static int -active_packet(p, len) - unsigned char *p; - int len; +active_packet(unsigned char *p, int len) { int proto, i; struct protent *protp; @@ -339,7 +337,7 @@ active_packet(p, len) if (len < PPP_HDRLEN) return 0; proto = PPP_PROTOCOL(p); -#ifdef PPP_FILTER +#ifdef PPP_WITH_FILTER p[0] = 1; /* outbound packet indicator */ if ((pass_filter.bf_len != 0 && bpf_filter(pass_filter.bf_insns, p, len, len) == 0)