ss: check result of readlink

Don't ignore readlink failure.
This commit is contained in:
Stephen Hemminger 2011-06-29 15:58:37 -07:00
parent dc484542a9
commit 18445b3e92
1 changed files with 3 additions and 3 deletions

View File

@ -272,14 +272,14 @@ static void user_ent_hash_build(void)
const char *pattern = "socket:["; const char *pattern = "socket:[";
unsigned int ino; unsigned int ino;
char lnk[64]; char lnk[64];
int fd, n; int fd;
if (sscanf(d1->d_name, "%d%c", &fd, &crap) != 1) if (sscanf(d1->d_name, "%d%c", &fd, &crap) != 1)
continue; continue;
sprintf(name+pos, "%d", fd); sprintf(name+pos, "%d", fd);
n = readlink(name, lnk, sizeof(lnk)-1); if (readlink(name, lnk, sizeof(lnk)-1) < 0 ||
if (strncmp(lnk, pattern, strlen(pattern))) strncmp(lnk, pattern, strlen(pattern)))
continue; continue;
sscanf(lnk, "socket:[%u]", &ino); sscanf(lnk, "socket:[%u]", &ino);