]> git.ozlabs.org Git - ppp.git/blobdiff - netbsd-1.1/ppp-deflate.c
added zalloc_init function ptr for zlib stuff
[ppp.git] / netbsd-1.1 / ppp-deflate.c
index cb4bd7ee52b152ad48760fcbcfb79850a5721983..697cac6a78754f7988e49a7202b4a47148d5b72c 100644 (file)
@@ -1,4 +1,4 @@
-/*     $Id: ppp-deflate.c,v 1.2 1996/04/04 03:23:09 paulus Exp $       */
+/*     $Id: ppp-deflate.c,v 1.6 1997/04/30 05:47:23 paulus Exp $       */
 
 /*
  * ppp_deflate.c - interface the zlib procedures for Deflate compression
@@ -41,6 +41,8 @@
 
 #if DO_DEFLATE
 
+#define DEFLATE_DEBUG  1
+
 /*
  * State for a Deflate (de)compressor.
  */
@@ -146,6 +148,7 @@ z_comp_alloc(options, opt_len)
 
     state->strm.next_in = NULL;
     state->strm.zalloc = zalloc;
+    state->strm.zalloc_init = zalloc;
     state->strm.zfree = zfree;
     if (deflateInit2(&state->strm, Z_DEFAULT_COMPRESSION, DEFLATE_METHOD_VAL,
                     -w_size, 8, Z_DEFAULT_STRATEGY, DEFLATE_OVHD+2) != Z_OK) {
@@ -377,6 +380,7 @@ z_decomp_alloc(options, opt_len)
 
     state->strm.next_out = NULL;
     state->strm.zalloc = zalloc;
+    state->strm.zalloc_init = zalloc;
     state->strm.zfree = zfree;
     if (inflateInit2(&state->strm, -w_size) != Z_OK) {
        FREE(state, M_DEVBUF);
@@ -531,7 +535,9 @@ z_decompress(arg, mi, mop)
     for (;;) {
        r = inflate(&state->strm, flush);
        if (r != Z_OK) {
+#if !DEFLATE_DEBUG
            if (state->debug)
+#endif
                printf("z_decompress%d: inflate returned %d (%s)\n",
                       state->unit, r, (state->strm.msg? state->strm.msg: ""));
            m_freem(mo_head);
@@ -578,6 +584,11 @@ z_decompress(arg, mi, mop)
        return DECOMP_ERROR;
     }
     olen += (mo->m_len = ospace - state->strm.avail_out);
+#if DEFLATE_DEBUG
+    if (olen > state->mru + PPP_HDRLEN)
+       printf("ppp_deflate%d: exceeded mru (%d > %d)\n",
+              state->unit, olen, state->mru + PPP_HDRLEN);
+#endif
 
     state->stats.unc_bytes += olen;
     state->stats.unc_packets++;
@@ -627,10 +638,11 @@ z_incomp(arg, mi)
        r = inflateIncomp(&state->strm);
        if (r != Z_OK) {
            /* gak! */
-           if (state->debug) {
+#if !DEFLATE_DEBUG
+           if (state->debug)
+#endif
                printf("z_incomp%d: inflateIncomp returned %d (%s)\n",
                       state->unit, r, (state->strm.msg? state->strm.msg: ""));
-           }
            return;
        }
        mi = mi->m_next;