[lvm-devel] LVM2 ./WHATS_NEW lib/device/dev-swap.c
mbroz at sourceware.org
mbroz at sourceware.org
Thu Aug 19 23:05:45 UTC 2010
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: mbroz at sourceware.org 2010-08-19 23:05:45
Modified files:
. : WHATS_NEW
lib/device : dev-swap.c
Log message:
Fix file descriptor leak in swap signature detection
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.1714&r2=1.1715
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/device/dev-swap.c.diff?cvsroot=lvm2&r1=1.1&r2=1.2
--- LVM2/WHATS_NEW 2010/08/19 23:04:37 1.1714
+++ LVM2/WHATS_NEW 2010/08/19 23:05:45 1.1715
@@ -2,6 +2,7 @@
==================================
Simplify MD/swap signature detection in pvcreate and allow aborting.
Remove assumption that --yes must be used only in --force mode.
+ Fix file descriptor leak in swap signature detection error path.
Version 2.02.73 - 18th August 2010
==================================
--- LVM2/lib/device/dev-swap.c 2009/03/17 14:40:00 1.1
+++ LVM2/lib/device/dev-swap.c 2010/08/19 23:05:45 1.2
@@ -42,7 +42,7 @@
{
char buf[10];
uint64_t size;
- int page;
+ int page, ret = 0;
if (!dev_get_size(dev, &size)) {
stack;
@@ -66,11 +66,12 @@
break;
if (!dev_read(dev, page - SIGNATURE_SIZE,
SIGNATURE_SIZE, buf)) {
- stack;
- return -1;
+ ret = -1;
+ break;
}
if (_swap_detect_signature(buf)) {
*signature = page - SIGNATURE_SIZE;
+ ret = 1;
break;
}
}
@@ -78,10 +79,7 @@
if (!dev_close(dev))
stack;
- if (*signature)
- return 1;
-
- return 0;
+ return ret;
}
#endif
More information about the lvm-devel
mailing list