iscsi-scstd: Improve create_and_open_dev() robustness

Reset 'devn' if the sscanf() return value is lower than two.
Based on a Coverity report.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6367 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
Bart Van Assche
2015-06-17 00:21:28 +00:00
parent d70b1e39c0
commit 165b0f1d10
+3 -6
View File
@@ -43,12 +43,9 @@ int create_and_open_dev(const char *dev, int readonly)
}
devn = 0;
while (!feof(f)) {
if (!fgets(buf, sizeof(buf), f))
break;
if (sscanf(buf, "%d %s", &devn, devname) != 2)
continue;
if (!strcmp(devname, dev))
while (fgets(buf, sizeof(buf), f)) {
if (sscanf(buf, "%d %s", &devn, devname) == 2 &&
devn > 0 && strcmp(devname, dev) == 0)
break;
devn = 0;
}