summaryrefslogtreecommitdiff
path: root/mdopen.c
diff options
context:
space:
mode:
authorDimitri John Ledkov <xnox@ubuntu.com>2018-06-26 15:38:57 +0100
committerDimitri John Ledkov <xnox@ubuntu.com>2018-06-26 15:38:57 +0100
commit9421e599c44cd50d3df4cd019cd3c53d9320e93d (patch)
tree2d9606679ad49fbc9f9cf72b3a3a87d7a6dc8fff /mdopen.c
parentec9bfc63255cdf01a67171d1228f562c927c6d36 (diff)
Cherrypick master patches up to 4th of June 2018.debian/4.1_rc1-3archive/debian/4.1_rc1-3
Diffstat (limited to 'mdopen.c')
-rw-r--r--mdopen.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/mdopen.c b/mdopen.c
index 4ec13f5e..98c54e43 100644
--- a/mdopen.c
+++ b/mdopen.c
@@ -44,7 +44,7 @@ void make_parts(char *dev, int cnt)
int nlen = strlen(dev) + 20;
char *name;
int dig = isdigit(dev[strlen(dev)-1]);
- char orig[1024];
+ char orig[1001];
char sym[1024];
int err;
@@ -58,8 +58,10 @@ void make_parts(char *dev, int cnt)
minor_num = minor(stb.st_rdev);
odig = -1;
} else if (S_ISLNK(stb.st_mode)) {
- int len = readlink(dev, orig, sizeof(orig));
- if (len < 0 || len > 1000)
+ int len;
+
+ len = readlink(dev, orig, sizeof(orig));
+ if (len < 0 || len >= (int)sizeof(orig))
return;
orig[len] = 0;
odig = isdigit(orig[len-1]);