• Home
  • Raw
  • Download

Lines Matching full:fi

51   struct file_info *fi = data;  in print_info()  local
58 if (TT.sought_files[i].st_dev==fi->st_dev) in print_info()
59 if (TT.sought_files[i].st_ino==fi->st_ino) break; in print_info()
65 if (fi->pi.pid != TT.last_shown_pid) in print_info()
66 printf("%d\n", TT.last_shown_pid = fi->pi.pid); in print_info()
76 fi->pi.cmd, fi->pi.pid, getusername(fi->pi.uid), in print_info()
77 fi->fd, fi->rw, fi->locks, fi->type, fi->device, fi->size_off, in print_info()
78 fi->node, fi->name); in print_info()
88 static void fill_flags(struct file_info *fi) in fill_flags() argument
94 snprintf(toybuf, sizeof(toybuf), "/proc/%d/fdinfo/%s", fi->pi.pid, fi->fd); in fill_flags()
100 if (flags == O_RDONLY) fi->rw = 'r'; in fill_flags()
101 else if (flags == O_WRONLY) fi->rw = 'w'; in fill_flags()
102 else fi->rw = 'u'; in fill_flags()
104 snprintf(fi->size_off, sizeof(fi->size_off), "0t%lld", pos); in fill_flags()
130 struct file_info *fi = xzalloc(sizeof(struct file_info)); in add_socket() local
132 dlist_add_nomalloc(&TT.all_sockets, (struct double_list *)fi); in add_socket()
133 fi->st_ino = inode; in add_socket()
134 strcpy(fi->type, type); in add_socket()
135 return fi; in add_socket()
144 struct file_info *fi = add_socket(inode, "unix"); in scan_unix() local
147 fi->name = strdup(*name ? name : "socket"); in scan_unix()
165 struct file_info *fi = add_socket(inode, "netlink"); in scan_netlink() local
166 fi->name = in scan_netlink()
200 struct file_info *fi = add_socket(inode, af == 4 ? "IPv4" : "IPv6"); in scan_ip() local
205 fi->name = xmprintf(af == 4 ? in scan_ip()
211 fi->name = xmprintf(af == 4 ? "%s %s:%d->%s:%d" : "%s [%s]:%d->[%s]:%d", in scan_ip()
217 static int find_socket(struct file_info *fi, long inode) in find_socket() argument
237 fi->name = s->name ? strdup(s->name) : NULL; in find_socket()
238 strcpy(fi->type, s->type); in find_socket()
247 static void fill_stat(struct file_info *fi, const char *path) in fill_stat() argument
256 case S_IFBLK: strcpy(fi->type, "BLK"); break; in fill_stat()
257 case S_IFCHR: strcpy(fi->type, "CHR"); break; in fill_stat()
258 case S_IFDIR: strcpy(fi->type, "DIR"); break; in fill_stat()
259 case S_IFIFO: strcpy(fi->type, "FIFO"); break; in fill_stat()
260 case S_IFLNK: strcpy(fi->type, "LINK"); break; in fill_stat()
261 case S_IFREG: strcpy(fi->type, "REG"); break; in fill_stat()
262 case S_IFSOCK: strcpy(fi->type, "sock"); break; in fill_stat()
264 snprintf(fi->type, sizeof(fi->type), "0%03o", sb.st_mode & S_IFMT); in fill_stat()
268 if (S_ISSOCK(sb.st_mode)) find_socket(fi, sb.st_ino); in fill_stat()
273 snprintf(fi->device, sizeof(fi->device), "%d,%d", in fill_stat()
278 snprintf(fi->size_off, sizeof(fi->size_off), "%lld", in fill_stat()
282 snprintf(fi->node, sizeof(fi->node), "%ld", (long)sb.st_ino); in fill_stat()
285 fi->st_dev = sb.st_dev; in fill_stat()
286 fi->st_ino = sb.st_ino; in fill_stat()
291 struct file_info *fi = xzalloc(sizeof(struct file_info)); in new_file_info() local
293 dlist_add_nomalloc(&TT.files, (struct double_list *)fi); in new_file_info()
295 fi->pi = *pi; in new_file_info()
298 strcpy(fi->fd, fd); in new_file_info()
299 strcpy(fi->type, "unknown"); in new_file_info()
300 fi->rw = fi->locks = ' '; in new_file_info()
302 return fi; in new_file_info()
307 struct file_info *fi = new_file_info(pi, ""); in visit_symlink() local
311 snprintf(fi->fd, sizeof(fi->fd), "%s", name); in visit_symlink()
314 snprintf(fi->fd, sizeof(fi->fd), "%s", path); in visit_symlink()
315 fill_flags(fi); // Clobbers toybuf. in visit_symlink()
320 fill_stat(fi, toybuf); in visit_symlink()
321 if (!fi->name) { // We already have a name for things like sockets. in visit_symlink()
322 fi->name = xreadlink(toybuf); in visit_symlink()
323 if (!fi->name) { in visit_symlink()
324 fi->name = xmprintf("%s (readlink: %s)", toybuf, strerror(errno)); in visit_symlink()
347 struct file_info *fi; in visit_maps() local
354 fi = new_file_info(pi, "mem"); in visit_maps()
355 fi->name = strdup(chomp(line + name_pos)); in visit_maps()
356 fill_stat(fi, fi->name); in visit_maps()
370 struct file_info *fi = new_file_info(pi, "NOFD"); in visit_fds() local
372 fi->name = xmprintf("%s (opendir: %s)", toybuf, strerror(errno)); in visit_fds()