Checking FixPak diskette image integrity


This page describes a way to make sure that FixPak diskette images are 'good', and have not been corrupted by a bad download. This method requires one small program and a short text file, both of which are available here. It takes less than a minute to check a whole FixPak.


FixPaks for OS/2 are supplied in two forms: as diskette images, and as ZIP files for use by RSU. I personally prefer to download the diskette images, as occasionally I have to apply service to a machine with no other method of data transfer.

However, using diskettes all the time is very tedious, and most people tend to unpack the diskette images into directories on a hard drive, perhaps also copying them to a CD; the FixPak is then installed from there. The problem is that sometimes a bad download will cause a file to be corrupted, and this is not always detected during the unpacking of the images.

Once an image file is known to be correct, it is possible to generate a 'signature' for it using a suitable program. This 'signature' can then be published, and other users can check their own copies of the diskette image by seeing if those copies have the same signature. The method used to generate the signature is secure enough that it is virtually impossible for a corrupted diskette image file to generate the same signature as a correct one.

What do I need?

First, you need a copy of the program used to generate the signatures. This uses the well known MD5 algorithm; more details, and an OS/2 executable, are available here.

Second, you need a set of signatures created from known 'good' copies of the relevant diskette image files. Signatures for recent FixPaks that are in my possession can be found via the links below. They are ZIPped, although very small, because ZIP files have their own integrity checking and this provides assurance that the signature file itself is not corrupted during download.

How do I check the images?

Generate a signature for each diskette image file, using the command:

md5 -r <file>     (for example:   md5 -r xr_c001.1dk)

It's easier to generate them all at once, into a file; for example:

for %x in (xr_c001.?dk) do md5 -r %x >> sig.txt

If you have the version of MD5 mentioned above, at version 1.1 or later, you can just use:

md5 -r xr_c001.?dk > sig.txt

This is actually the kind of command used to generate the signature files provided here. A sample file might look like this (this covers just four image files):

6df679510cbb3206cd2e76e452c857b1 xr_c001.1dk
bda2fe6a67c52fa08909b43b2bdcb2dc xr_c001.2dk
68192b9c9f5c074555a6b8a1ae72ef00 xr_c001.3dk
65ecd27bc388b172c300d796c0453b1c xr_c001.4dk

You can then either compare the files by hand, or use your favourite file comparison utility!

Getting the required files

As mentioned earlier, the MD5 program is available here for download.

Signature files are available, ZIPped, via the links below. More files will be added as the relevant images become available and are checked. All are for US or multilingual FixPaks unless otherwise stated. Click on the filename in each row to download the relevant signature file.

FixPak name Description Signature file
XR_W010 Warp 3/Warp Server 4 FixPak 10 XR_W010S.ZIP
XR_W011 Warp 3/Warp Server 4 FixPak 11 XR_W011S.ZIP
XR_W017 Warp 3/Warp Server 4 FixPak 17 XR_W017S.ZIP
XR_W022 Warp 3/Warp Server 4 FixPak 22 XR_W022S.ZIP
XR_W026 Warp 3/Warp Server 4 FixPak 26 XR_W026S.ZIP
XR_W032 Warp 3/Warp Server 4 FixPak 32 XR_W032S.ZIP
XR_W040 Warp 3/Warp Server 4 FixPak 40 XR_W040S.ZIP
XR_W041 Warp Server 4 FixPak 41 XR_W041S.ZIP
XR_W042 Warp Server 4 FixPak 42 XR_W042S.ZIP
XR_W043 Warp Server 4 FixPak 43 XR_W043S.ZIP
XR_M012 Warp 4 FixPak 12 XR_M012S.ZIP
XR_M013 Warp 4 FixPak 13 XR_M013S.ZIP
XR_M015 Warp 4 FixPak 15 XR_M015S.ZIP
XR_M016 Warp 4 FixPak 16 XR_M016S.ZIP
XR_M017 Warp 4 FixPak 17 XR_M017S.ZIP
XR_D001 Warp 4/Warp Server 4/WSOD device driver FixPak 1 XR_D001S.ZIP
XR_D002 Warp 4/Warp Server 4/WSOD/WSeB device driver FixPak 2 XR_D002S.ZIP
XR_D003 Warp 4/Warp Server 4/WSOD/WSeB/CP device driver FixPak 3 XR_D003S.ZIP
XR_E001 WSeB FixPak 1 XR_E001S.ZIP
XR_E002 WSeB FixPak 2 XR_E002S.ZIP
XR_E003 WSeB FixPak 3 XR_E003S.ZIP
XR_C001 MCP1 and ACP1 FixPak 1 XR_C001S.ZIP
XR_C002 MCP1 and ACP1 FixPak 2 XR_C002S.ZIP
XR_C003 MCP and ACP FixPak 3 XR_C003S.ZIP
XR_C004 MCP and ACP FixPak 4 XR_C004S.ZIP
XR_C005 MCP and ACP FixPak 5 XR_C005S.ZIP
XR_F001 MCP2 and ACP2 FixPak 1 XR_F001S.ZIP
WR08423 Warp Connect/Warp 4/Warp 4 Server MPTS FixPak (16 bit) WR08423S.ZIP
WR08425 Warp Connect/Warp 4/Warp 4 Server MPTS FixPak (16 bit) WR08425S.ZIP
WR08610 Warp Connect/Warp 4/Warp 4 Server MPTS FixPak (32 bit) WR08610S.ZIP
WR08621 Warp Connect/Warp 4/Warp 4 Server/WSeB MPTS FixPak (32 bit) WR08621S.ZIP
UN00959 TCP/IP FixPak (16 bit) UN00959S.ZIP
UN00980 TCP/IP FixPak (16 bit) UN00980S.ZIP
UN_2101 TCP/IP 4.2 FixPak (32 bit) UN_2101S.ZIP
IP08196 Warp Connect Peer 1.0 FixPak IP08196S.ZIP
IP08402 Non Warp Connect Peer FixPak IP08402S.ZIP
IP08406 Non Warp Connect Peer FixPak IP08406S.ZIP
IP08412 Non Warp Connect Peer FixPak IP08412S.ZIP
IP08413 Non Warp Connect Peer FixPak IP08413S.ZIP
IP08414 Non Warp Connect Peer FixPak IP08414S.ZIP
IP08602 WSeB LAN Server component FixPak IP08602S.ZIP
IP08603 WSeB LAN Server component FixPak IP08603S.ZIP
IP08603H WSeB LAN Server component FixPak (HPFS386 only) IP08603HS.ZIP
IP08605 WSeB LAN Server component FixPak IP08605S.ZIP
IP08605H WSeB LAN Server component FixPak (HPFS386 only) IP08605HS.ZIP
WR_FF02 FFST/2 FixPak 2 WR_FF02S.ZIP

Back to Tavi OS/2 main page

Last Updated: 2nd March 2005
© 2005 by Bob Eager, Tavi Systems