newlib/winsup/cygwin/fhandler_virtual.h
Corinna Vinschen 54338f169f * fhandler_proc.cc (fhandler_proc::readdir): Set dirent d_type.
* fhandler_process.cc (fhandler_process::readdir): Ditto.
	* fhandler_procnet.cc (fhandler_procnet::readdir): Ditto.
	* fhandler_procsys.cc (fhandler_procsys::readdir): Ditto.
	* fhandler_procsysvipc.cc (fhandler_procsysvipc::readdir): Ditto.
	*  fhandler_virtual.h (virt_ftype_to_dtype): Define new inline function
	to generate dirent d_type from virtual_ftype_t.
2014-10-09 13:24:37 +00:00

46 lines
935 B
C

/* fhandler_virtual.h: Header for virtual fhandlers
Copyright 2009, 2010, 2011, 2014 Red Hat, Inc.
This file is part of Cygwin.
This software is a copyrighted work licensed under the terms of the
Cygwin license. Please consult the file "CYGWIN_LICENSE" for
details. */
struct virt_tab_t {
const char *name;
size_t name_len;
fh_devices fhandler;
virtual_ftype_t type;
off_t (*format_func)(void *data, char *&);
};
#define _VN(s) s, sizeof (s) - 1
extern virt_tab_t *virt_tab_search (const char *, bool, const virt_tab_t *,
size_t);
static inline unsigned char
virt_ftype_to_dtype (virtual_ftype_t type)
{
unsigned char d_type;
switch (type)
{
case virt_directory:
d_type = DT_DIR;
break;
case virt_symlink:
d_type = DT_LNK;
break;
case virt_file:
d_type = DT_REG;
break;
default:
d_type = DT_UNKNOWN;
break;
}
return d_type;
}