149284Sbostic /*- 263211Sbostic * Copyright (c) 1991, 1993 363211Sbostic * The Regents of the University of California. All rights reserved. 449284Sbostic * 549284Sbostic * %sccs.include.redist.c% 649284Sbostic * 7*68168Scgd * @(#)if_slvar.h 8.4 (Berkeley) 01/09/95 849284Sbostic * 949284Sbostic * $Header: if_slvar.h,v 1.3 89/05/31 02:25:18 van Exp $ 1049284Sbostic */ 1138367Skarels 1238367Skarels /* 1338368Skarels * Definitions for SLIP interface data structures 1438368Skarels * 1549284Sbostic * (This exists so programs like slstats can get at the definition 1638368Skarels * of sl_softc.) 1738367Skarels */ 1838367Skarels struct sl_softc { 1938367Skarels struct ifnet sc_if; /* network-visible interface */ 2038368Skarels struct ifqueue sc_fastq; /* interactive output queue */ 2138367Skarels struct tty *sc_ttyp; /* pointer to tty structure */ 2238368Skarels u_char *sc_mp; /* pointer to next available buf char */ 2338368Skarels u_char *sc_ep; /* pointer to last available buf char */ 2438368Skarels u_char *sc_buf; /* input buffer */ 2538368Skarels u_int sc_flags; /* see below */ 2638368Skarels u_int sc_escape; /* =1 if last char input was FRAME_ESCAPE */ 2738368Skarels long sc_lasttime; /* last time a char arrived */ 2838368Skarels long sc_abortcount; /* number of abort esacpe chars */ 2952203Skarels long sc_starttime; /* time of first abort in window */ 3038378Skarels #ifdef INET /* XXX */ 3138368Skarels struct slcompress sc_comp; /* tcp compression data */ 3238378Skarels #endif 3365578Scgd caddr_t sc_bpf; /* BPF data */ 3438367Skarels }; 3538367Skarels 3665578Scgd /* internal flags */ 3765578Scgd #define SC_ERROR 0x0001 /* had an input error */ 3865578Scgd 3939947Ssam /* visible flags */ 4052203Skarels #define SC_COMPRESS IFF_LINK0 /* compress TCP traffic */ 4152203Skarels #define SC_NOICMP IFF_LINK1 /* supress ICMP traffic */ 4252203Skarels #define SC_AUTOCOMP IFF_LINK2 /* auto-enable TCP compression */ 4338367Skarels 4461364Sbostic #ifdef KERNEL 4565578Scgd void slattach __P((void)); 4665578Scgd void slclose __P((struct tty *)); 4765578Scgd void slinput __P((int, struct tty *)); 48*68168Scgd int slioctl __P((struct ifnet *, u_long, caddr_t)); 4965578Scgd int slopen __P((dev_t, struct tty *)); 5065578Scgd int sloutput __P((struct ifnet *, 5161364Sbostic struct mbuf *, struct sockaddr *, struct rtentry *)); 5265578Scgd void slstart __P((struct tty *)); 53*68168Scgd int sltioctl __P((struct tty *, u_long, caddr_t, int)); 5465578Scgd #endif /* KERNEL */ 55