diff options
author | Peter Wemm <peter@FreeBSD.org> | 1998-06-20 16:11:31 +0000 |
---|---|---|
committer | Peter Wemm <peter@FreeBSD.org> | 1998-06-20 16:11:31 +0000 |
commit | 980ca1881cefe798778adede7219c514bcb5f243 (patch) | |
tree | e37c15ec9b867e3f72379a71dd59dd5406a374d6 | |
parent | 8dae36c80456f937ac92aaa9355a3c30578af0a0 (diff) | |
download | src-980ca1881cefe798778adede7219c514bcb5f243.tar.gz src-980ca1881cefe798778adede7219c514bcb5f243.zip |
Import kernel parts of ppp-2.3.5.
Obtained from: ftp://cs.anu.edu.au/pub/software/ppp
Notes
Notes:
svn path=/cvs2svn/branches/MACKERAS/; revision=37064
-rw-r--r-- | sys/net/if_ppp.c | 7 | ||||
-rw-r--r-- | sys/net/if_ppp.h | 4 | ||||
-rw-r--r-- | sys/net/if_pppvar.h | 4 | ||||
-rw-r--r-- | sys/net/ppp_comp.h | 5 | ||||
-rw-r--r-- | sys/net/ppp_deflate.c | 31 | ||||
-rw-r--r-- | sys/net/slcompress.c | 33 | ||||
-rw-r--r-- | sys/net/slcompress.h | 21 | ||||
-rw-r--r-- | sys/net/zlib.c | 6 |
8 files changed, 50 insertions, 61 deletions
diff --git a/sys/net/if_ppp.c b/sys/net/if_ppp.c index d9369d62c46c..af0fed05b457 100644 --- a/sys/net/if_ppp.c +++ b/sys/net/if_ppp.c @@ -69,7 +69,7 @@ * Paul Mackerras (paulus@cs.anu.edu.au). */ -/* $Id: if_ppp.c,v 1.12 1997/04/30 05:42:07 paulus Exp $ */ +/* $Id: if_ppp.c,v 1.14 1998/03/25 04:05:01 paulus Exp $ */ /* from if_sl.c,v 1.11 84/10/04 12:54:47 rick Exp */ /* from NetBSD: if_ppp.c,v 1.15.2.2 1994/07/28 05:17:58 cgd Exp */ @@ -131,8 +131,6 @@ #endif static int pppsioctl __P((struct ifnet *, int, caddr_t)); -static int pppoutput __P((struct ifnet *, struct mbuf *, - struct sockaddr *, struct rtentry *)); static void ppp_requeue __P((struct ppp_softc *)); static void ppp_ccp __P((struct ppp_softc *, struct mbuf *m, int rcvd)); static void ppp_ccp_closed __P((struct ppp_softc *)); @@ -167,7 +165,7 @@ static void pppdumpm __P((struct mbuf *m0)); */ extern struct compressor ppp_bsd_compress; -extern struct compressor ppp_deflate; +extern struct compressor ppp_deflate, ppp_deflate_draft; struct compressor *ppp_compressors[8] = { #if DO_BSD_COMPRESS @@ -175,6 +173,7 @@ struct compressor *ppp_compressors[8] = { #endif #if DO_DEFLATE &ppp_deflate, + &ppp_deflate_draft, #endif NULL }; diff --git a/sys/net/if_ppp.h b/sys/net/if_ppp.h index 17060c74d2f7..e414a849d268 100644 --- a/sys/net/if_ppp.h +++ b/sys/net/if_ppp.h @@ -1,4 +1,4 @@ -/* $Id: if_ppp.h,v 1.16 1997/04/30 05:46:04 paulus Exp $ */ +/* $Id: if_ppp.h,v 1.17 1998/03/25 04:03:13 paulus Exp $ */ /* * if_ppp.h - Point-to-Point Protocol definitions. @@ -125,7 +125,7 @@ struct ifpppcstatsreq { #define ifr_mtu ifr_ifru.ifru_metric #endif -#if defined(_KERNEL) || defined(KERNEL) +#if (defined(_KERNEL) || defined(KERNEL)) && !defined(NeXT) void pppattach __P((void)); void pppintr __P((void)); #endif diff --git a/sys/net/if_pppvar.h b/sys/net/if_pppvar.h index 91e8e4e75863..7c3b97e29ac5 100644 --- a/sys/net/if_pppvar.h +++ b/sys/net/if_pppvar.h @@ -1,4 +1,4 @@ -/* $Id: if_pppvar.h,v 1.5 1997/04/30 05:42:08 paulus Exp $ */ +/* $Id: if_pppvar.h,v 1.6 1998/02/04 01:36:40 paulus Exp $ */ /* * if_pppvar.h - private structures and declarations for PPP. * @@ -101,6 +101,8 @@ struct ppp_softc ppp_softc[NPPP]; struct ppp_softc *pppalloc __P((pid_t pid)); void pppdealloc __P((struct ppp_softc *sc)); +int pppoutput __P((struct ifnet *, struct mbuf *, + struct sockaddr *, struct rtentry *)); 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)); diff --git a/sys/net/ppp_comp.h b/sys/net/ppp_comp.h index adab65cd3e02..fe62a61f1cea 100644 --- a/sys/net/ppp_comp.h +++ b/sys/net/ppp_comp.h @@ -24,7 +24,7 @@ * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, * OR MODIFICATIONS. * - * $Id: ppp-comp.h,v 1.10 1996/09/26 06:30:11 paulus Exp $ + * $Id: ppp-comp.h,v 1.11 1998/03/25 03:33:34 paulus Exp $ */ #ifndef _NET_PPP_COMP_H @@ -141,7 +141,8 @@ struct compressor { /* * Definitions for Deflate. */ -#define CI_DEFLATE 24 /* config option for Deflate */ +#define CI_DEFLATE 26 /* config option for Deflate */ +#define CI_DEFLATE_DRAFT 24 /* value used in original draft RFC */ #define CILEN_DEFLATE 4 /* length of its config option */ #define DEFLATE_MIN_SIZE 8 diff --git a/sys/net/ppp_deflate.c b/sys/net/ppp_deflate.c index 424a69f4320e..213bf0e2e387 100644 --- a/sys/net/ppp_deflate.c +++ b/sys/net/ppp_deflate.c @@ -1,4 +1,4 @@ -/* $Id: ppp-deflate.c,v 1.7 1997/11/27 06:06:31 paulus Exp $ */ +/* $Id: ppp-deflate.c,v 1.8 1998/03/24 23:48:04 paulus Exp $ */ /* * ppp_deflate.c - interface the zlib procedures for Deflate compression @@ -98,6 +98,23 @@ struct compressor ppp_deflate = { z_comp_stats, /* decomp_stat */ }; +struct compressor ppp_deflate = { + CI_DEFLATE_DRAFT, /* compress_proto */ + z_comp_alloc, /* comp_alloc */ + z_comp_free, /* comp_free */ + z_comp_init, /* comp_init */ + z_comp_reset, /* comp_reset */ + z_compress, /* compress */ + z_comp_stats, /* comp_stat */ + z_decomp_alloc, /* decomp_alloc */ + z_decomp_free, /* decomp_free */ + z_decomp_init, /* decomp_init */ + z_decomp_reset, /* decomp_reset */ + z_decompress, /* decompress */ + z_incomp, /* incomp */ + z_comp_stats, /* decomp_stat */ +}; + /* * Space allocation and freeing routines for use by zlib routines. */ @@ -131,7 +148,8 @@ z_comp_alloc(options, opt_len) struct deflate_state *state; int w_size; - if (opt_len != CILEN_DEFLATE || options[0] != CI_DEFLATE + if (opt_len != CILEN_DEFLATE + || (options[0] != CI_DEFLATE && options[0] != CI_DEFLATE_DRAFT) || options[1] != CILEN_DEFLATE || DEFLATE_METHOD(options[2]) != DEFLATE_METHOD_VAL || options[3] != DEFLATE_CHK_SEQUENCE) @@ -177,7 +195,8 @@ z_comp_init(arg, options, opt_len, unit, hdrlen, debug) { struct deflate_state *state = (struct deflate_state *) arg; - if (opt_len < CILEN_DEFLATE || options[0] != CI_DEFLATE + if (opt_len < CILEN_DEFLATE + || (options[0] != CI_DEFLATE && options[0] != CI_DEFLATE_DRAFT) || options[1] != CILEN_DEFLATE || DEFLATE_METHOD(options[2]) != DEFLATE_METHOD_VAL || DEFLATE_SIZE(options[2]) != state->w_size @@ -362,7 +381,8 @@ z_decomp_alloc(options, opt_len) struct deflate_state *state; int w_size; - if (opt_len != CILEN_DEFLATE || options[0] != CI_DEFLATE + if (opt_len != CILEN_DEFLATE + || (options[0] != CI_DEFLATE && options[0] != CI_DEFLATE_DRAFT) || options[1] != CILEN_DEFLATE || DEFLATE_METHOD(options[2]) != DEFLATE_METHOD_VAL || options[3] != DEFLATE_CHK_SEQUENCE) @@ -407,7 +427,8 @@ z_decomp_init(arg, options, opt_len, unit, hdrlen, mru, debug) { struct deflate_state *state = (struct deflate_state *) arg; - if (opt_len < CILEN_DEFLATE || options[0] != CI_DEFLATE + if (opt_len < CILEN_DEFLATE + || (options[0] != CI_DEFLATE && options[0] != CI_DEFLATE_DRAFT) || options[1] != CILEN_DEFLATE || DEFLATE_METHOD(options[2]) != DEFLATE_METHOD_VAL || DEFLATE_SIZE(options[2]) != state->w_size diff --git a/sys/net/slcompress.c b/sys/net/slcompress.c index 96da9636463f..c46c57f7f14a 100644 --- a/sys/net/slcompress.c +++ b/sys/net/slcompress.c @@ -1,5 +1,4 @@ -/* $NetBSD: slcompress.c,v 1.17 1997/05/17 21:12:10 christos Exp $ */ -/* Id: slcompress.c,v 1.3 1996/05/24 07:04:47 paulus Exp */ +/* $Id: slcompress.c,v 1.3 1996/05/24 07:04:47 paulus Exp $ */ /* * Copyright (c) 1989, 1993, 1994 @@ -67,36 +66,10 @@ #define ovbcopy bcopy #endif - void -sl_compress_init(comp) +sl_compress_init(comp, max_state) struct slcompress *comp; -{ - register u_int i; - register struct cstate *tstate = comp->tstate; - - bzero((char *)comp, sizeof(*comp)); - for (i = MAX_STATES - 1; i > 0; --i) { - tstate[i].cs_id = i; - tstate[i].cs_next = &tstate[i - 1]; - } - tstate[0].cs_next = &tstate[MAX_STATES - 1]; - tstate[0].cs_id = 0; - comp->last_cs = &tstate[0]; - comp->last_recv = 255; - comp->last_xmit = 255; - comp->flags = SLF_TOSS; -} - - -/* - * Like sl_compress_init, but we get to specify the maximum connection - * ID to use on transmission. - */ -void -sl_compress_setup(comp, max_state) - struct slcompress *comp; - int max_state; + int max_state; { register u_int i; register struct cstate *tstate = comp->tstate; diff --git a/sys/net/slcompress.h b/sys/net/slcompress.h index ca430c401d2a..5ce09467120c 100644 --- a/sys/net/slcompress.h +++ b/sys/net/slcompress.h @@ -1,5 +1,4 @@ -/* $NetBSD: slcompress.h,v 1.11 1997/05/17 21:12:11 christos Exp $ */ -/* Id: slcompress.h,v 1.4 1994/09/21 06:50:08 paulus Exp */ +/* $Id: slcompress.h,v 1.1 1995/12/11 05:17:12 paulus Exp $ */ /* * Copyright (c) 1989, 1993 @@ -43,9 +42,6 @@ * - Initial distribution. */ -#ifndef _SLCOMPRESS_H_ -#define _SLCOMPRESS_H_ - #define MAX_STATES 16 /* must be > 2 and < 256 */ #define MAX_HDR MLEN /* XXX 4bsd-ism: should really be 128 */ @@ -158,12 +154,9 @@ struct slcompress { /* flag values */ #define SLF_TOSS 1 /* tossing rcvd frames because of input err */ -void sl_compress_init __P((struct slcompress *)); -void sl_compress_setup __P((struct slcompress *, int)); -u_int sl_compress_tcp __P((struct mbuf *, - struct ip *, struct slcompress *, int)); -int sl_uncompress_tcp __P((u_char **, int, u_int, struct slcompress *)); -int sl_uncompress_tcp_core __P((u_char *, int, int, u_int, - struct slcompress *, u_char **, u_int *)); - -#endif /* _SLCOMPRESS_H_ */ +void sl_compress_init __P((struct slcompress *, int)); +u_int sl_compress_tcp __P((struct mbuf *, + struct ip *, struct slcompress *, int)); +int sl_uncompress_tcp __P((u_char **, int, u_int, struct slcompress *)); +int sl_uncompress_tcp_core __P((u_char *, int, int, u_int, + struct slcompress *, u_char **, u_int *)); diff --git a/sys/net/zlib.c b/sys/net/zlib.c index b69826fe94f0..9d1b8f224880 100644 --- a/sys/net/zlib.c +++ b/sys/net/zlib.c @@ -10,7 +10,7 @@ * - added inflateIncomp and deflateOutputPending * - allow strm->next_out to be NULL, meaning discard the output * - * $Id: zlib.c,v 1.7 1997/05/22 06:44:39 paulus Exp $ + * $Id: zlib.c,v 1.10 1998/03/19 04:55:37 paulus Exp $ */ /* @@ -1147,12 +1147,12 @@ int deflateCopy (dest, source) return Z_STREAM_ERROR; ss = (deflate_state *) source->state; - *dest = *source; + zmemcpy(dest, source, sizeof(*dest)); ds = (deflate_state *) ZALLOC(dest, 1, sizeof(deflate_state)); if (ds == Z_NULL) return Z_MEM_ERROR; dest->state = (struct internal_state FAR *) ds; - *ds = *ss; + zmemcpy(ds, ss, sizeof(*ds)); ds->strm = dest; ds->window = (Bytef *) ZALLOC(dest, ds->w_size, 2*sizeof(Byte)); |