Efficient patching
First Claim
1. A method in a computing system, comprising:
- receiving in the computing system a distinguished patch package for modifying the behavior of an installed program;
automatically extracting from the distinguished patch package (1) patch application information, identifying a distinguished portion of a distinguished program against which the patch is to be applied, and (2) patch behavior information, specifying a manner in which to modify the behavior of the distinguished portion of the distinguished program; and
automatically adding a distinguished entry to a patch table, the distinguished entry containing the extracting patch application information and patch behavior information.
4 Assignments
0 Petitions
Accused Products
Abstract
A facility for automatically processing software patches is described. The facility receives in a computing system a distinguished patch package for modifying the behavior of a programmatic entity. The facility automatically extracts from the distinguished patch package (1) patch application information that identifies a distinguished programmatic entity against which the patches to be applied, and (2) patch behavior information that specifies a manner in which to modify the behavior of the distinguished programmatic entity. The facility automatically adds to a patch table a distinguished entry containing the extracted patch application information and patch behavior information.
51 Citations
38 Claims
-
1. A method in a computing system, comprising:
-
receiving in the computing system a distinguished patch package for modifying the behavior of an installed program;
automatically extracting from the distinguished patch package (1) patch application information, identifying a distinguished portion of a distinguished program against which the patch is to be applied, and (2) patch behavior information, specifying a manner in which to modify the behavior of the distinguished portion of the distinguished program; and
automatically adding a distinguished entry to a patch table, the distinguished entry containing the extracting patch application information and patch behavior information. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer-readable medium whose contents cause a computing system to perform a method comprising:
-
receiving in the computing system a distinguished patch package for modifying the behavior of a programmatic entity;
automatically extracting from the distinguished patch package (1) patch application information, identifying a distinguished programmatic entity against which the patch is to be applied, and (2) patch behavior information, specifying a manner in which to modify the behavior of the distinguished programmatic entity; and
automatically adding a distinguished entry to a patch table, the distinguished entry containing the extracting patch application information and patch behavior information. - View Dependent Claims (20)
-
-
21. One or more computer memories collectively storing a patch table data structure, comprising a plurality of patch entries, each patch entry containing:
-
patch application information, identifying a distinguished portion of a distinguished programmatic entity which the patch is to be applied; and
patch behavior information, specifying a manner in which to modify the behavior of the distinguished portion the distinguished programmatic entity, such that, for a particular patch entry, the contents of the patch entry can be used to modify the behavior of the distinguished portion of the distinguished programmatic entity in the specified manner. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A computing system that automatically implements received code patches, comprising:
-
a pre-installed library of helper functions; and
a patching agent that receives code patches, each code patch targeting a group of executable modules and identifying a helper function in the library, and that, when an executable module in a group targeted by a received code patch is executed, invokes the helper function identified by the code patch targeting the group of executable modules including that executable module to perform value validation. - View Dependent Claims (36)
-
-
37. A method in a computing system for automatically applying a software patch, comprising:
-
receiving in the computing system a patch for modifying the behavior of a programmatic entity, the patch (1) specifying a manner in which to modify the behavior of the programmatic entity, and (2) for each of a plurality of versions of the programmatic entity, (a) identifying the version of the programmatic entity, (b) specifying a position in the version of the programmatic entity to modify the behavior of the programmatic entity in the specified manner, and (c) identifying code expected to reside at the specified position in the version of the programmatic entity before the behavior of the programmatic entity is modified;
automatically determining that a distinguished version of the programmatic entity among the versions of the programmatic entity identified by the patch is installed on the computing system; and
only if the position specified for the distinguished version of the programmatic entity contains the identified code expected to reside at the specified position, modifying the behavior of the programmatic entity at the position specified for the distinguished version of the programmatic entity in accordance with the patch.
-
-
38. A computer-readable medium whose contents cause a computing system to perform a method for automatically applying a software patch, comprising:
-
storing in the computing system a patch for modifying the behavior of a programmatic entity, the patch (1) specifying a manner in which to modify the behavior of the programmatic entity, and (2) for each of a plurality of versions of the programmatic entity, (a) identifying the version of the programmatic entity, (b) specifying a position in the version of the programmatic entity to modify the behavior of the programmatic entity in the specified manner, and (c) identifying code expected to reside at the specified position in the version of the programmatic entity before the behavior of the programmatic entity is modified;
automatically determining that a distinguished version of the programmatic entity among the versions of the programmatic entity identified by the patch is installed on the computing system; and
only if the position specified for the distinguished version of the programmatic entity contains the identified code expected to reside at the specified position, modifying the behavior of the programmatic entity at the position specified for the distinguished version of the programmatic entity in accordance with the patch.
-
Specification