BSD 4_4 release
[unix-history] / usr / src / sys / net / if_slvar.h
CommitLineData
6cfe221b 1/*-
ad787160
C
2 * Copyright (c) 1991, 1993
3 * The Regents of the University of California. All rights reserved.
6cfe221b 4 *
ad787160
C
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 * 3. All advertising materials mentioning features or use of this software
14 * must display the following acknowledgement:
15 * This product includes software developed by the University of
16 * California, Berkeley and its contributors.
17 * 4. Neither the name of the University nor the names of its contributors
18 * may be used to endorse or promote products derived from this software
19 * without specific prior written permission.
6cfe221b 20 *
ad787160
C
21 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * @(#)if_slvar.h 8.1 (Berkeley) 6/10/93
6cfe221b
KB
34 *
35 * $Header: if_slvar.h,v 1.3 89/05/31 02:25:18 van Exp $
36 */
404373be
MK
37
38/*
9de3e30d
MK
39 * Definitions for SLIP interface data structures
40 *
6cfe221b 41 * (This exists so programs like slstats can get at the definition
9de3e30d 42 * of sl_softc.)
404373be
MK
43 */
44struct sl_softc {
45 struct ifnet sc_if; /* network-visible interface */
9de3e30d 46 struct ifqueue sc_fastq; /* interactive output queue */
404373be 47 struct tty *sc_ttyp; /* pointer to tty structure */
9de3e30d
MK
48 u_char *sc_mp; /* pointer to next available buf char */
49 u_char *sc_ep; /* pointer to last available buf char */
50 u_char *sc_buf; /* input buffer */
51 u_int sc_flags; /* see below */
52 u_int sc_escape; /* =1 if last char input was FRAME_ESCAPE */
9de3e30d 53 long sc_lasttime; /* last time a char arrived */
9de3e30d 54 long sc_abortcount; /* number of abort esacpe chars */
1db6ff40 55 long sc_starttime; /* time of first abort in window */
270f7144 56#ifdef INET /* XXX */
9de3e30d 57 struct slcompress sc_comp; /* tcp compression data */
270f7144 58#endif
404373be
MK
59};
60
8985215b 61/* visible flags */
1db6ff40
MK
62#define SC_COMPRESS IFF_LINK0 /* compress TCP traffic */
63#define SC_NOICMP IFF_LINK1 /* supress ICMP traffic */
64#define SC_AUTOCOMP IFF_LINK2 /* auto-enable TCP compression */
404373be
MK
65
66/* this stuff doesn't belong here... */
06de6ce5 67#define SLIOCGUNIT _IOR('t', 88, int) /* get slip unit number */
2a67f029
KB
68
69#ifdef KERNEL
70void slattach __P((void));
71void slclose __P((struct tty *));
72void slinput __P((int, struct tty *));
73int slioctl __P((struct ifnet *, int, caddr_t));
74int slopen __P((dev_t, struct tty *));
75int sloutput __P((struct ifnet *,
76 struct mbuf *, struct sockaddr *, struct rtentry *));
77void slstart __P((struct tty *));
78int sltioctl __P((struct tty *, int, caddr_t, int));
79#endif