gzhead
if (s->gzhead == Z_NULL) {
put_byte(s, (s->gzhead->text ? 1 : 0) +
(s->gzhead->hcrc ? 2 : 0) +
(s->gzhead->extra == Z_NULL ? 0 : 4) +
(s->gzhead->name == Z_NULL ? 0 : 8) +
(s->gzhead->comment == Z_NULL ? 0 : 16)
put_byte(s, (Byte)(s->gzhead->time & 0xff));
put_byte(s, (Byte)((s->gzhead->time >> 8) & 0xff));
put_byte(s, (Byte)((s->gzhead->time >> 16) & 0xff));
put_byte(s, (Byte)((s->gzhead->time >> 24) & 0xff));
put_byte(s, s->gzhead->os & 0xff);
if (s->gzhead->extra != Z_NULL) {
put_byte(s, s->gzhead->extra_len & 0xff);
put_byte(s, (s->gzhead->extra_len >> 8) & 0xff);
if (s->gzhead->hcrc)
if (s->gzhead->extra != Z_NULL) {
ulg left = (s->gzhead->extra_len & 0xffff) - s->gzindex;
s->gzhead->extra + s->gzindex, copy);
s->gzhead->extra + s->gzindex, left);
if (s->gzhead->name != Z_NULL) {
val = s->gzhead->name[s->gzindex++];
if (s->gzhead->comment != Z_NULL) {
val = s->gzhead->comment[s->gzindex++];
if (s->gzhead->hcrc) {
s->gzhead = Z_NULL;
strm->state->gzhead = head;
if (s->gzhead != Z_NULL) { /* user-supplied gzip header */
if (s->gzhead->extra != Z_NULL)
wraplen += 2 + s->gzhead->extra_len;
str = s->gzhead->name;
str = s->gzhead->comment;
if (s->gzhead->hcrc)
if (s->gzhead->hcrc && s->pending > (beg)) \
gz_headerp gzhead; /* gzip header information to write */
gzhead(in);