home *** CD-ROM | disk | FTP | other *** search
- #ifndef _SLIP_H
- #define _SLIP_H
-
- #ifndef _GLOBAL_H
- #include "global.h"
- #endif
-
- #ifndef _PPP_H
- #include "ppp.h"
- #endif
-
- #ifndef _SLCOMPRESS_H
- #include "slcompre.h"
- #endif
-
- #define SLIP_MAX 5 /* Maximum number of slip channels */
-
- /* SLIP definitions */
- #define SLIP_ALLOC 100 /* Receiver allocation increment */
-
- #define FR_END 0300 /* Frame End */
- #define FR_ESC 0333 /* Frame Escape */
- #define T_FR_END 0334 /* Transposed frame end */
- #define T_FR_ESC 0335 /* Transposed frame escape */
-
- /* Slip protocol control structure */
- struct slip {
- struct iface *iface;
- char escaped; /* Receiver State control flag */
- #define SLIP_FLAG 0x01 /* Last char was a frame escape */
- #define SLIP_VJCOMPR 0x02 /* TCP header compression enabled */
- struct mbuf *rbp; /* Head of mbuf chain being filled */
- struct mbuf *rbp1; /* Pointer to mbuf currently being written */
- char *rcp; /* Write pointer */
- int16 rcnt; /* Length of mbuf chain */
- struct mbuf *tbp; /* Transmit mbuf being sent */
- int16 errors; /* Receiver input errors */
- int type; /* Protocol of input */
- int (*send)(int,struct mbuf *); /* Routine to send mbufs */
- int (*get)(int); /* Routine to fetch input chars */
- int (*get_rlsd)(int, int); /* Routine to monitor RLSD signal */
- struct slcompress *slcomp; /* TCP header compression table */
- struct pppctl *pppio; /* Control structure for PPP interfaces */
- };
- extern struct slip Slip[];
- /* In slip.c: */
- void asy_rx __ARGS((int xdev,void *p1,void *p2));
- void asytxdone __ARGS((int dev));
- int slip_raw __ARGS((struct iface *iface,struct mbuf *data));
- int slip_send __ARGS((struct mbuf *bp,struct iface *iface,int32 gateway,int prec,
- int del,int tput,int rel));
- void doslstat __ARGS((struct iface *iface));
- #endif /* _SLIP_H */