git-svn: trunk@3816
aCaB authored on 2008/04/29 00:17:33... | ... |
@@ -1,3 +1,7 @@ |
1 |
+Mon Apr 28 16:14:39 CEST 2008 (acab) |
|
2 |
+------------------------------------ |
|
3 |
+ * libclamav/inflate64: avoid collisions on AIX - bb#947 |
|
4 |
+ |
|
1 | 5 |
Mon Apr 28 16:13:33 CEST 2008 (tk) |
2 | 6 |
---------------------------------- |
3 | 7 |
* libclamav/scanners.c: don't return CL_EMAX* error codes to |
... | ... |
@@ -416,17 +416,17 @@ int flush; |
416 | 416 |
NEEDBITS(16); |
417 | 417 |
if ( |
418 | 418 |
((BITS(8) << 8) + (hold >> 8)) % 31) { |
419 |
- state->mode = BAD; |
|
419 |
+ state->mode = ACAB_BAD; |
|
420 | 420 |
break; |
421 | 421 |
} |
422 | 422 |
if (BITS(4) != Z_DEFLATED) { |
423 |
- state->mode = BAD; |
|
423 |
+ state->mode = ACAB_BAD; |
|
424 | 424 |
break; |
425 | 425 |
} |
426 | 426 |
DROPBITS(4); |
427 | 427 |
len = BITS(4) + 8; |
428 | 428 |
if (len > state->wbits) { |
429 |
- state->mode = BAD; |
|
429 |
+ state->mode = ACAB_BAD; |
|
430 | 430 |
break; |
431 | 431 |
} |
432 | 432 |
state->dmax = 1U << len; |
... | ... |
@@ -472,7 +472,7 @@ int flush; |
472 | 472 |
state->mode = TABLE; |
473 | 473 |
break; |
474 | 474 |
case 3: |
475 |
- state->mode = BAD; |
|
475 |
+ state->mode = ACAB_BAD; |
|
476 | 476 |
} |
477 | 477 |
DROPBITS(2); |
478 | 478 |
break; |
... | ... |
@@ -480,7 +480,7 @@ int flush; |
480 | 480 |
BYTEBITS(); /* go to byte boundary */ |
481 | 481 |
NEEDBITS(32); |
482 | 482 |
if ((hold & 0xffff) != ((hold >> 16) ^ 0xffff)) { |
483 |
- state->mode = BAD; |
|
483 |
+ state->mode = ACAB_BAD; |
|
484 | 484 |
break; |
485 | 485 |
} |
486 | 486 |
state->length = (unsigned)hold & 0xffff; |
... | ... |
@@ -515,7 +515,7 @@ int flush; |
515 | 515 |
DROPBITS(4); |
516 | 516 |
#ifndef PKZIP_BUG_WORKAROUND |
517 | 517 |
if (state->nlen > 286 || state->ndist > 30) { |
518 |
- state->mode = BAD; |
|
518 |
+ state->mode = ACAB_BAD; |
|
519 | 519 |
break; |
520 | 520 |
} |
521 | 521 |
#endif |
... | ... |
@@ -536,7 +536,7 @@ int flush; |
536 | 536 |
ret = inflate_table(CODES, state->lens, 19, &(state->next), |
537 | 537 |
&(state->lenbits), state->work); |
538 | 538 |
if (ret) { |
539 |
- state->mode = BAD; |
|
539 |
+ state->mode = ACAB_BAD; |
|
540 | 540 |
break; |
541 | 541 |
} |
542 | 542 |
Tracev((stderr, "inflate: code lengths ok\n")); |
... | ... |
@@ -559,7 +559,7 @@ int flush; |
559 | 559 |
NEEDBITS(this.bits + 2); |
560 | 560 |
DROPBITS(this.bits); |
561 | 561 |
if (state->have == 0) { |
562 |
- state->mode = BAD; |
|
562 |
+ state->mode = ACAB_BAD; |
|
563 | 563 |
break; |
564 | 564 |
} |
565 | 565 |
len = state->lens[state->have - 1]; |
... | ... |
@@ -581,7 +581,7 @@ int flush; |
581 | 581 |
DROPBITS(7); |
582 | 582 |
} |
583 | 583 |
if (state->have + copy > state->nlen + state->ndist) { |
584 |
- state->mode = BAD; |
|
584 |
+ state->mode = ACAB_BAD; |
|
585 | 585 |
break; |
586 | 586 |
} |
587 | 587 |
while (copy--) |
... | ... |
@@ -590,7 +590,7 @@ int flush; |
590 | 590 |
} |
591 | 591 |
|
592 | 592 |
/* handle error breaks in while */ |
593 |
- if (state->mode == BAD) break; |
|
593 |
+ if (state->mode == ACAB_BAD) break; |
|
594 | 594 |
|
595 | 595 |
/* build code tables */ |
596 | 596 |
state->next = state->codes; |
... | ... |
@@ -599,7 +599,7 @@ int flush; |
599 | 599 |
ret = inflate_table(LENS, state->lens, state->nlen, &(state->next), |
600 | 600 |
&(state->lenbits), state->work); |
601 | 601 |
if (ret) { |
602 |
- state->mode = BAD; |
|
602 |
+ state->mode = ACAB_BAD; |
|
603 | 603 |
break; |
604 | 604 |
} |
605 | 605 |
state->distcode = (code const FAR *)(state->next); |
... | ... |
@@ -607,7 +607,7 @@ int flush; |
607 | 607 |
ret = inflate_table(DISTS, state->lens + state->nlen, state->ndist, |
608 | 608 |
&(state->next), &(state->distbits), state->work); |
609 | 609 |
if (ret) { |
610 |
- state->mode = BAD; |
|
610 |
+ state->mode = ACAB_BAD; |
|
611 | 611 |
break; |
612 | 612 |
} |
613 | 613 |
Tracev((stderr, "inflate: codes ok\n")); |
... | ... |
@@ -650,7 +650,7 @@ int flush; |
650 | 650 |
break; |
651 | 651 |
} |
652 | 652 |
if (this.op & 64) { |
653 |
- state->mode = BAD; |
|
653 |
+ state->mode = ACAB_BAD; |
|
654 | 654 |
break; |
655 | 655 |
} |
656 | 656 |
state->extra = (unsigned)(this.op) & 31; |
... | ... |
@@ -681,7 +681,7 @@ int flush; |
681 | 681 |
} |
682 | 682 |
DROPBITS(this.bits); |
683 | 683 |
if (this.op & 64) { |
684 |
- state->mode = BAD; |
|
684 |
+ state->mode = ACAB_BAD; |
|
685 | 685 |
break; |
686 | 686 |
} |
687 | 687 |
Tracevv((stderr, "inflate: val %u\n", state->offset)); |
... | ... |
@@ -696,12 +696,12 @@ int flush; |
696 | 696 |
} |
697 | 697 |
#ifdef INFLATE_STRICT |
698 | 698 |
if (state->offset > state->dmax) { |
699 |
- state->mode = BAD; |
|
699 |
+ state->mode = ACAB_BAD; |
|
700 | 700 |
break; |
701 | 701 |
} |
702 | 702 |
#endif |
703 | 703 |
if (state->offset > state->whave + out - left) { |
704 |
- state->mode = BAD; |
|
704 |
+ state->mode = ACAB_BAD; |
|
705 | 705 |
break; |
706 | 706 |
} |
707 | 707 |
Tracevv((stderr, "inflate: distance %u\n", state->offset)); |
... | ... |
@@ -749,7 +749,7 @@ int flush; |
749 | 749 |
out = left; |
750 | 750 |
if (( |
751 | 751 |
REVERSE(hold)) != state->check) { |
752 |
- state->mode = BAD; |
|
752 |
+ state->mode = ACAB_BAD; |
|
753 | 753 |
break; |
754 | 754 |
} |
755 | 755 |
INITBITS(); |
... | ... |
@@ -759,7 +759,7 @@ int flush; |
759 | 759 |
case DONE: |
760 | 760 |
ret = Z_STREAM_END; |
761 | 761 |
goto inf_leave; |
762 |
- case BAD: |
|
762 |
+ case ACAB_BAD: |
|
763 | 763 |
ret = Z_DATA_ERROR; |
764 | 764 |
goto inf_leave; |
765 | 765 |
case MEM: |
... | ... |
@@ -125,7 +125,7 @@ typedef enum { |
125 | 125 |
CHECK, /* i: waiting for 32-bit check value */ |
126 | 126 |
LENGTH, /* i: waiting for 32-bit length (gzip) */ |
127 | 127 |
DONE, /* finished check, done -- remain here until reset */ |
128 |
- BAD, /* got a data error -- remain here until reset */ |
|
128 |
+ ACAB_BAD, /* got a data error -- remain here until reset */ |
|
129 | 129 |
MEM, /* got an inflate() memory error -- remain here until reset */ |
130 | 130 |
SYNC /* looking for synchronization bytes to restart inflate() */ |
131 | 131 |
} inflate_mode; |