summary refs log tree commit diff stats
path: root/src/common/dirent-win32.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/dirent-win32.h')
-rw-r--r--src/common/dirent-win32.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/common/dirent-win32.h b/src/common/dirent-win32.h
new file mode 100644
index 00000000..cbb753e6
--- /dev/null
+++ b/src/common/dirent-win32.h
@@ -0,0 +1,28 @@
+#ifndef DIRENT_H
+#define DIRENT_H
+
+#include <windows.h>
+#include <string.h>
+#include <assert.h>
+
+typedef struct dirent
+{
+   char d_name[MAX_PATH + 1]; /* current dir entry (multi-byte char string) */
+   WIN32_FIND_DATAA data;     /* file attributes */
+}  dirent;
+
+typedef struct DIR
+{
+   dirent current;            /* Current directory entry */
+   int    cached;             /* Indicates un-processed entry in memory */
+   HANDLE search_handle;      /* File search handle */
+   char   patt[MAX_PATH + 3]; /* search pattern (3 = pattern + "\\*\0") */
+} DIR;
+
+/* Forward declarations */
+DIR *opendir (const char *dirname);
+struct dirent *readdir (DIR *dirp);
+int closedir (DIR *dirp);
+void rewinddir(DIR* dirp);
+
+#endif /*DIRENT_H*/