[PATCH] (#2) Make virt_device_dup() not crash the CIMOM if a field is NULL

# HG changeset patch # User Dan Smith <danms@us.ibm.com> # Date 1201036025 28800 # Node ID 93454e6c0dfe66eedc679e8f839b523991ad3b10 # Parent 84f80a8040eb29109d0fce50b582582527c2e50e (#2) Make virt_device_dup() not crash the CIMOM if a field is NULL Changes since last time: - Clear the new device so we don't leave garbage if the source has a NULL field Signed-off-by: Dan Smith <danms@us.ibm.com> diff -r 84f80a8040eb -r 93454e6c0dfe libxkutil/device_parsing.c --- a/libxkutil/device_parsing.c Tue Jan 22 11:22:14 2008 -0800 +++ b/libxkutil/device_parsing.c Tue Jan 22 13:07:05 2008 -0800 @@ -519,13 +519,16 @@ static int parse_devices(const char *xml return count; } -#define DUP_FIELD(d, s, f) ((d)->f = strdup((s)->f)) +#define DUP_FIELD(d, s, f) do { \ + if ((s)->f != NULL) \ + (d)->f = strdup((s)->f); \ + } while (0); struct virt_device *virt_device_dup(struct virt_device *_dev) { struct virt_device *dev; - dev = malloc(sizeof(*dev)); + dev = calloc(1, sizeof(*dev)); if (dev == NULL) return NULL;

Dan Smith wrote:
# HG changeset patch # User Dan Smith <danms@us.ibm.com> # Date 1201036025 28800 # Node ID 93454e6c0dfe66eedc679e8f839b523991ad3b10 # Parent 84f80a8040eb29109d0fce50b582582527c2e50e (#2) Make virt_device_dup() not crash the CIMOM if a field is NULL
Changes since last time: - Clear the new device so we don't leave garbage if the source has a NULL field
Makes absolutely sense. Excellent catch ... +1 -- Regards Heidi Eckhart Software Engineer IBM Linux Technology Center - Open Hypervisor
participants (2)
-
Dan Smith
-
Heidi Eckhart