commit fa55403
Michael Forney
·
2017-08-20 01:50:04 +0000 UTC
parent bd3e613
Check snprintf result
1 files changed,
+6,
-0
M
drm.c
M
drm.c
+6,
-0
1@@ -44,6 +44,7 @@ static const struct drm_driver * find_driver(int fd)
2 struct stat st;
3 FILE * file;
4 uint32_t index;
5+ int n;
6
7 if (fstat(fd, &st) == -1)
8 return NULL;
9@@ -51,6 +52,11 @@ static const struct drm_driver * find_driver(int fd)
10 if (getenv("WLD_DRM_DUMB"))
11 goto dumb;
12
13+ n = snprintf(path, sizeof(path), "/sys/dev/char/%u:%u/device/", major(st.st_rdev), minor(st.st_rdev));
14+ if (n + 6 >= sizeof(path))
15+ return NULL;
16+ path_part = path + n;
17+
18 strcpy(path_part, "vendor");
19 file = fopen(path, "r");
20 if (!file)