d_stream.next_in  = compr; d_stream.next_out = uncompr;
void test_inflate(compr, comprLen, uncompr, uncomprLen)    Byte *compr, *uncompr;    uLong comprLen, uncomprLen;{    int err;    z_stream d_stream; /* decompression stream */    strcpy((char*)uncompr, "garbage");    d_stream.zalloc = (alloc_func)0;    d_stream.zfree = (free_func)0;    d_stream.opaque = (voidpf)0;    err = inflateInit(&d_stream);    CHECK_ERR(err, "inflateInit");    d_stream.next_in  = compr;    d_stream.next_out = uncompr;    while (d_stream.total_out < uncomprLen && d_stream.total_in < comprLen) {        d_stream.avail_in = d_stream.avail_out = 1; /* force small buffers */        err = inflate(&d_stream, Z_NO_FLUSH);        if (err == Z_STREAM_END) break;        CHECK_ERR(err, "inflate");    }    err = inflateEnd(&d_stream);    CHECK_ERR(err, "inflateEnd");    if (strcmp((char*)uncompr, hello)) {        fprintf(stderr, "bad inflate\n");    } else {        printf("inflate(): %s\n", uncompr);    }}