* Dick Porter (dick@ximian.com)
*
* (C) 2002 Ximian, Inc.
+ * Copyright 2011 Xamarin Inc
+ * Licensed under the MIT license. See LICENSE file in the project root for full license information.
*/
#ifndef _WAPI_IO_PRIVATE_H_
#include <config.h>
#include <glib.h>
-#include <glob.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 gboolean _wapi_lock_file_region (int fd, off_t offset, off_t length);
+extern gboolean _wapi_unlock_file_region (int fd, off_t offset, off_t length);
+extern void _wapi_file_details (gpointer handle_info);
+extern void _wapi_console_details (gpointer handle_info);
+extern void _wapi_pipe_details (gpointer handle_info);
+extern gpointer _wapi_stdhandle_create (int fd, const gchar *name);
+
/* 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 */
+ int fd;
guint32 security_attributes;
guint32 fileaccess;
guint32 sharemode;
guint32 attrs;
};
-struct _WapiHandlePrivate_file
-{
- int fd;
-};
-
struct _WapiHandle_find
{
- glob_t glob;
+ gchar **namelist;
+ gchar *dir_part;
+ int num;
size_t count;
};
-struct _WapiHandlePrivate_find
-{
- int dummy;
-};
-
-extern int _wapi_file_handle_to_fd (gpointer handle);
-
#endif /* _WAPI_IO_PRIVATE_H_ */