2 #ifndef _MONO_METADATA_W32PROCESS_UNIX_INTERNALS_H_
3 #define _MONO_METADATA_W32PROCESS_UNIX_INTERNALS_H_
9 * FOR EXCLUSIVE USE BY w32process-unix.c
12 #if defined(PLATFORM_MACOSX)
13 #define USE_OSX_BACKEND
14 #elif (defined(__OpenBSD__) || defined(__FreeBSD__)) && defined(HAVE_LINK_H)
15 #define USE_BSD_BACKEND
16 #elif defined(__HAIKU__)
17 #define USE_HAIKU_BACKEND
19 #define USE_DEFAULT_BACKEND
23 gpointer address_start;
26 gpointer address_offset;
30 } MonoW32ProcessModule;
33 mono_w32process_get_name (pid_t pid);
36 mono_w32process_get_modules (pid_t pid);
39 mono_w32process_module_free (MonoW32ProcessModule *module)
41 g_free (module->perms);
42 g_free (module->filename);
47 * Used to look through the GSList* returned by mono_w32process_get_modules
50 mono_w32process_module_equals (gconstpointer a, gconstpointer b)
52 MonoW32ProcessModule *want = (MonoW32ProcessModule *)a;
53 MonoW32ProcessModule *compare = (MonoW32ProcessModule *)b;
54 return (want->device == compare->device && want->inode == compare->inode) ? 0 : 1;
57 #endif /* _MONO_METADATA_W32PROCESS_UNIX_INTERNALS_H_ */