zlib: update to 1.2.13
Remove "001-neon-implementation-of-adler32.patch" because upstreamed
deleted assembler code optimizations:
d0704a8201
Remove upstreamed patches:
- 006-fix-CVE-2022-37434.patch
- 007-fix-null-dereference-in-fix-CVE-2022-37434.patch
Refresh patches:
- 002-arm-specific-optimisations-for-inflate.patch
- 003-arm-specific-optimisations-for-inflate.patch
- 004-attach-sourcefiles-in-patch-002-to-buildsystem.patch
Switch to "https github.com" for downloading source files.
Release Announcements:
https://github.com/madler/zlib/releases/tag/v1.2.13
Signed-off-by: Nick Hainke <vincent@systemli.org>
This commit is contained in:
committed by
Hauke Mehrtens
parent
cec9cbef44
commit
de79a0a9e0
@@ -16,9 +16,6 @@ Change-Id: I59854eb25d2b1e43561c8a2afaf9175bf10cf674
|
||||
3 files changed, 335 insertions(+), 62 deletions(-)
|
||||
create mode 100644 contrib/arm/chunkcopy.h
|
||||
|
||||
diff --git a/contrib/arm/chunkcopy.h b/contrib/arm/chunkcopy.h
|
||||
new file mode 100644
|
||||
index 00000000..2d6fd6f9
|
||||
--- /dev/null
|
||||
+++ b/contrib/arm/chunkcopy.h
|
||||
@@ -0,0 +1,279 @@
|
||||
@@ -301,8 +298,6 @@ index 00000000..2d6fd6f9
|
||||
+#undef Z_RESTRICT
|
||||
+
|
||||
+#endif /* CHUNKCOPY_H */
|
||||
diff --git a/contrib/arm/inffast.c b/contrib/arm/inffast.c
|
||||
index 0dbd1dbc..f7f50071 100644
|
||||
--- a/contrib/arm/inffast.c
|
||||
+++ b/contrib/arm/inffast.c
|
||||
@@ -7,6 +7,7 @@
|
||||
@@ -313,7 +308,7 @@ index 0dbd1dbc..f7f50071 100644
|
||||
|
||||
#ifdef ASMINF
|
||||
# pragma message("Assembler code may have bugs -- use at your own risk")
|
||||
@@ -57,6 +58,7 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
||||
@@ -57,6 +58,7 @@ unsigned start; /* inflate()'s s
|
||||
unsigned char FAR *out; /* local strm->next_out */
|
||||
unsigned char FAR *beg; /* inflate()'s initial strm->next_out */
|
||||
unsigned char FAR *end; /* while out < end, enough space available */
|
||||
@@ -321,7 +316,7 @@ index 0dbd1dbc..f7f50071 100644
|
||||
#ifdef INFLATE_STRICT
|
||||
unsigned dmax; /* maximum distance from zlib header */
|
||||
#endif
|
||||
@@ -84,12 +86,13 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
||||
@@ -84,12 +86,13 @@ unsigned start; /* inflate()'s s
|
||||
out = strm->next_out;
|
||||
beg = out - (start - strm->avail_out);
|
||||
end = out + (strm->avail_out - 257);
|
||||
@@ -336,7 +331,7 @@ index 0dbd1dbc..f7f50071 100644
|
||||
window = state->window;
|
||||
hold = state->hold;
|
||||
bits = state->bits;
|
||||
@@ -197,70 +200,51 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
||||
@@ -197,70 +200,51 @@ unsigned start; /* inflate()'s s
|
||||
#endif
|
||||
}
|
||||
from = window;
|
||||
@@ -371,14 +366,8 @@ index 0dbd1dbc..f7f50071 100644
|
||||
- } while (--op);
|
||||
- from = out - dist; /* rest from output */
|
||||
- }
|
||||
+ out = chunkcopy_safe(out, from, op, limit);
|
||||
+ from = window; /* more from start of window */
|
||||
+ op = wnext;
|
||||
+ /* This (rare) case can create a situation where
|
||||
+ the first chunkcopy below must be checked.
|
||||
+ */
|
||||
}
|
||||
}
|
||||
- }
|
||||
- }
|
||||
- else { /* contiguous in window */
|
||||
- from += wnext - op;
|
||||
- if (op < len) { /* some from window */
|
||||
@@ -399,6 +388,14 @@ index 0dbd1dbc..f7f50071 100644
|
||||
- *out++ = *from++;
|
||||
- if (len > 1)
|
||||
- *out++ = *from++;
|
||||
+ out = chunkcopy_safe(out, from, op, limit);
|
||||
+ from = window; /* more from start of window */
|
||||
+ op = wnext;
|
||||
+ /* This (rare) case can create a situation where
|
||||
+ the first chunkcopy below must be checked.
|
||||
+ */
|
||||
+ }
|
||||
+ }
|
||||
+ if (op < len) { /* still need some from output */
|
||||
+ out = chunkcopy_safe(out, from, op, limit);
|
||||
+ len -= op;
|
||||
@@ -443,8 +440,6 @@ index 0dbd1dbc..f7f50071 100644
|
||||
}
|
||||
}
|
||||
else if ((op & 64) == 0) { /* 2nd level distance code */
|
||||
diff --git a/contrib/arm/inflate.c b/contrib/arm/inflate.c
|
||||
index ac333e8c..e40322c3 100644
|
||||
--- a/contrib/arm/inflate.c
|
||||
+++ b/contrib/arm/inflate.c
|
||||
@@ -84,6 +84,7 @@
|
||||
|
||||
Reference in New Issue
Block a user