let file_kind_of_char = function
| 'f' -> Some Unix.S_REG (* Regular file *)
| 'd' -> Some Unix.S_DIR (* Directory *)
| 'c' -> Some Unix.S_CHR (* Character device *)
| 'b' -> Some Unix.S_BLK (* Block device *)
| 'h' | 'L' -> Some Unix.S_LNK (* Symbolic link *)
| 'p' -> Some Unix.S_FIFO (* Named pipe *)
| 'S' -> Some Unix.S_SOCK (* Socket *)
| _ -> None