diff options
-rw-r--r-- | WHATS_NEW_DM | 1 | ||||
-rw-r--r-- | daemons/dmeventd/libdevmapper-event.c | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/WHATS_NEW_DM b/WHATS_NEW_DM index 336e556c..43cc9e38 100644 --- a/WHATS_NEW_DM +++ b/WHATS_NEW_DM @@ -1,5 +1,6 @@ Version 1.02.71 - ==================================== + Check for missing reply_uuid in dm_event_get_registered_device(). Check for allocation failure in dmeventd restart(). Add few missing allocation failures tests in dmsetup. Fix potential risk of writing in front of buffer in _sysfs_get_dm_name(). diff --git a/daemons/dmeventd/libdevmapper-event.c b/daemons/dmeventd/libdevmapper-event.c index 13e8a488..c85ef880 100644 --- a/daemons/dmeventd/libdevmapper-event.c +++ b/daemons/dmeventd/libdevmapper-event.c @@ -743,6 +743,10 @@ int dm_event_get_registered_device(struct dm_event_handler *dmevh, int next) msg.data = NULL; _dm_event_handler_clear_dev_info(dmevh); + if (!reply_uuid) { + ret = -ENXIO; /* dmeventd probably gave us bogus uuid back */ + goto fail; + } dmevh->uuid = dm_strdup(reply_uuid); if (!dmevh->uuid) { ret = -ENOMEM; |