Software patch architecture
First Claim
Patent Images
1. A method of repairing installed software having existing program objects on a computer system having an installation utility for adding a software package to the system, said method comprising the steps of:
- installing with the installation utility a patch package to repair the installed software, the patch package including selectively replacing program objects and new program objects, the replacing program objects replace existing program objects and the new program objects install new program objects to the installed software, said installation utility installing patches from the patch package to a target package of the installed software by executing first scripts in the patch package;
creating a backout package during installation of said patch package, the backout package selectively including both replaced existing program objects and a delete new program objects identifier list, said installation utility creating the backout package by executing said first scripts in the patch package and by inserting second scripts in the backout package;
said first scripts, when executed, adding replaced existing program objects to the backout package, said replaced existing program objects being existing program objects selectively replaced by replacing program objects in the patch package;
said first scripts also adding new program object identifiers to said delete new program objects identifier list in the backout package, said delete new program objects identifier list identifying new program objects that are new to the installed software;
determining if said installation of said patch package has been successful by detecting whether the installed software is operating correctly; and
in the event that said installation of said patch package has not been successful, installing the backout package to remove the replacing program objects from the target package and installing the selectively replaced existing program objects to the target package and to remove new program objects identified on the delete new program objects identifier list from the target package to restore the target package to an original state, said installation utility installing the backout package by executing said second scripts in the backout package.
1 Assignment
0 Petitions
Accused Products
Abstract
A software package installed on a UNIX system V computer system is repaired by installing a System V software patch package. During installation of the patch package using the pkgadd utility and scripts in the patch package, a backout software package is constructed. This backout package will, when later installed on the computer system using pkgadd, operate to restore the software in the computer system to its original state before installation of the patch package.
243 Citations
12 Claims
-
1. A method of repairing installed software having existing program objects on a computer system having an installation utility for adding a software package to the system, said method comprising the steps of:
-
installing with the installation utility a patch package to repair the installed software, the patch package including selectively replacing program objects and new program objects, the replacing program objects replace existing program objects and the new program objects install new program objects to the installed software, said installation utility installing patches from the patch package to a target package of the installed software by executing first scripts in the patch package; creating a backout package during installation of said patch package, the backout package selectively including both replaced existing program objects and a delete new program objects identifier list, said installation utility creating the backout package by executing said first scripts in the patch package and by inserting second scripts in the backout package; said first scripts, when executed, adding replaced existing program objects to the backout package, said replaced existing program objects being existing program objects selectively replaced by replacing program objects in the patch package; said first scripts also adding new program object identifiers to said delete new program objects identifier list in the backout package, said delete new program objects identifier list identifying new program objects that are new to the installed software; determining if said installation of said patch package has been successful by detecting whether the installed software is operating correctly; and in the event that said installation of said patch package has not been successful, installing the backout package to remove the replacing program objects from the target package and installing the selectively replaced existing program objects to the target package and to remove new program objects identified on the delete new program objects identifier list from the target package to restore the target package to an original state, said installation utility installing the backout package by executing said second scripts in the backout package. - View Dependent Claims (2, 3, 4, 5)
-
-
6. Apparatus for repairing installed software having existing program files on a computer system, said computer system having a processor, a keyboard and a plurality of data storage devices, said processor having a central processing unit, memory and input/output control, said input/output control connected to said keyboard and to said data storage devices, said apparatus comprising;
-
a patch install module configured to install a patch package to repair a target package of said installed software by selectively repairing existing program files and by new program files, said patch install module installable by an installation utility; a build backout module configured to create and save a backout package during installation of said patch package by said patch install module, said backout package selectively including both pre-repaired existing program files and a delete new program files identifier list, the delete new program files identifier list identifying program files new to the installed software; said backout package for subsequent use in restoring said target package to an operative state that is identical to operation of said installed software before installation of said patch package; said subsequent use of said backout package operating to selectively restore said pre-repaired existing program files and operating to remove said new program files identified on the delete new program objects identifier list; a validation module configured to detect if the target package has been repaired and indicating a failed patch if the installed software is not intact after said patch install module installs the patch package by detecting whether the installed software is operating correctly; and a backout install module, responsive to said failed patch, configured to install said backout package to restore said target package, said backout install module installable by the installation utility used also to install said patch install module. - View Dependent Claims (7, 8, 9)
-
-
10. A computer program storage medium that is readable by a computing system and that encodes a computer program of instruction for executing a computer process for repairing a software product having existing files that is installed on said computing system using a software-package-add utility, said computer process comprising the steps of:
-
installing a software-patch-package on said computing system, said software-patch-package containing both replacement-files to selectively replace existing files and new-files and installed using the software-package-add utility; during installation of said software-patch-package, constructing a restore-software-package which will, when later installed on said computing system, restore said software product to an original state by replacing said replacement-files with said selectively replaced existing files and removing said new-files, said restore-software-package containing data about each replacement-file and new-file that is added to, modified, or deleted from the computing system during said step of installing; determining if said installation of said software-patch-package has been successful by detecting whether the installed software is operating correctly; and in the event that said installation of said software-patch-package has not been successful, installing said restore-software-package using only said software-package-add utility. - View Dependent Claims (11, 12)
-
Specification