file_t struct