+ char *ftype;
+ switch (sbuf.st_mode & S_IFMT) {
+ case S_IFSOCK: ftype = "socket"; break;
+ case S_IFLNK : ftype = "symlink"; break;
+ case S_IFBLK : ftype = "block device"; break;
+ case S_IFDIR : ftype = "directory"; break;
+ case S_IFCHR : ftype = "character device"; break;
+ case S_IFIFO : ftype = "fifo"; break;
+ default: ftype = "unknown file type"; break;
+ }