PKZIP Version 2.1 For VM
Patch Notes for Level 8
These notes provide information on known defects in PKZIP Version 2.1/8 for VM. The PTF's listed below should be included in Version 2.1 Level 8 as required.
Click on the relevant summary heading to jump to the patch.
Alternatively, a text file version of the patch can be downloaded directly from this web site. Click on the download link underneath the patch heading.
Last Updated: April 17th, 2002
When multiple VM machines executing PKZIP use the same Shared File System workarea, a file name conflict can occur.
PKZIP assumes that the work locations (which are the file mode used for the archive and the value specified on the TEMPLOCation parameter) will be unique for each virtual machine running PKZIP. Where these areas are shared with other virtual machines (as is possible using SFS), concurrent PKZIP processes can use the same file name with unpredictable results.
Having applied the previous fix, unexpected errors on the temporary archive files (file name ZIPnnnnn) are noted during concurrent Zip processes.
For example: ZIP841E Unexpected FSERASE error, 31 when processing file
The previous fix (001) used the Time of Day to ensure that concurrent Zip processes used different file names. In some circumstances, this was not sufficient. This fix will ensure that the temporary file does not exist. In this way, concurrent processes can not use the same file name.
Displaying detailed information using the DISPLAY DETAIL option of the parameter on PKZIP for VM 2.1/8, for archives produced by PKZIP for MVS 2.2 (or later), can fail with the message ZIP863E and/or produce results which include invalid information for the some of the attributes stored by PKZIP for MVS 2.2 (or later). This fix corrects the failure and ensures that most of the attributes are correctly reported.
When extracting files from an archive created by PKZIP for MVS 2.2 or later, using the (default) attributes in the archive, PKUNZIP can fail in a number of ways, including going into a loop after displaying the message:
ZIP886W Zero length record(s) found in
and not extracting the file correctly after displaying the message:
ZIP841E Unexpected FSOPEN error, 11, when processing
These problems are a result of VM not correctly interpreting the file attributes stored by PKZIP for MVS. These problems can be circumventing by specifying the OUTLRECL and OUTRECFM parameters so that PKZIP for VM does not attempt to use the values stored in the archive.
When using TEXTUPD to apply fixes to this level of PKZIP for VM, the utility indicates that it is at level 7, not level 8.
This patch updates the message to indicate that the TEXTUPD utility is at the same level as PKZIP for VM.
The manual is not clear about the use of the various NAME* Conversion routines that are available to convert names from and to the ZIP archive format. This patch provides a brief introduction to these routines that should clarify the material presented in the manual.
When compressing a SFS directory that is also being used as the location for the ZIP archive, the PKZIP process will select the ZIP archive for compression.
For example, assume that the directory T4POOL:USER.DIR1 was accessed as the E minidisk and already contained an archive called DIR1 ZIP. In this case the following command would select all the files in the DIR1 directory structure including the 'old' DIR1 ZIP and compress these into the new DIR1 ZIP.
PKZIP DIR1 ZIP E * * T4POOL:USER.DIR1 ( RECURSE UPDATE
PKZIP for VM includes code to prevent the selection of the existing archive. The existing code compares the file name, file type and file mode of the specified archive, with the file(s) selected. When a match occurs the file selected will not be processed. However, in the case described above, the existing ZIP archive is being selected with a directory and not a file mode, so it will not match the name specified as the archive on the ZIP command. It is not possible to specify a directory as the location for the ZIP archive, so this example will always result in the selection of the archive.
This patch changes the processing so that only the file name and file type are compared when checking whether or not the file selected is an archive.
This documentation patch describes how to update PKZIP to provide support for the euro.
To support the euro symbol, EBCDIC code pages on the mainframe have been changed so that the '¤' currency symbol (x'9F') would display the euro correctly. So the x'9F' will look like a euro if the display is using one of the code pages that supports it (e.g. 'US/Canada (euro)' page 1140) or it will look like the currency symbol using a non euro supporting page.
This is a compatibility patch. In PKZIP for MVS 2.5 and later, the format of the Volume attributes retained in the archive will be changed. This patch ensures that PKZIP for VM will correctly display both the new format and the current format volume attributes.
When the following three conditions are met during the compression of a file, the compressed file will fail the CRC check when it is TESTed or extracted:
When created on another platform, it is possible for a ZIP archive to indicate that the Local file information block will not contain information about the file in the ZIP archive (this information should be placed in a data descriptor after the file in the archive). However, the Local file information block is verified by ZIP processing - if this information is missing, PKUNZIP will report the following problem:
ZIP605W Inconsistent local header for file
This message may be followed by other messages which indicate that there is a problem with the data in the archive, for example
ZIP720E Invalid IPP table found in file.
This patch ensures that PKUNZIP will detect whether or not the Local file information block contains file information and so perform the appropriate checking.
This patch corrects a problem processing empty files and provides documentation for the maintenance messages.
This patch corrects a problem processing variable length archives.
This patch corrects a problem when a command does not complete successfully.
After an unsuccessful command, PKZIP and PKUNZIP may not completely close the input archive. In this circumstance, CMS will normally complete the close of the archive. However if the PKZIP or PKUNZIP command has been issued in a way that means CMS does not recognise the 'end of command processing', then the input archive will remain open. Subsequent commands issued against the archive will fail for this reason, for example, a subsequent PKUNZIP command will result in the following message:
The file identified will be the ZIP archive.
PKZIP and PKUNZIP processing is changed by this patch to close open archives,
even in error situations. As a result of this patch, it is possible that additional messages may result, when
the close does not complete correctly because of other errors. These additional close messages will only be
seen when there is a preceding error in the processing.
Click here
to download this patch in a text file Error Description When multiple VM machines executing PKZIP use the same Shared File System workarea, a file name
conflict can occur. PKZIP assumes that the work locations (which are the file mode used for the archive and the value
specified on the TEMPLOCation parameter) will be unique for each virtual machine running PKZIP. Where these areas are shared with other
virtual machines (as is possible using SFS), concurrent PKZIP processes can use the same file name with unpredictable results. Corrective Action For users with level 8, the following patch should be applied using the Maintenance Instructions
in the Reference Manual. Once the patch has been applied, the PKZIP MODULE must be rebuilt.
* Fix for duplicated file names Issued: September 1997 Modules Affected PKZIP Note This fix works by altering the name used for the work files, based on the current time.
PATCHES:
P9709--L08-001
* Note that the '*' should be in column 1
* The '*' indicates a comment
UPDATE TEMPFILE TMPCREAT
UPDATE TEMPFILE TMPCREAT
VER 000001C4 9240B00C
REP 000001C4 47F0C5C2
VER 000005C2 00000000
REP 000005C2 5870C3F8
VER 000005C6 0000
REP 000005C6 1277
VER 000005C8 00000000
REP 000005C8 4770C5E2
VER 000005CC 00000000
REP 000005CC B205D0A8
VER 000005D0 0000
REP 000005D0 1777
VER 000005D2 00000000
REP 000005D2 BF7FD0AA
VER 000005D6 00000000
REP 000005D6 89700007
VER 000005DA 00000000
REP 000005DA 88700011
VER 000005DE 00000000
REP 000005DE 5070C3F8
VER 000005E2 00000000
REP 000005E2 9240B00C
VER 000005E6 00000000
REP 000005E6 47F0C1C8
ENDUPD
This fix does not guarantee that overlap in file names will never occur. Concurrent PKZIP processing that starts within 1/100 of a second may still obtain a duplicate name - in addition names may be shared with processing that starts approximately 30 minutes later. However in normal operation, the likelihood of duplicated names is very small.
This fix should only be applied where the situation described above is a possibility; i.e. several PKZIP processes use the same SFS workarea at the same time. If this is not the situation, then this fix should not be applied. If this is the situation, then the following fix (002) should also be applied.
Summary of application instructions
Use the Typical Application Instructions described at the beginning of this page to apply this patch. Note that the TEMPFILE TEXT file is updated and the PKZIP module must be rebuilt.
To apply this patch, read the Typical Application Instructions. Note that the TEMPFILE TEXT file is updated and the PKZIP module must be rebuilt.
Click here to download this patch in a text file
Error Description
Having applied the previous fix, unexpected errors on the temporary archive files (file name ZIPnnnnn) are noted during concurrent Zip processes.
For example: ZIP841E Unexpected FSERASE error, 31 when processing file
The previous fix (001) used the Time of Day to ensure that concurrent Zip processes used different file names. In some circumstnaces, this was not sufficient. This fix will ensure that the temporary file does not exist. In this way, concurrent processes can not use the same file name.
Corrective Action
For users with level 8, the following patch should be applied using the Maintenance instructions in the Reference manual.
* Fix for archive/temporary
file errors in shared SFS
* Note that the * should be in column 1
* The * indicates a comment
UPDATE TEMPFILE TMPCREAT
VER 00000496 92E71027
REP 00000496 92D51027
VER 000004AA 4780C4F8
REP 000004AA 47F0C5EA
VER 000005EA 00000000
REP 000005EA 4780C4F8
VER 000005EE 00000000
REP 000005EE 49F0C5FA
VER 000005F2 00000000
REP 000005F2 4780C3A6
VER 000005F6 00000000
REP 000005F6 47F0C4AE
VER 000005FA 0000
REP 000005FA 0023
ENDUPD
Issued
September 1997
Modules Affected
PKZIP
Note
This fix works by changing the name used for the work files, when the temporary name defined has already been used. The name is incremented until an unused name has been found.
This fix should only be applied where the situation described above is a possibility, i.e. several PKZIP processes use the same SFS workarea at the same time. If this is not the situation, then this fix should not be applied. If this is the situation, then the previous fix (001) should also be applied.
Summary of application instructions
To apply this patch, read the Typical Application Instructions. Note that the TEMPFILE TEXT file is updated and the PKZIP module must be rebuilt.
Important Note
With this fix applied, PKZIP will never reuse a temporary file, if a file of the same name already exists.
If an execution of PKZIP fails in some way, the temporary files may not be deleted. In this case, the instructions given in the reference manual in the section Recovering from an unexpected termination of PKZIP should be followed. However, be careful when removing the work files to ensure that these are not in use by a separate PKZIP process.
It may be advisable to schedule a deletion of all ZIP work files at a time when no PKZIP processing is using the shared SFS area.
Click here to download this patch in a text file
Error Description
Displaying detailed information using the DISPLAY DETAIL option of the parameter on PKZIP for VM 2.1/8, for archives produced by PKZIP for MVS 2.2 (or later), can fail with the message ZIP863E and/or produce results which include invalid information for the some of the attributes stored by PKZIP for MVS 2.2 (or later). This fix corrects the failure and ensures that most of the attributes are correctly reported.
Corrective Action
For users with level 8, the following patch should be applied using the Maintenance instructions in the Reference manual.
* Fix for attribute
compatibility with PKZIP for MVS 2.2
* Note that the * should be in column 1
* The * indicates a comment
UPDATE LISTZIP PLNGFATT
VER 000003A4 C8C5E7D3
VER 000003A8 00000082
REP 000003A4 C8C5E7C1
REP 000003A8 0000003E
ENDUPD
UPDATE LISTZIP PFDTHEXA
VER 000000B2 5AA0C158
VER 000000DA 00000000
REP 000000B2 47F0C0DA
REP 000000DA 5AA0C158
REP 000000DE 41880001
REP 000000E2 47F0C0B6
ENDUPD
UPDATE LISTZIP PFDTHEXL
VER 000000B8 5AA0C160
VER 000000E2 00000000
REP 000000B8 47F0C0E2
REP 000000E2 5AA0C160
REP 000000E6 41880001
REP 000000EA 47F0C0BC
ENDUPD
Issued
October 1997
Modules Affected
PKZIP and PKUNZIP
Note
This fix does not enable PKZIP for VM to display all the MVS specific attributes stored by PKZIP for MVS 2.2. For example, a file with record format U will indicate that it is both record format Fixed and Variable.
Summary of application instructions
To apply this patch, read the Typical Application Instructions. Note that the LISTFILE TEXT file is updated and both the PKZIP and PKUNZIP modules must be rebuilt.
Click here to download this patch in a text file
Error Description
When extracting files from an archive created by PKZIP for MVS 2.2 or later, using the (default) attributes in the archive, PKUNZIP can fail in a number of ways, including going into a loop after displaying the message:
ZIP886W Zero length record(s) found in
and not extracting the file correctly after displaying the message:
ZIP841E Unexpected FSOPEN error, 11, when processing
These problems are a result of VM not correctly interpreting the file attributes stored by PKZIP for MVS.
These problems can be circumvented by specifying the OUTLRECL and OUTRECFM parameters so that PKZIP for VM does not attempt to use the values stored in the archive.
Corrective Action
For users with level 8, the following patch should be applied using the Maintenance instructions in the Reference manual.
* Fix for attribute
compatibility with PKZIP for MVS 2.2
* Note that the * should be in column 1
* The * indicates a comment
UPDATE ZFHWSF00 ZFHXOPEN
VER 000004CA 9540B1C0
REP 000004CA 9140B1C0
VER 000004CE 4770C4D6
REP 000004CE 4710C4DA
VER 000004D2 92E5B1C0
REP 000004D2 92C6B1C0
VER 000004D6 9580B1C0
REP 000004D6 47F0C4E2
VER 000004DA 4770C4E2
REP 000004DA 92E5B1C0
VER 000004DE 92C6B1C0
REP 000004DE 47F0C4E2
ENDUPD
UPDATE ZFHWCM00 ZFHWOPEN
VER 000004AE 9540B1C0
REP 000004AE 9140B1C0
VER 000004B2 4770C4BA
REP 000004B2 4710C4BE
VER 000004B6 92E5B1C0
REP 000004B6 92C6B1C0
VER 000004BA 9580B1C0
REP 000004BA 47F0C4C6
VER 000004BE 4770C4C6
REP 000004BE 92E5B1C0
VER 000004C2 92C6B1C0
REP 000004C2 47F0C4C6
ENDUPD
UPDATE ZFSUVM00 FILLOCB
VER 00000286 47F0C2B4
REP 00000286 47F0C422
VER 00000290 9580D180
REP 00000290 9140D180
VER 00000294 4780C29E
REP 00000294 47E0C29E
VER 00000422 00000000
REP 00000422 4810D17C
VER 00000426 0000
REP 00000426 1211
VER 00000428 00000000
REP 00000428 4770C2B4
VER 0000042C 00000000
REP 0000042C 47F0C28A
ENDUPD
Issued
October 1997
Modules Affected
PKUNZIP
Note
This fix will enable PKZIP for VM to interpret the PKZIP for MVS stored record format as either fixed or variable, and will also extract the record length from the archive. Note that if this record length is 0 (as is common for example, with record format U files), PKZIP for VM will use the default record length (as documented in the Reference Manual).
Summary of application instructions
To apply this patch, read the Typical Application Instructions. Note that the ZFHWSF00 TEXT, ZFHWCM00 TEXT and ZFSUVM00 TEXT files are updated and the PKZIPUNZIP module must be rebuilt.
Click here to download this patch in a text file
Error Description
When using TEXTUPD to apply fixes to this level of PKZIP for VM, the utility indicates that it is at level 7, not level 8.
This patch updates the message to indicate that the TEXTUPD utility is at the same level as PKZIP for VM.
Corrective Action
For users with level 8, the following patch should be applied using the Maintenance instructions in the Reference manual.
* Fix for TEXTUPD message
* Note that the '*' should be in column 1
* The '*' indicates a comment
UPDATE TEXTUPD TEXTUPD
VER 00000E99 859340F7
REP 00000E99 859340F8
ENDUPD
Issued
June 1998
Modules Affected
TEXTUPD
Summary of application instructions
To apply this patch, read the Typical Application Instructions. Note that the TEMPFILE TEXT file is updated and the TEXTUPD module must be rebuilt.
Name Conversion
The manual is not clear about the use of the various NAME* Conversion routines that are available to convert names from and to the ZIP archive format. The following provides a brief introduction to these routines that should clarify the material presented in the manual.
The typical naming standards used for files in the ZIP archive and for CMS files are significantly different, with no universally acceptable conversion approach being possible.
Rather than attempt to prescribe a conversion standard, PKZIP for VM:
The fact that there are two file names associated with a file in a ZIP archive can be hidden from users by the setting of the DISPLAY parameter. For example, if the Configuration file has "DISPLAY VMIDS", then the user would typically see the CMS file name when viewing the archive and may be unaware that there is an additional name that would be used if the archive was shipped to another platform.
To make the creation of these exits easier, the product includes a number of sample Rexx routines which each perform name conversion in may be used in specific environments.
For further information on this topic, read the Name Processing Appendix of the User Guide.
Click here to download this patch in a text file
Error Description
When compressing a SFS directory that is also being used as the location for the ZIP archive, the PKZIP process will select the ZIP archive for compression.
For example, assume that the directory T4POOL:USER.DIR1 was accessed as the E minidisk and already contained an archive called DIR1 ZIP. In this case the following command would select all the files in the DIR1 directory structure including the 'old' DIR1 ZIP and compress these into the new DIR1 ZIP.
PKZIP DIR1 ZIP E * * T4POOL:USER.DIR1 ( RECURSE UPDATE
PKZIP for VM includes code to prevent the selection of the existing archive. The existing code compares the file name, file type and file mode of the specified archive, with the file(s) selected. When a match occurs the file selected will not be processed. However, in the case described above, the existing ZIP archive is being selected with a directory and not a file mode, so it will not match the name specified as the archive on the ZIP command. It is not possible to specify a directory as the location for the ZIP archive, so this example will always result in the selection of the archive.
This patch changes the processing so that only the file name and file type are compared when checking whether or not the file selected is an archive.
Corrective Action
For users with level 8, the following patch should be applied using the Maintenance instructions in the Reference manual.
* Fix for Archive file selectionIssued
January 1999
PKZIP
Summary of application instructions
To apply this patch, read the Typical Application Instructions. Note that the ZFSZVM00 TEXT file is updated and the PKZIP module must be rebuilt.
Note
With this patch applied, any file that has the same file name and file type as specified for the ZIP archive will be ignored, regardless of the directory or minidisk that the file is selected from. To ensure that this does not unexpectedly miss files that should be included, it is recommended that users use a different file name and/or file type for ZIP archives, to that used by any existing files.
Error Description
This documentation patch describes how to update PKZIP to provide support for the euro.
To support the euro symbol, EBCDIC code pages on the mainframe have been changed so that the '¤' currency symbol (x'9F') would display the euro correctly. So the x'9F' will look like a euro if the display is using one of the code pages that supports it (e.g. 'US/Canada (euro)' page 1140) or it will look like the currency symbol using a non euro supporting page.
On other platforms (notably the PC) new code pages have been created with the euro character using a number of code points including x'80', X'88' and X'A1' (depending on the code page).
As the character to be used for the euro depends on the target platform and the code page that is in use on that platform, it is not possible to provide a generic translation table that supports the euro. However, in most cases for PC based files, the euro will be processed on a system that uses x'80' as the code point for the euro symbol.
To provide support for this conversion, PKZIP translation tables must be updated. As a sample, the translation tables supplied below could be used in place of the USASCII and UKASCII tables supplied with PKZIP for VM to provide support for the euro. Instructions for using the source given below to create new tables are given in the User Guide.
Note: The euro symbol is '' (which will display as a 'box' if your system does not support the euro). As a picture, the euro looks like the following:
![]()
|
||||||||||||||||||
UKASCIIE CSECT
DC XL1'00',XL1'01',XL1'02',XL1'03' /*00-0F*/
DC XL1'DC',XL1'09',XL1'C3',XL1'7F'
DC XL1'CA',XL1'B2',XL1'D5',XL1'0B'
DC XL1'0C',XL1'0D',XL1'0E',XL1'0F'
DC XL1'10',XL1'11',XL1'12',XL1'13' /*10-1F*/
DC XL1'DB',XL1'DA',XL1'08',XL1'C1'
DC XL1'18',XL1'19',XL1'C8',XL1'F2'
DC XL1'1C',XL1'1D',XL1'1E',XL1'1F'
DC XL1'C4',XL1'B3',XL1'C0',XL1'D9' /*20-2F*/
DC XL1'BF',XL1'0A',XL1'17',XL1'1B'
DC XL1'B4',XL1'C2',XL1'C5',XL1'B0'
DC XL1'B1',XL1'05',XL1'06',XL1'07'
DC XL1'CD',XL1'BA',XL1'16',XL1'BC' /*30-3F*/
DC XL1'BB',XL1'C9',XL1'CC',XL1'04'
DC XL1'B9',XL1'CB',XL1'CE',XL1'DF'
DC XL1'14',XL1'15',XL1'FE',XL1'1A'
DC XL1'20',XL1'FF',XL1'83',XL1'84' /*40-4F*/
DC XL1'85',XL1'A0',XL1'C6',XL1'86'
DC XL1'87',XL1'A4',XL1'24',XL1'2E'
DC XL1'3C',XL1'28',XL1'2B',XL1'7C'
DC XL1'26',XL1'82',XL1'88',XL1'89' /*50-5F*/
DC XL1'8A',XL1'A1',XL1'8C',XL1'8B'
DC XL1'8D',XL1'E1',XL1'21',XL1'9C'
DC XL1'2A',XL1'29',XL1'3B',XL1'AA'
DC XL1'2D',XL1'2F',XL1'B6',XL1'8E' /*60-6F*/
DC XL1'B7',XL1'B5',XL1'C7',XL1'8F'
DC XL1'CF',XL1'A5',XL1'DD',XL1'2C'
DC XL1'25',XL1'5F',XL1'3E',XL1'3F'
DC XL1'9B',XL1'90',XL1'D2',XL1'D3' /*70-7F*/
DC XL1'D4',XL1'D6',XL1'D7',XL1'D8'
DC XL1'DE',XL1'60',XL1'3A',XL1'23'
DC XL1'40',XL1'27',XL1'3D',XL1'22'
DC XL1'9D',XL1'61',XL1'62',XL1'63' /*80-8F*/
DC XL1'64',XL1'65',XL1'66',XL1'67'
DC XL1'68',XL1'69',XL1'AE',XL1'AF'
DC XL1'D0',XL1'EC',XL1'E7',XL1'F1'
DC XL1'F8',XL1'6A',XL1'6B',XL1'6C' /*90-9F*/
DC XL1'6D',XL1'6E',XL1'6F',XL1'70'
DC XL1'71',XL1'72',XL1'A6',XL1'A7'
DC XL1'91',XL1'F7',XL1'92',XL1'80'
DC XL1'E6',XL1'EE',XL1'73',XL1'74' /*A0-AF*/
DC XL1'75',XL1'76',XL1'77',XL1'78'
DC XL1'79',XL1'7A',XL1'AD',XL1'A8'
DC XL1'D1',XL1'ED',XL1'E8',XL1'A9'
DC XL1'BD',XL1'5B',XL1'BE',XL1'FA' /*B0-BF*/
DC XL1'B8',XL1'F5',XL1'F4',XL1'AC'
DC XL1'AB',XL1'F3',XL1'5E',XL1'5D'
DC XL1'7E',XL1'F9',XL1'EF',XL1'9E'
DC XL1'7B',XL1'41',XL1'42',XL1'43' /*C0-CF*/
DC XL1'44',XL1'45',XL1'46',XL1'47'
DC XL1'48',XL1'49',XL1'F0',XL1'93'
DC XL1'94',XL1'95',XL1'A2',XL1'E4'
DC XL1'7D',XL1'4A',XL1'4B',XL1'4C' /*D0-DF*/
DC XL1'4D',XL1'4E',XL1'4F',XL1'50'
DC XL1'51',XL1'52',XL1'FB',XL1'96'
DC XL1'81',XL1'97',XL1'A3',XL1'98'
DC XL1'5C',XL1'F6',XL1'53',XL1'54' /*E0-EF*/
DC XL1'55',XL1'56',XL1'57',XL1'58'
DC XL1'59',XL1'5A',XL1'FD',XL1'E2'
DC XL1'99',XL1'E3',XL1'E0',XL1'E5'
DC XL1'30',XL1'31',XL1'32',XL1'33' /*F0-FF*/
DC XL1'34',XL1'35',XL1'36',XL1'37'
DC XL1'38',XL1'39',XL1'FC',XL1'EA'
DC XL1'9A',XL1'EB',XL1'E9',XL1'9F'
|
ASCII to EBCDIC translation. Note that this must be an exact match to the previous table, so that a translation from ASCII to EBCDIC and back will produce exactly the same file. This area MUST commence precisely 256 bytes after the previous table commences. |
EBCDIC
DC XL1'00',XL1'01',XL1'02',XL1'03' /*00-0F*/
DC XL1'37',XL1'2D',XL1'2E',XL1'2F'
DC XL1'16',XL1'05',XL1'25',XL1'0B'
DC XL1'0C',XL1'0D',XL1'0E',XL1'0F'
DC XL1'10',XL1'11',XL1'12',XL1'13' /*10-1F*/
DC XL1'3C',XL1'3D',XL1'32',XL1'26'
DC XL1'18',XL1'19',XL1'3F',XL1'27'
DC XL1'1C',XL1'1D',XL1'1E',XL1'1F'
DC XL1'40',XL1'5A',XL1'7F',XL1'7B' /*20-2F*/
DC XL1'4A',XL1'6C',XL1'50',XL1'7D'
DC XL1'4D',XL1'5D',XL1'5C',XL1'4E'
DC XL1'6B',XL1'60',XL1'4B',XL1'61'
DC XL1'F0',XL1'F1',XL1'F2',XL1'F3' /*30-3F*/
DC XL1'F4',XL1'F5',XL1'F6',XL1'F7'
DC XL1'F8',XL1'F9',XL1'7A',XL1'5E'
DC XL1'4C',XL1'7E',XL1'6E',XL1'6F'
DC XL1'7C',XL1'C1',XL1'C2',XL1'C3' /*40-4F*/
DC XL1'C4',XL1'C5',XL1'C6',XL1'C7'
DC XL1'C8',XL1'C9',XL1'D1',XL1'D2'
DC XL1'D3',XL1'D4',XL1'D5',XL1'D6'
DC XL1'D7',XL1'D8',XL1'D9',XL1'E2' /*50-5F*/
DC XL1'E3',XL1'E4',XL1'E5',XL1'E6'
DC XL1'E7',XL1'E8',XL1'E9',XL1'B1'
DC XL1'E0',XL1'BB',XL1'BA',XL1'6D'
DC XL1'79',XL1'81',XL1'82',XL1'83' /*60-6F*/
DC XL1'84',XL1'85',XL1'86',XL1'87'
DC XL1'88',XL1'89',XL1'91',XL1'92'
DC XL1'93',XL1'94',XL1'95',XL1'96'
DC XL1'97',XL1'98',XL1'99',XL1'A2' /*70-7F*/
DC XL1'A3',XL1'A4',XL1'A5',XL1'A6'
DC XL1'A7',XL1'A8',XL1'A9',XL1'C0'
DC XL1'4F',XL1'D0',XL1'BC',XL1'07'
DC XL1'9F',XL1'DC',XL1'51',XL1'42' /*80-8F*/
DC XL1'43',XL1'44',XL1'47',XL1'48'
DC XL1'52',XL1'53',XL1'54',XL1'57'
DC XL1'56',XL1'58',XL1'63',XL1'67'
DC XL1'71',XL1'9C',XL1'9E',XL1'CB' /*90-9F*/
DC XL1'CC',XL1'CD',XL1'DB',XL1'DD'
DC XL1'DF',XL1'EC',XL1'FC',XL1'70'
DC XL1'5B',XL1'80',XL1'BF',XL1'FF'
DC XL1'45',XL1'55',XL1'CE',XL1'DE' /*A0-AF*/
DC XL1'49',XL1'69',XL1'9A',XL1'9B'
DC XL1'AB',XL1'AF',XL1'5F',XL1'B8'
DC XL1'B7',XL1'AA',XL1'8A',XL1'8B'
DC XL1'2B',XL1'2C',XL1'09',XL1'21' /*B0-BF*/
DC XL1'28',XL1'65',XL1'62',XL1'64'
DC XL1'B4',XL1'38',XL1'31',XL1'34'
DC XL1'33',XL1'B0',XL1'B2',XL1'24'
DC XL1'22',XL1'17',XL1'29',XL1'06' /*C0-CF*/
DC XL1'20',XL1'2A',XL1'46',XL1'66'
DC XL1'1A',XL1'35',XL1'08',XL1'39'
DC XL1'36',XL1'30',XL1'3A',XL1'68'
DC XL1'8C',XL1'AC',XL1'72',XL1'73' /*D0-DF*/
DC XL1'74',XL1'0A',XL1'75',XL1'76'
DC XL1'77',XL1'23',XL1'15',XL1'14'
DC XL1'04',XL1'6A',XL1'78',XL1'3B'
DC XL1'EE',XL1'59',XL1'EB',XL1'ED' /*E0-EF*/
DC XL1'CF',XL1'EF',XL1'A0',XL1'8E'
DC XL1'AE',XL1'FE',XL1'FB',XL1'FD'
DC XL1'8D',XL1'AD',XL1'A1',XL1'BE'
DC XL1'CA',XL1'8F',XL1'1B',XL1'B9' /*F0-FF*/
DC XL1'B6',XL1'B5',XL1'E1',XL1'9D'
DC XL1'90',XL1'BD',XL1'B3',XL1'DA'
DC XL1'FA',XL1'EA',XL1'3E',XL1'41'
END
|
USASCII CSECT
DC XL1'00',XL1'01',XL1'02',XL1'03' /*00-0F*/
DC XL1'EC',XL1'09',XL1'CA',XL1'7F'
DC XL1'E2',XL1'D2',XL1'D3',XL1'0B'
DC XL1'0C',XL1'0D',XL1'0E',XL1'A9'
DC XL1'10',XL1'11',XL1'12',XL1'13' /*10-1F*/
DC XL1'EF',XL1'C5',XL1'08',XL1'CB'
DC XL1'18',XL1'19',XL1'DC',XL1'D8'
DC XL1'1C',XL1'1D',XL1'1E',XL1'1F'
DC XL1'B7',XL1'B8',XL1'B9',XL1'BB' /*20-2F*/
DC XL1'C4',XL1'0A',XL1'17',XL1'1B'
DC XL1'CC',XL1'CD',XL1'CF',XL1'D0'
DC XL1'D1',XL1'05',XL1'06',XL1'07'
DC XL1'D9',XL1'DA',XL1'16',XL1'DD' /*30-3F*/
DC XL1'DE',XL1'DF',XL1'E0',XL1'04'
DC XL1'E3',XL1'E5',XL1'E9',XL1'EB'
DC XL1'B0',XL1'B1',XL1'9E',XL1'1A'
DC XL1'20',XL1'C9',XL1'83',XL1'84' /*40-4F*/
DC XL1'85',XL1'A0',XL1'F2',XL1'86'
DC XL1'87',XL1'A4',XL1'9B',XL1'2E'
DC XL1'3C',XL1'28',XL1'2B',XL1'B3'
DC XL1'26',XL1'82',XL1'88',XL1'89' /*50-5F*/
DC XL1'8A',XL1'A1',XL1'8C',XL1'8B'
DC XL1'8D',XL1'E1',XL1'21',XL1'24'
DC XL1'2A',XL1'29',XL1'3B',XL1'AA'
DC XL1'2D',XL1'2F',XL1'B2',XL1'8E' /*60-6F*/
DC XL1'B4',XL1'B5',XL1'B6',XL1'8F'
DC XL1'0F',XL1'A5',XL1'7C',XL1'2C'
DC XL1'25',XL1'5F',XL1'3E',XL1'3F'
DC XL1'BA',XL1'90',XL1'BC',XL1'BD' /*70-7F*/
DC XL1'BE',XL1'F3',XL1'C0',XL1'C1'
DC XL1'C2',XL1'60',XL1'3A',XL1'23'
DC XL1'40',XL1'27',XL1'3D',XL1'22'
DC XL1'C3',XL1'61',XL1'62',XL1'63' /*80-8F*/
DC XL1'64',XL1'65',XL1'66',XL1'67'
DC XL1'68',XL1'69',XL1'AE',XL1'AF'
DC XL1'C6',XL1'C7',XL1'C8',XL1'F1'
DC XL1'F8',XL1'6A',XL1'6B',XL1'6C' /*90-9F*/
DC XL1'6D',XL1'6E',XL1'6F',XL1'70'
DC XL1'71',XL1'72',XL1'A6',XL1'A7'
DC XL1'91',XL1'CE',XL1'92',XL1'80'
DC XL1'E6',XL1'7E',XL1'73',XL1'74' /*A0-AF*/
DC XL1'75',XL1'76',XL1'77',XL1'78'
DC XL1'79',XL1'7A',XL1'AD',XL1'A8'
DC XL1'D4',XL1'D5',XL1'D6',XL1'D7'
DC XL1'5E',XL1'9C',XL1'9D',XL1'FA' /*B0-BF*/
DC XL1'9F',XL1'15',XL1'14',XL1'AC'
DC XL1'AB',XL1'FC',XL1'5B',XL1'5D'
DC XL1'E4',XL1'FE',XL1'BF',XL1'E7'
DC XL1'7B',XL1'41',XL1'42',XL1'43' /*C0-CF*/
DC XL1'44',XL1'45',XL1'46',XL1'47'
DC XL1'48',XL1'49',XL1'E8',XL1'93'
DC XL1'94',XL1'95',XL1'A2',XL1'ED'
DC XL1'7D',XL1'4A',XL1'4B',XL1'4C' /*D0-DF*/
DC XL1'4D',XL1'4E',XL1'4F',XL1'50'
DC XL1'51',XL1'52',XL1'EE',XL1'96'
DC XL1'81',XL1'97',XL1'A3',XL1'98'
DC XL1'5C',XL1'F0',XL1'53',XL1'54' /*E0-EF*/
DC XL1'55',XL1'56',XL1'57',XL1'58'
DC XL1'59',XL1'5A',XL1'FD',XL1'F5'
DC XL1'99',XL1'F7',XL1'F6',XL1'F9'
DC XL1'30',XL1'31',XL1'32',XL1'33' /*F0-FF*/
DC XL1'34',XL1'35',XL1'36',XL1'37'
DC XL1'38',XL1'39',XL1'DB',XL1'FB'
DC XL1'9A',XL1'F4',XL1'EA',XL1'FF'
|
ASCII to EBCDIC translation. Note that this must be an exact match to the previous table, so that a translation from ASCII to EBCDIC and back will produce exactly the same file. This area MUST commence precisely 256 bytes after the previous table commences. |
EBCDIC
DC XL1'00',XL1'01',XL1'02',XL1'03' /*00-0F*/
DC XL1'37',XL1'2D',XL1'2E',XL1'2F'
DC XL1'16',XL1'05',XL1'25',XL1'0B'
DC XL1'0C',XL1'0D',XL1'0E',XL1'68'
DC XL1'10',XL1'11',XL1'12',XL1'13' /*10-1F*/
DC XL1'B6',XL1'B5',XL1'32',XL1'26'
DC XL1'18',XL1'19',XL1'3F',XL1'27'
DC XL1'1C',XL1'1D',XL1'1E',XL1'1F'
DC XL1'40',XL1'5A',XL1'7F',XL1'7B' /*20-2F*/
DC XL1'5B',XL1'6C',XL1'50',XL1'7D'
DC XL1'4D',XL1'5D',XL1'5C',XL1'4E'
DC XL1'6B',XL1'60',XL1'4B',XL1'61'
DC XL1'F0',XL1'F1',XL1'F2',XL1'F3' /*30-3F*/
DC XL1'F4',XL1'F5',XL1'F6',XL1'F7'
DC XL1'F8',XL1'F9',XL1'7A',XL1'5E'
DC XL1'4C',XL1'7E',XL1'6E',XL1'6F'
DC XL1'7C',XL1'C1',XL1'C2',XL1'C3' /*40-4F*/
DC XL1'C4',XL1'C5',XL1'C6',XL1'C7'
DC XL1'C8',XL1'C9',XL1'D1',XL1'D2'
DC XL1'D3',XL1'D4',XL1'D5',XL1'D6'
DC XL1'D7',XL1'D8',XL1'D9',XL1'E2' /*50-5F*/
DC XL1'E3',XL1'E4',XL1'E5',XL1'E6'
DC XL1'E7',XL1'E8',XL1'E9',XL1'BA'
DC XL1'E0',XL1'BB',XL1'B0',XL1'6D'
DC XL1'79',XL1'81',XL1'82',XL1'83' /*60-6F*/
DC XL1'84',XL1'85',XL1'86',XL1'87'
DC XL1'88',XL1'89',XL1'91',XL1'92'
DC XL1'93',XL1'94',XL1'95',XL1'96'
DC XL1'97',XL1'98',XL1'99',XL1'A2' /*70-7F*/
DC XL1'A3',XL1'A4',XL1'A5',XL1'A6'
DC XL1'A7',XL1'A8',XL1'A9',XL1'C0'
DC XL1'6A',XL1'D0',XL1'A1',XL1'07'
DC XL1'9F',XL1'DC',XL1'51',XL1'42' /*80-8F*/
DC XL1'43',XL1'44',XL1'47',XL1'48'
DC XL1'52',XL1'53',XL1'54',XL1'57'
DC XL1'56',XL1'58',XL1'63',XL1'67'
DC XL1'71',XL1'9C',XL1'9E',XL1'CB' /*90-9F*/
DC XL1'CC',XL1'CD',XL1'DB',XL1'DD'
DC XL1'DF',XL1'EC',XL1'FC',XL1'4A'
DC XL1'B1',XL1'B2',XL1'3E',XL1'B4'
DC XL1'45',XL1'55',XL1'CE',XL1'DE' /*A0-AF*/
DC XL1'49',XL1'69',XL1'9A',XL1'9B'
DC XL1'AB',XL1'0F',XL1'5F',XL1'B8'
DC XL1'B7',XL1'AA',XL1'8A',XL1'8B'
DC XL1'3C',XL1'3D',XL1'62',XL1'4F' /*B0-BF*/
DC XL1'64',XL1'65',XL1'66',XL1'20'
DC XL1'21',XL1'22',XL1'70',XL1'23'
DC XL1'72',XL1'73',XL1'74',XL1'BE'
DC XL1'76',XL1'77',XL1'78',XL1'80' /*C0-CF*/
DC XL1'24',XL1'15',XL1'8C',XL1'8D'
DC XL1'8E',XL1'41',XL1'06',XL1'17'
DC XL1'28',XL1'29',XL1'9D',XL1'2A'
DC XL1'2B',XL1'2C',XL1'09',XL1'0A' /*D0-DF*/
DC XL1'AC',XL1'AD',XL1'AE',XL1'AF'
DC XL1'1B',XL1'30',XL1'31',XL1'FA'
DC XL1'1A',XL1'33',XL1'34',XL1'35'
DC XL1'36',XL1'59',XL1'08',XL1'38' /*E0-EF*/
DC XL1'BC',XL1'39',XL1'A0',XL1'BF'
DC XL1'CA',XL1'3A',XL1'FE',XL1'3B'
DC XL1'04',XL1'CF',XL1'DA',XL1'14'
DC XL1'E1',XL1'8F',XL1'46',XL1'75' /*F0-FF*/
DC XL1'FD',XL1'EB',XL1'EE',XL1'ED'
DC XL1'90',XL1'EF',XL1'B3',XL1'FB'
DC XL1'B9',XL1'EA',XL1'BD',XL1'FF'
END
Date Issued
June 1999
Click here to download this patch in a text file
Error Description
This is a compatibility patch. In PKZIP for MVS 2.5 and later, the format of the Volume attributes retained in the archive will be changed. This patch ensures that PKZIP for VM will correctly display both the new format and the current format volume attributes.
Corrective Action
For users with level 8, the following patch should be applied using the Maintenance instructions in the Reference manual.
* Note that the '*' should be in column 1
* The '*' indicates a comment
* Fix for PKZIP ZIP for MVS 2.5 compatibility
UPDATE LISTZIP PLNGFATT
VER 00000510 0000002C
REP 00000510 00000006
VER 000005A0 0000002C
REP 000005A0 00000006
ENDUPD
Issued
June 1999
Modules Affected
PKUNZIP, PKZIP
Summary of application instructions
To apply this patch, read the Typical Application Instructions. Note that the LISTZIP TEXT file is updated and the PKUNZIP and PKZIP modules must be rebuilt.
Click here to download this patch in a text file
When the following three conditions are met during the compression of a file, the compressed file will fail the CRC check when it is TESTed or extracted:
This is most commonly seen with very small files. When extracting such a file the user will see:
ZIP607E File ... fails CRC check.
When the archive is VIEWed, the file is not marked as encrypted.
The problem occurs because the processing that is used to STORE the file if the original compression method didn't compress the file, resets the Encryption flag in the archive. The processing used if METHOD STORE is selected does not reset this flag.
The fix ensures that this flag is not reset by the post compression STORE of a file that didn't compress.
For users with level 8, the following patch should be applied using the Maintenance instructions in the Reference manual.
* Note that the '*' should be in column 1
* The '*' indicates a comment
* Fix for PKZIP Small file encryption
UPDATE COMPRESS COMPSTOR
VER 0000009A BE924009
REP 0000009A 94004009
VER 0000009E 42904008
REP 0000009E 94014008
ENDUPD
October 1999
PKZIP
Use the Typical Application Instructions described at the beginning of this manual to apply this patch.
Note that the COMPRESS TEXT file is updated and the PKZIP
module must be re-built.
Click here to download this patch in a text file
Error Description
When created on another platform, it is possible for a ZIP archive to indicate that the Local file information block will not contain information about the file in the ZIP archive (this information should be placed in a data descriptor after the file in the archive). However, the Local file information block is verified by ZIP processing - if this information is missing, PKUNZIP will report the following problem:
ZIP605W Inconsistent local header for file
This message may be followed by other messages which indicate that there is a problem with the data in the archive, for example
ZIP720E Invalid IPP table found in file.
This patch ensures that PKUNZIP will detect whether or not the Local file information block contains file information and so perform the appropriate checking.
Corrective Action
For users with level 8, the following patch should be applied using the Maintenance instructions in the Reference manual.
* Note that the * should be in column
1
* The * indicates a comment
* Fix for PKUNZIP ZIP605W
UPDATE EXTRZIP CLOCAL
VER 00000124
4140D0A8
REP 00000124 47F0C1A2
VER 000001A2
00000000
REP 000001A2 4140D0A8
VER 000001A6
00000000
REP 000001A6 91084006
VER 000001AA
00000000
REP 000001AA 47E0C128
VER 000001AE
00000000
REP 000001AE 5870400E
VER 000001B2 0000
REP
000001B2 1277
VER 000001B4 00000000
REP 000001B4
4780C15C
VER 000001B8 00000000
REP 000001B8
47F0C128
ENDUPD
Issued
March 2001
Modules Affected
PKUNZIP
Summary of application instructions
Use the Typical Application Instructions described at the beginning of this manual to apply this patch. Note that the EXTRZIP TEXT file is updated and the PKUNZIP module must be rebuilt.
Error Description
This patch corrects a problem processing empty files and provides documentation for the maintenance messages.
PKZIP outputs the following messages when processing an empty file:
ZIP845E File: ZIPnnnnn/CMSUT2 /A
not found.
ZIP841E Unexpected FSCLOSE error, 6, when processing
file ZIPnnnnn/CMSUT2 /A
These messages are a result of creating an empty ZIP Temporary File using minidisk processing this file is removed, rather than written to the minidisk.
This patch ensures that PKZIP will detect a ZIP Temporary File that is non-existent because it is empty and process it correctly.
See later for some additional documentation and restrictions for empty files. Also see later for the maintenance messages documentation.
Corrective Action
For users with level 8, the following patch should be applied using the Maintenance instructions in the Reference manual.
* Note that the '*' should be in column
1
* The '*' indicates a comment
* Fix for Empty Files on ZIP
UPDATE TEMPFILE TMPOPEN
VER 0000032A 4780C378
REP
0000032A 47F0C512
VER 00000512 00000000
REP 00000512
4780C378
VER 00000516 00000000
REP 00000516
41E0001C
VER 0000051A 0000
REP 0000051A 19EF
VER
0000051C 00000000
REP 0000051C 4770C32E
VER 00000520
00000000
REP 00000520 91803048
VER 00000524
00000000
REP 00000524 47E0C32E
VER 00000528
00000000
REP 00000528 92FFB0D8
VER 0000052C
00000000
REP 0000052C 47F0C374
ENDUPD
UPDATE TEMPFILE
TMPCLOSE
VER 000001EC 4780C23C
REP 000001EC
47F0C40A
VER 0000040A 00000000
REP 0000040A
4780C23C
VER 0000040E 00000000
REP 0000040E
41E00006
VER 00000412 0000
REP 00000412 19EF
VER
00000414 00000000
REP 00000414 4770C1F0
VER 00000418
00000000
REP 00000418 92FFB0D8
VER 0000041C
00000000
REP 0000041C 4770C1F0
VER 00000420
00000000
REP 00000420 47F0C232
ENDUPD
Issued
May 2001
Modules Affected
PKZIP
Summary of application instructions
Use the Typical Application Instructions described at the beginning of this manual to apply this patch. Note that the TEMPFILE TEXT file is updated and the PKZIP module must be rebuilt.
Empty Files
When PKZIP compresses an empty file, the details for
the file will be the same as would be expected if the file contained some
records, except that it will have a record count of 0.
With this patch
on PKZIP will correctly process these empty files.
When PKUNZIP
decompresses an empty record, it will pad this record by adding at least 1
character to the output. As a result, it is not possible for PKZIP for VM
to create empty files even if the input is empty, PKUNZIP processing will add
a byte to the first record.
Maintenance Messages
These messages were not originally included in the Reference Manual. It is seldom necessary to review the messages, but in case it is, the maintenance messages have been included at the end of these patch notes please insert these into the Reference Manual as Appendix F.
Appendix F. Maintenance Messages
This chapter gives details of the standard messages produced during updates to the product that use the TEXTUPD facilities. All the messages detailed in this section are written to SYSPRINT and the console.
Message format
The format of the messages produced is as
follows:
T4Xnnns < - Message Text ->
where:
nnn is the
message number.
s is the severity. The possible values
are:
E Error
W Warning
I Information
The messages produced are described in the following section, listed in order of message number.
Details of messages
Any message number not included in this document should be referred to your normal support procedures to receive an explanation.
011 Severity:
Error
Message Text: Error on SYSIN
file
Explanation: Utility could not read the SYSIN file
does it exist?
Action: Check that is has been created as required
by the support personnel supplying the fix.
012 Severity: Error (Console
only)
Message Text: Error on SYSPRINT
file
Explanation: Utility could not write the SYSPRINT
file.
Action: Check that there is sufficient space for
the file on disk and that the A disk can be written to.
021 Severity:
Information
Message Text: Update Process: <Product &
version>, starting.
Explanation: Processing has
started.
Action: None.
022 Severity:
Information
Message Text: Update Process: <Product &
version>, ending.
Explanation: Processing is
ending.
Action:
None.
030 Severity:
Information
Message Text: *
Explanation:
Spacer line for formatting the output.
Action: None.
031 Severity:
Information
Message Text: <output
message>
Explanation: Review the output message for
meaning and actions required.
Action: None.
040 Severity:
Information
Message Text: Processing card <card
image>
Explanation: The indicated card has been read from
the SYSIN file and is being processed.
Action: None.
041 Severity:
Information
Message Text: CSECT has been updated (to
file).
Explanation: The update associated with on CSECT
(effectively one routine) has been completed successfully.
Action:
None.
042 Severity:
Information
Message Text: No Update required for
CSECT.
Explanation: CSECT was not changed.
Action:
None.
043 Severity:
Information
Message Text: CSECT
Printed.
Explanation: A Print command has been
actioned.
Action: None.
044 Severity:
Information
Message Text: CSECT Updated (in
memory).
Explanation: CSECT has been updated but update has
not been written to Disk (as yet).
Action: None.
045 Severity:
Information
Message Text: CSECT Loaded into
memory.
Explanation: CSECT to be updated has been extracted
and now may be updated in memory.
Action:
None.
046 Severity:
Information
Message Text: CSECT data verified with
input.
Explanation: CSECT details have been checed against
input and they match.
Action: None.
070 Severity:
Error
Message Text: Invalid input control
record.
Explanation: Input record has not been recognised
check that it has been created correctly.
Action: Check
Input.
071 Severity:
Error
Message Text: Text file error: <file>,
Operation: <action>.
Explanation: Input CSECT could
not be read properly. Ensure that the appropriate files are available and
have been copied correctly.
Action: If no errors can be found, contact
support.
072 Severity:
Error
Message Text: CSECT identified not found in TEXT
file.
Explanation: Input CSECT could not be read
properly. Ensure that the appropriate files are available and have been
copied correctly.
Action: If no errors can be found, contact
support.
073 Severity:
Error
Message Text: Offset given is not in identified
CSECT.
Explanation: Input CSECT did not have the required
offset.
Action: Check that the specified offset and CSECT
name as as requested. If this doesnt resolve the problem, contact
support.
074 Severity:
Error
Message Text: Verify data not matched in
CSECT.
Explanation: Input CSECT did not have the required
data.
Action: Check that the specified offset, data and
CSECT name as as requested. If this doesnt resolve the problem, contact
support.
075 Severity:
Error
Message Text: Unexpected SYNAD
error.
Explanation: Unexpected I/O problem.
Action: Check other
processing and see if there is a general problem. If not, attempt the
process again. If the problem persists, contact support.
Error Description
This patch corrects a problem processing variable length archives.
PKUNZIP may output one (or more) of the following messages when processing some variable length archives:
ZIP605W Inconsistent local header for file
ZIP883E Error reading fn /ft/fm/. Unable to find block ...
ZIP720E Invalid IPP table found in file.
These messages will only be seen when the archive is variable length and has been transferred to the VM platform.
The messages are a result of optimisation that PKUNZIP attempts when processing a file. Part of this optimisation assumes that variable length records are all 'full' (except for the last one). If the archive contains different lengths (for example, some early records that are shorter than the specified record length), the optimisation causes PKUNZIP to position incorrectly within the archive.
This patch removes this optimisation for variable length archives.
Circumvention
It is possible to process the archives successfully on VM, if the archives are reformatted so that the records in the archive are similar length, or the archive contains Fixed Length records. Possibly the easiest way to achive this is to use a PIPE command with an FBLOCK stage, such as the following:
PIPE < fn ft A | fblock 4096 00 | > fn newft A F 4096
PKUNZIP should process the reformatted archive correctly.
Corrective Action
For users with level 8, the following patch should be applied using the Maintenance instructions in the Reference manual.
* Note that the '*' should be in column 1 Issued: April 2002 Modules Affected PKZIP and PKUNZIP. PKZIP should be rebuilt in case a variable length archive with different
record lengths is updated. Summary of application instructions Use the Typical Application Instructions described at the beginning of this manual
to apply this patch. Note that the TEMPFILE TEXT file is updated and the PKZIP and PKUNZIP modules must be rebuilt. Error Description After an unsuccessful command, PKZIP and PKUNZIP may not completely close the input
archive. In this circumstance, CMS will normally complete the close of the archive. However if the PKZIP or
PKUNZIP command has been issued in a way that means CMS does not recognise the 'end of command processing',
then the input archive will remain open. Subsequent commands issued against the archive will fail for
this reason, for example, a subsequent PKUNZIP command will result in the following message:
ZIP841E Unexpected FSOPEN error, 37, when processing file ...
The file identified will be the ZIP archive.
PKZIP and PKUNZIP processing is changed by this patch to close open archives,
even in error situations. As a result of this patch, it is possible that additional messages may result, when
the close does not complete correctly because of other errors. These additional close messages will only be
seen when there is a preceding error in the processing.
Circumvention
It is possible to use the FINIS command after a failed PKZIP or PKUNZIP to
ensure that the archive is closed. This will force the archive closed.
Corrective Action
For users with level 8, the following patch should be applied using the
Maintenance instructions in the Reference manual.
* Note that the '*' should be in column 1 May 2002 Modules Affected PKZIP and PKUNZIP. PKZIP should be rebuilt in case a variable length archive with different
record lengths is updated. Summary of application instructions Use the Typical Application Instructions described at the beginning of this manual
to apply this patch. Note that the TEMPFILE TEXT file is updated and the PKZIP and PKUNZIP modules must be rebuilt. Error Description Corrective Action
For users with level 8, the following patch should be applied using the
Maintenance instructions in the Reference manual.
* Note that the ‘*’ should be in column 1 November 2003
Modules Affected PKZIP and PKUNZIP. Summary of application instructions Use the ical Application Instructions described at the beginning of this manual to apply this patch. Note that the COMPRESS, EXTRACT, EXTRZIP, IMPLODE, INFLATE, LISTZIP, UNSHRINK, UTILS and ZTASK TEXT files are updated and the PKUNZIP and PKZIP modules must be rebuilt Error Description Corrective Action
For users with level 8, the following patch should be applied using the
Maintenance instructions in the Reference manual.
* Note that the ‘*’ should be in column 1 July 2004
Modules Affected PKZIP Summary of application instructions Use the ical Application Instructions described at the beginning of this manual to apply this patch. Note that the IMPLODE and COMPRESS TEXT files are updated and the PKZIP module must be rebuilt. -End-
* The '*' indicates a comment
* Fix for Variable Length Record Archives
UPDATE TEMPFILE TFILGBLK
VER 00000152 4780C180
REP 00000152 47F0C586
VER 00000586 00000000
REP 00000586 4780C180
VER 0000058A 00000000
REP 0000058A 4110B118
VER 0000058E 00000000
REP 0000058E 95E51024
VER 00000592 00000000
REP 00000592 4770C180
VER 00000596 00000000
REP 00000596 47F0C156
ENDUPD
P0204-L008-014
* The '*' indicates a comment
* Fix for Open Error 37 on archive
UPDATE UNZIP UNZIP
VER 0000149E 4770B55A
REP 0000149E 4770B6F0
VER 0000166E 47F0B55A
REP 0000166E 47F0B6F0
VER 00001678 47F0B55A
REP 00001678 47F0B6F0
VER 00001682 47F0B55A
REP 00001682 47F0B6F0
VER 0000168C 47F0B55A
REP 0000168C 47F0B6F0
VER 00001696 47F0B55A
REP 00001696 47F0B6F0
VER 000016EC 000000000000
REP 000016EC D503201CB7E0
VER 000016F2 00000000
REP 000016F2 4770B530
VER 000016F6 00000000
REP 000016F6 47F0B55A
ENDUPD
UPDATE ZIP ZIP
VER 00001972 4770BC3A
REP 00001972 4770BDD0
VER 00001D4E 47F0BC3A
REP 00001D4E 47F0BDD0
VER 00001D58 47F0BC3A
REP 00001D58 47F0BDD0
VER 00001D62 47F0BC3A
REP 00001D62 47F0BDD0
VER 00001D6C 47F0BC3A
REP 00001D6C 47F0BDD0
VER 00001D76 47F0BC3A
REP 00001D76 47F0BDD0
VER 00001DCC 000000000000
REP 00001DCC D503201CBEE0
VER 00001DD2 00000000
REP 00001DD2 4770BC10
VER 00001DD6 00000000
REP 00001DD6 47F0BC3A
ENDUPD
Issued:P0205-L008-015
* The ‘*’ indicates a comment
* Fix for files > 2GB uncompressed
UPDATE COMPRESS COMPRESS
VER 000004FE 1956
REP 000004FE 1556
VER 00000698 1978
REP 00000698 1578
VER 000006A6 5970C91C
REP 000006A6 5570C91C
ENDUPD
UPDATE ZTASK ZTSKFILE
VER 00000128 5950C3F0
REP 00000128 5550C3F0
VER 00000282 5950C3F0
REP 00000282 5550C3F0
ENDUPD
UPDATE EXTRZIP EXTRFILE
VER 000004B0 5B90CB64
REP 000004B0 5F90CB64
ENDUPD
UPDATE EXTRACT EX00
VER 0000013C 5950C314
REP 0000013C 5550C314
VER 00000144 5950C318
REP 00000144 5550C318
VER 0000016C 1B571A87
REP 0000016C 1F571E87
ENDUPD
UPDATE INFLATE FSCGRBF1
VER 0000008A 59430004
REP 0000008A 55430004
ENDUPD
UPDATE UNSHRINK GETMORE
VER 00000080 5940A050
REP 00000080 5540A050
VER 0000008C 5940C174
REP 0000008C 5540C174
ENDUPD
UPDATE IMPLODE SNEWTHSH
VER 00000096 1978
REP 00000096 1578
VER 000000A4 5970C1B0
REP 000000A4 5570C1B0
ENDUPD
UPDATE LISTZIP LISTZIP
VER 00000422 5A60D0AC
REP 00000422 5E60D0AC
VER 0000043C 5A60D0A8
REP 0000043C 5E60D0A8
VER 000004E6 5960C780
REP 000004E6 5560C780
VER 0000051C 5960C780
REP 0000051C 5560C780
VER 00000554 1978
REP 00000554 1578
VER 00000562 5970C78C
REP 00000562 5570C78C
ENDUPD
UPDATE LISTZIP PRININFO
VER 0000011E 5960C5D8
REP 0000011E 5560C5D8
VER 00000170 5960C5D8
REP 00000170 5560C5D8
VER 000001C4 1978
REP 000001C4 1578
VER 000001D2 5970C5F0
REP 000001D2 5570C5F0
ENDUPD
UPDATE LISTZIP PLNGINFO
VER 00000322 5960C76C
REP 00000322 5560C76C
VER 00000382 5960C76C
REP 00000382 5560C76C
ENDUPD
UPDATE LISTZIP SSIZERTN
VER 000000A6 1967
REP 000000A6 1567
ENDUPD
UPDATE LISTZIP SCOMPRTN
VER 000000AE 1979
REP 000000AE 1579
VER 00000102 1979
REP 00000102 1579
ENDUPD
UPDATE UTILS CONVTDEC
VER 00000082 4E40D050
REP 00000082 47F0C0E2
VER 000000DE 00000000
REP 000000DE 3B9ACA00
VER 000000E2 00000000
REP 000000E2 17661874
VER 000000E6 00000000
REP 000000E6 5D60C0DE
VER 000000EA 00000000
REP 000000EA 4E60D050
VER 000000EE 00000000 0000
REP 000000EE F3F7D078 D050
VER 000000F4 00000000
REP 000000F4 4270D07E
VER 000000F8 00000000
REP 000000F8 96F0D07E
VER 000000FC 00000000
REP 000000FC 47F0C08C
ENDUPD
Issued:P0407-L008-016
* The ‘*’ indicates a comment
* Error message for input files > 4 GB
UPDATE IMPLODE VREAD
VER 00000118 1A05
REP 00000118 1E05
VER 0000013A 1A97
REP 0000013A 1E97
VER 0000013C BE98801B
REP 0000013C 47F0C21A
VER 000001F0 1A05
REP 000001F0 1E05
VER 0000021A 00000000
REP 0000021A 4730C226
VER 0000021E 00000000
REP 0000021E BE98801B
VER 00000222 00000000
REP 00000222 47F0C140
VER 00000226 00000000
REP 00000226 4110D050
VER 0000022A 00000000
REP 0000022A 4100035F
VER 0000022E 00000000
REP 0000022E 50001000
VER 00000232 00000000
REP 00000232 4100C272
VER 00000236 00000000
REP 00000236 50001004
VER 0000023A 00000000
REP 0000023A 4100000B
VER 0000023E 00000000
REP 0000023E 50001008
VER 00000242 00000000
REP 00000242 4100C270
VER 00000246 00000000
REP 00000246 5000100C
VER 0000024A 00000000
REP 0000024A 41000002
VER 0000024E 00000000
REP 0000024E 50001010
VER 00000252 00000000
REP 00000252 58F0211C
VER 00000256 0000
REP 00000256 05EF
VER 00000258 00000000
REP 00000258 92C1D118
VER 0000025C 00000000
REP 0000025C 47F0C1F8
VER 00000270 0000
REP 00000270 F2F4
VER 00000272 00000000
REP 00000272 C6C9D3C5
VER 00000276 00000000
REP 00000276 406E7E40
VER 0000027A 00000000
REP 0000027A F4C7C200
ENDUPD
UPDATE COMPRESS COMPSTOR
VER 000001BA 1E57
VER 000001BC 4110D050
REP 000001BC 47F0C30A
VER 0000030A 00000000
REP 0000030A 4730C316
VER 0000030E 00000000
REP 0000030E 4110D050
VER 00000312 00000000
REP 00000312 47F0C1C0
VER 00000316 00000000
REP 00000316 4110D050
VER 0000031A 00000000
REP 0000031A 4100035F
VER 0000031E 00000000
REP 0000031E 50001000
VER 00000322 00000000
REP 00000322 4100C352
VER 00000326 00000000
REP 00000326 50001004
VER 0000032A 00000000
VER 0000032A 00000000
REP 0000032A 4100000B
VER 0000032E 00000000
REP 0000032E 50001008
VER 00000332 00000000
REP 00000332 4100C350
VER 00000336 00000000
REP 00000336 5000100C
VER 0000033A 00000000
REP 0000033A 41000002
VER 0000033E 00000000
REP 0000033E 50001010
VER 00000342 00000000
REP 00000342 58F0211C
VER 00000346 0000
REP 00000346 05EF
VER 00000348 00000000
REP 00000348 92C1D0D0
VER 0000034C 00000000
REP 0000034C 47F0C250
VER 00000350 0000
REP 00000350 F2F4
VER 00000352 00000000
REP 00000352 C6C9D3C5
VER 00000356 00000000
REP 00000356 406E7E40
VER 0000035A 00000000
REP 0000035A F4C7C200
ENDUPD
Issued: