Fix type mismatch between get_crc_table() and crc_table.
authorMark Adler <madler@alumni.caltech.edu>
Sun, 29 Apr 2012 23:18:12 +0000 (16:18 -0700)
committerMark Adler <madler@alumni.caltech.edu>
Sun, 29 Apr 2012 23:18:12 +0000 (16:18 -0700)
commit6c9bd474aa08312ef2e2e9655a80e18db24a1680
tree2539e04a1037206dc3853fbdbb33194bb2690aaa
parent1be117908397b0ce065c07c60fa2b4ae778ff112
Fix type mismatch between get_crc_table() and crc_table.

crc_table is made using a four-byte integer (when that can be
determined).  However get_crc_table() returned a pointer to an
unsigned long, which could be eight bytes.  This fixes that by
creating a new z_crc_t type for the crc_table.

This type is also used for the BYFOUR crc calculations that depend
on a four-byte type.  The four-byte type can now be determined by
./configure, which also solves a problem where ./configure --solo
would never use BYFOUR.  No the Z_U4 #define indicates that four-
byte integer was found either by ./configure or by zconf.h.
configure
crc32.c
crc32.h
zconf.h
zconf.h.cmakein
zconf.h.in
zlib.h