X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=ultrix%2Fif_pppvar.h;h=25b14544c1e4581ab18b9be684cc0a37ae7217b4;hp=e1e8543f68f1187c044e84f2d4b6584a8261d1b7;hb=642b44a17f5b83cbfbbbca87d85ec0e4d83762cd;hpb=9ed05e1618a9087274adb81d04939a0d016300f6 diff --git a/ultrix/if_pppvar.h b/ultrix/if_pppvar.h index e1e8543..25b1454 100644 --- a/ultrix/if_pppvar.h +++ b/ultrix/if_pppvar.h @@ -1,4 +1,4 @@ -/* $Id: if_pppvar.h,v 1.1 1994/09/21 00:28:59 paulus Exp $ */ +/* $Id: if_pppvar.h,v 1.4 1996/07/01 01:24:26 paulus Exp $ */ /* * if_pppvar.h - private structures and declarations for PPP. * @@ -53,25 +53,32 @@ */ struct ppp_softc { struct ifnet sc_if; /* network-visible interface */ - u_int sc_flags; /* see below */ + u_int sc_flags; /* control/status bits; see if_ppp.h */ void *sc_devp; /* pointer to device-dep structure */ - int (*sc_start) __P((struct ppp_softc *)); /* start routine */ + void (*sc_start) __P((struct ppp_softc *)); /* start output proc */ + void (*sc_ctlp) __P((struct ppp_softc *)); /* rcvd control pkt */ + void (*sc_relinq) __P((struct ppp_softc *)); /* relinquish ifunit */ short sc_mru; /* max receive unit */ pid_t sc_xfer; /* used in transferring unit */ - struct ifqueue sc_inq; /* TTY side input queue */ - struct ifqueue sc_fastq; /* IP interactive output packet q */ -#ifdef VJC - struct slcompress sc_comp; /* vjc control buffer */ -#endif - u_int sc_bytessent; /* count of octets sent */ - u_int sc_bytesrcvd; /* count of octets received */ + struct ifqueue sc_rawq; /* received packets */ + struct ifqueue sc_inq; /* queue of input packets for daemon */ + struct ifqueue sc_fastq; /* interactive output packet q */ + struct mbuf *sc_togo; /* output packet ready to go */ + struct mbuf *sc_npqueue; /* output packets not to be sent yet */ + struct mbuf **sc_npqtail; /* ptr to last next ptr in npqueue */ + struct pppstat sc_stats; /* count of bytes/pkts sent/rcvd */ caddr_t sc_bpf; /* hook for BPF */ enum NPmode sc_npmode[NUM_NP]; /* what to do with each NP */ struct compressor *sc_xcomp; /* transmit compressor */ void *sc_xc_state; /* transmit compressor state */ struct compressor *sc_rcomp; /* receive decompressor */ void *sc_rc_state; /* receive decompressor state */ - + time_t sc_last_sent; /* time (secs) last NP pkt sent */ + time_t sc_last_recv; /* time (secs) last NP pkt rcvd */ +#ifdef VJC + struct slcompress *sc_comp; /* vjc control buffer */ +#endif + /* Device-dependent part for async lines. */ ext_accm sc_asyncmap; /* async control character map */ u_long sc_rasyncmap; /* receive async control char map */ @@ -86,7 +93,12 @@ struct ppp_softc { int sc_rawin_count; /* # in sc_rawin */ }; -struct ppp_softc ppp_softc[NPPP]; +struct ppp_softc ppp_softc[NPPP]; -extern int ppppktin __P((struct ppp_softc *sc, struct mbuf *m)); -struct mbuf *ppp_dequeue __P((struct ppp_softc *sc)); +struct ppp_softc *pppalloc __P((pid_t pid)); +void pppdealloc __P((struct ppp_softc *sc)); +int pppioctl __P((struct ppp_softc *sc, int cmd, caddr_t data, + int flag, struct proc *p)); +void ppp_restart __P((struct ppp_softc *sc)); +void ppppktin __P((struct ppp_softc *sc, struct mbuf *m, int lost)); +struct mbuf *ppp_dequeue __P((struct ppp_softc *sc));