backport r60116 - fix zipfile to work with archives having file
headers beyond the signed 2**31 byte boundary.
diff --git a/Lib/zipfile.py b/Lib/zipfile.py
index 3c7b431..ad25d5a 100644
--- a/Lib/zipfile.py
+++ b/Lib/zipfile.py
@@ -32,9 +32,9 @@
 # Other ZIP compression methods not supported
 
 # Here are some struct module formats for reading headers
-structEndArchive = "<4s4H2lH"     # 9 items, end of archive, 22 bytes
+structEndArchive = "<4s4H2LH"     # 9 items, end of archive, 22 bytes
 stringEndArchive = "PK\005\006"   # magic number for end of archive record
-structCentralDir = "<4s4B4HlLL5HLl"# 19 items, central directory, 46 bytes
+structCentralDir = "<4s4B4HlLL5HLL"# 19 items, central directory, 46 bytes
 stringCentralDir = "PK\001\002"   # magic number for central directory
 structFileHeader = "<4s2B4HlLL2H"  # 12 items, file header record, 30 bytes
 stringFileHeader = "PK\003\004"   # magic number for file header
diff --git a/Misc/NEWS b/Misc/NEWS
index 294ab87..984a692 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -53,6 +53,9 @@
 Library
 -------
 
+- #1189216: Fix the zipfile module to work on archives with headers
+  past the 2**31 byte boundary.
+
 - Issue #1336: fix a race condition in subprocess.Popen if the garbage
   collector kicked in at the wrong time that would cause the process
   to hang when the child wrote to stderr.