X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=include%2Fnet%2Fppp-comp.h;h=e2579f85702acd42b78b8a533c8eae2581eb6d15;hp=0dc5d1d429f3524932bb11a8ad925a3c2a7b048f;hb=3f9351d1f16d272355e1958ff3038fd168f23a9b;hpb=245970e8e3b8312aebe4c7eea00fca428e015349 diff --git a/include/net/ppp-comp.h b/include/net/ppp-comp.h index 0dc5d1d..e2579f8 100644 --- a/include/net/ppp-comp.h +++ b/include/net/ppp-comp.h @@ -24,12 +24,24 @@ * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, * OR MODIFICATIONS. * - * $Id: ppp-comp.h,v 1.5 1994/12/05 00:33:33 paulus Exp $ + * $Id: ppp-comp.h,v 1.7 1995/05/01 01:43:37 paulus Exp $ */ +#ifndef _NET_PPP_COMP_H +#define _NET_PPP_COMP_H + +/* + * The following symbols control whether we include code for + * various compression methods. + */ +#ifndef DO_BSD_COMPRESS +#define DO_BSD_COMPRESS 1 /* by default, include BSD-Compress */ +#endif + /* * Structure giving methods for compression/decompression. */ +#ifdef PACKETPTR struct compressor { int compress_proto; /* CCP compression protocol number */ @@ -39,7 +51,7 @@ struct compressor { void (*comp_free) __P((void *state)); /* Initialize a compressor */ int (*comp_init) __P((void *state, u_char *options, int opt_len, - int unit, int debug)); + int unit, int hdrlen, int debug)); /* Reset a compressor */ void (*comp_reset) __P((void *state)); /* Compress a packet */ @@ -65,6 +77,7 @@ struct compressor { /* Return decompression statistics */ void (*decomp_stat) __P((void *state, struct compstat *stats)); }; +#endif /* PACKETPTR */ /* * Return values for decompress routine. @@ -105,3 +118,19 @@ struct compressor { #define CCP_OPT_LENGTH(dp) ((dp)[1]) #define CCP_OPT_MINLEN 2 +/* + * Definitions for BSD-Compress. + */ +#define CI_BSD_COMPRESS 21 /* config. option for BSD-Compress */ +#define CILEN_BSD_COMPRESS 3 /* length of config. option */ + +/* Macros for handling the 3rd byte of the BSD-Compress config option. */ +#define BSD_NBITS(x) ((x) & 0x1F) /* number of bits requested */ +#define BSD_VERSION(x) ((x) >> 5) /* version of option format */ +#define BSD_CURRENT_VERSION 1 /* current version number */ +#define BSD_MAKE_OPT(v, n) (((v) << 5) | (n)) + +#define BSD_MIN_BITS 9 /* smallest code size supported */ +#define BSD_MAX_BITS 15 /* largest code size supported */ + +#endif /* _NET_PPP_COMP_H */