projects
/
mono.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge pull request #1473 from esdrubal/sq
[mono.git]
/
mono
/
io-layer
/
wapi-private.h
diff --git
a/mono/io-layer/wapi-private.h
b/mono/io-layer/wapi-private.h
index 82225967bf017d9a860499de85507d8212989ae6..34de2f0fd992b1d42c6596df39d19755dbce88e2 100644
(file)
--- a/
mono/io-layer/wapi-private.h
+++ b/
mono/io-layer/wapi-private.h
@@
-12,19
+12,15
@@
#include <config.h>
#include <glib.h>
#include <config.h>
#include <glib.h>
+#include <sys/stat.h>
#include <mono/io-layer/handles.h>
#include <mono/io-layer/io.h>
#include <mono/io-layer/handles.h>
#include <mono/io-layer/io.h>
-/* Catch this here rather than corrupt the shared data at runtime */
-#if MONO_SIZEOF_SUNPATH==0
-#error configure failed to discover size of unix socket path
-#endif
-
/* Increment this whenever an incompatible change is made to the
* shared handle structure.
*/
/* Increment this whenever an incompatible change is made to the
* shared handle structure.
*/
-#define _WAPI_HANDLE_VERSION 1
1
+#define _WAPI_HANDLE_VERSION 1
2
typedef enum {
WAPI_HANDLE_UNUSED=0,
typedef enum {
WAPI_HANDLE_UNUSED=0,
@@
-46,9
+42,7
@@
typedef enum {
extern const char *_wapi_handle_typename[];
extern const char *_wapi_handle_typename[];
-#define _WAPI_SHARED_HANDLE(type) (type == WAPI_HANDLE_PROCESS || \
- type == WAPI_HANDLE_THREAD || \
- type == WAPI_HANDLE_NAMEDMUTEX || \
+#define _WAPI_SHARED_HANDLE(type) (type == WAPI_HANDLE_NAMEDMUTEX || \
type == WAPI_HANDLE_NAMEDSEM || \
type == WAPI_HANDLE_NAMEDEVENT)
type == WAPI_HANDLE_NAMEDSEM || \
type == WAPI_HANDLE_NAMEDEVENT)
@@
-97,7
+91,7
@@
struct _WapiHandleOps
* instead of using the normal handle signal mechanism.
* Returns the WaitForSingleObject return code.
*/
* instead of using the normal handle signal mechanism.
* Returns the WaitForSingleObject return code.
*/
- guint32 (*special_wait)(gpointer handle, guint32 timeout);
+ guint32 (*special_wait)(gpointer handle, guint32 timeout
, gboolean alertable
);
/* Called by WaitForSingleObject and WaitForMultipleObjects,
* if the handle in question needs some preprocessing before the
/* Called by WaitForSingleObject and WaitForMultipleObjects,
* if the handle in question needs some preprocessing before the
@@
-122,7
+116,7
@@
struct _WapiHandle_shared_ref
guint32 offset;
};
guint32 offset;
};
-#define _WAPI_HANDLE_INITIAL_COUNT
409
6
+#define _WAPI_HANDLE_INITIAL_COUNT
25
6
struct _WapiHandleUnshared
{
struct _WapiHandleUnshared
{
@@
-140,6
+134,8
@@
struct _WapiHandleUnshared
struct _WapiHandle_mutex mutex;
struct _WapiHandle_sem sem;
struct _WapiHandle_socket sock;
struct _WapiHandle_mutex mutex;
struct _WapiHandle_sem sem;
struct _WapiHandle_socket sock;
+ struct _WapiHandle_thread thread;
+ struct _WapiHandle_process process;
struct _WapiHandle_shared_ref shared;
} u;
};
struct _WapiHandle_shared_ref shared;
} u;
};
@@
-153,8
+149,6
@@
struct _WapiHandleShared
union
{
union
{
- struct _WapiHandle_thread thread;
- struct _WapiHandle_process process;
struct _WapiHandle_namedmutex namedmutex;
struct _WapiHandle_namedsem namedsem;
struct _WapiHandle_namedevent namedevent;
struct _WapiHandle_namedmutex namedmutex;
struct _WapiHandle_namedsem namedsem;
struct _WapiHandle_namedevent namedevent;
@@
-181,6
+175,9
@@
struct _WapiHandleSharedLayout
struct _WapiFileShare
{
struct _WapiFileShare
{
+#ifdef WAPI_FILE_SHARE_PLATFORM_EXTRA_DATA
+ WAPI_FILE_SHARE_PLATFORM_EXTRA_DATA
+#endif
dev_t device;
ino_t inode;
pid_t opened_by_pid;
dev_t device;
ino_t inode;
pid_t opened_by_pid;
@@
-190,6
+187,8
@@
struct _WapiFileShare
guint32 timestamp;
};
guint32 timestamp;
};
+typedef struct _WapiFileShare _WapiFileShare;
+
struct _WapiFileShareLayout
{
guint32 hwm;
struct _WapiFileShareLayout
{
guint32 hwm;