summaryrefslogtreecommitdiffstats
path: root/0044-RHBZ-976688-fix-wipe-wwids.patch
blob: 6f70574656be0da8792033b024df7ff9f62f517f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
---
 libmultipath/wwids.c |    6 ++++++
 1 file changed, 6 insertions(+)

Index: multipath-tools-130222/libmultipath/wwids.c
===================================================================
--- multipath-tools-130222.orig/libmultipath/wwids.c
+++ multipath-tools-130222/libmultipath/wwids.c
@@ -4,6 +4,7 @@
 #include <string.h>
 #include <limits.h>
 #include <stdio.h>
+#include <sys/types.h>
 
 #include "checkers.h"
 #include "vector.h"
@@ -100,6 +101,11 @@ replace_wwids(vector mp)
 		condlog(0, "cannot truncate wwids file : %s", strerror(errno));
 		goto out_file;
 	}
+	if (lseek(fd, 0, SEEK_SET) < 0) {
+		condlog(0, "cannot seek to the start of the file : %s",
+			strerror(errno));
+		goto out_file;
+	}
 	len = strlen(WWIDS_FILE_HEADER);
 	if (write_all(fd, WWIDS_FILE_HEADER, len) != len) {
 		condlog(0, "Can't write wwid file header : %s",