correct snprintf truncation check in closefrom()
Truncation cannot happen unless the system has set PATH_MAX to some nonsensically low value. bz#2862, patch from Daniel Le
This commit is contained in:
parent
149cab325a
commit
4492e2ec4e
|
@ -77,7 +77,7 @@ closefrom(int lowfd)
|
||||||
|
|
||||||
/* Check for a /proc/$$/fd directory. */
|
/* Check for a /proc/$$/fd directory. */
|
||||||
len = snprintf(fdpath, sizeof(fdpath), "/proc/%ld/fd", (long)getpid());
|
len = snprintf(fdpath, sizeof(fdpath), "/proc/%ld/fd", (long)getpid());
|
||||||
if (len > 0 && (size_t)len <= sizeof(fdpath) && (dirp = opendir(fdpath))) {
|
if (len > 0 && (size_t)len < sizeof(fdpath) && (dirp = opendir(fdpath))) {
|
||||||
while ((dent = readdir(dirp)) != NULL) {
|
while ((dent = readdir(dirp)) != NULL) {
|
||||||
fd = strtol(dent->d_name, &endp, 10);
|
fd = strtol(dent->d_name, &endp, 10);
|
||||||
if (dent->d_name != endp && *endp == '\0' &&
|
if (dent->d_name != endp && *endp == '\0' &&
|
||||||
|
|
Loading…
Reference in New Issue