2009-02-10 Zoltan Varga <vargaz@gmail.com>
[mono.git] / mono / io-layer / io-private.h
index 0fd2b4a7d4bec586e697c34a555b0913571306b9..b15f24e460f6c7212c7ee1413903ada329644916 100644 (file)
 
 #include <config.h>
 #include <glib.h>
+#ifdef HAVE_DIRENT_H
 #include <dirent.h>
+#endif
+
 #include <mono/io-layer/io.h>
+#include <mono/io-layer/wapi-private.h>
 
 extern struct _WapiHandleOps _wapi_file_ops;
 extern struct _WapiHandleOps _wapi_console_ops;
 extern struct _WapiHandleOps _wapi_find_ops;
 extern struct _WapiHandleOps _wapi_pipe_ops;
 
+extern void _wapi_file_details (gpointer handle_info);
+extern void _wapi_console_details (gpointer handle_info);
+extern void _wapi_pipe_details (gpointer handle_info);
+
 /* Currently used for both FILE, CONSOLE and PIPE handle types.  This may
  * have to change in future.
  */
 struct _WapiHandle_file
 {
-       guint32 filename;
+       gchar *filename;
+       struct _WapiFileShare *share_info;      /* Pointer into shared mem */
        guint32 security_attributes;
        guint32 fileaccess;
        guint32 sharemode;
        guint32 attrs;
-       dev_t device;
-       ino_t inode;
-};
-
-struct _WapiHandlePrivate_file
-{
-       WapiFDMapped fd_mapped;
-       gboolean async;
-       WapiOverlappedCB callback;
 };
 
 struct _WapiHandle_find
-{
-       int dummy;
-};
-
-struct _WapiHandlePrivate_find
 {
        gchar **namelist;
        gchar *dir_part;
@@ -54,11 +49,4 @@ struct _WapiHandlePrivate_find
        size_t count;
 };
 
-G_BEGIN_DECLS
-int _wapi_file_handle_to_fd (gpointer handle);
-gboolean _wapi_io_add_callback (gpointer handle,
-                               WapiOverlappedCB callback,
-                               guint64 flags);
-G_END_DECLS
-
 #endif /* _WAPI_IO_PRIVATE_H_ */