summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/fhandler_virtual.h
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2014-10-09 13:24:37 +0000
committerCorinna Vinschen <corinna@vinschen.de>2014-10-09 13:24:37 +0000
commit54338f169f98409a0efd45a323cc9f358a78ac12 (patch)
treed8698a3200918f95346a5d76dd69ce918f813d18 /winsup/cygwin/fhandler_virtual.h
parent633cf9b5dd846d6dbd5ab6102de24cf2a7c4582c (diff)
downloadcygnal-54338f169f98409a0efd45a323cc9f358a78ac12.tar.gz
cygnal-54338f169f98409a0efd45a323cc9f358a78ac12.tar.bz2
cygnal-54338f169f98409a0efd45a323cc9f358a78ac12.zip
* 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.
Diffstat (limited to 'winsup/cygwin/fhandler_virtual.h')
-rw-r--r--winsup/cygwin/fhandler_virtual.h25
1 files changed, 24 insertions, 1 deletions
diff --git a/winsup/cygwin/fhandler_virtual.h b/winsup/cygwin/fhandler_virtual.h
index 9747dd2cb..f92c06b89 100644
--- a/winsup/cygwin/fhandler_virtual.h
+++ b/winsup/cygwin/fhandler_virtual.h
@@ -1,6 +1,6 @@
/* fhandler_virtual.h: Header for virtual fhandlers
- Copyright 2009, 2010, 2011 Red Hat, Inc.
+ Copyright 2009, 2010, 2011, 2014 Red Hat, Inc.
This file is part of Cygwin.
@@ -20,3 +20,26 @@ struct virt_tab_t {
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;
+}