xref: /original-bsd/sys/net/if_slvar.h (revision f737e041)
1 /*-
2  * Copyright (c) 1991, 1993
3  *	The Regents of the University of California.  All rights reserved.
4  *
5  * %sccs.include.redist.c%
6  *
7  *	@(#)if_slvar.h	8.3 (Berkeley) 02/01/94
8  *
9  * $Header: if_slvar.h,v 1.3 89/05/31 02:25:18 van Exp $
10  */
11 
12 /*
13  * Definitions for SLIP interface data structures
14  *
15  * (This exists so programs like slstats can get at the definition
16  *  of sl_softc.)
17  */
18 struct sl_softc {
19 	struct	ifnet sc_if;		/* network-visible interface */
20 	struct	ifqueue sc_fastq;	/* interactive output queue */
21 	struct	tty *sc_ttyp;		/* pointer to tty structure */
22 	u_char	*sc_mp;			/* pointer to next available buf char */
23 	u_char	*sc_ep;			/* pointer to last available buf char */
24 	u_char	*sc_buf;		/* input buffer */
25 	u_int	sc_flags;		/* see below */
26 	u_int	sc_escape;	/* =1 if last char input was FRAME_ESCAPE */
27 	long	sc_lasttime;		/* last time a char arrived */
28 	long	sc_abortcount;		/* number of abort esacpe chars */
29 	long	sc_starttime;		/* time of first abort in window */
30 #ifdef INET				/* XXX */
31 	struct	slcompress sc_comp;	/* tcp compression data */
32 #endif
33 	caddr_t	sc_bpf;			/* BPF data */
34 };
35 
36 /* internal flags */
37 #define	SC_ERROR	0x0001		/* had an input error */
38 
39 /* visible flags */
40 #define	SC_COMPRESS	IFF_LINK0	/* compress TCP traffic */
41 #define	SC_NOICMP	IFF_LINK1	/* supress ICMP traffic */
42 #define	SC_AUTOCOMP	IFF_LINK2	/* auto-enable TCP compression */
43 
44 #ifdef KERNEL
45 void	slattach __P((void));
46 void	slclose __P((struct tty *));
47 void	slinput __P((int, struct tty *));
48 int	slioctl __P((struct ifnet *, int, caddr_t));
49 int	slopen __P((dev_t, struct tty *));
50 int	sloutput __P((struct ifnet *,
51 	    struct mbuf *, struct sockaddr *, struct rtentry *));
52 void	slstart __P((struct tty *));
53 int	sltioctl __P((struct tty *, int, caddr_t, int));
54 #endif /* KERNEL */
55