*/
extern guint8 *mono_trampoline_code [];
+typedef enum {
+ DEBUGGER_RUNTIME_FLAGS_NONE = 0,
+ DEBUGGER_RUNTIME_FLAGS_ATTACH_OK = 1
+} MonoDebuggerRuntimeFlags;
+
/*
* There's a global data symbol called `MONO_DEBUGGER__debugger_info' which
* contains pointers to global variables and functions which must be accessed
*/
struct _MonoDebuggerInfo {
guint64 magic;
- guint32 version;
+ guint32 major_version;
+ guint32 minor_version;
+ guint32 runtime_flags;
guint32 total_size;
guint32 symbol_table_size;
guint32 mono_trampoline_num;
void (**event_handler_ptr) (MonoDebuggerEvent event, guint64 data, guint64 arg);
void (*debugger_event_handler) (MonoDebuggerEvent event, guint64 data, guint64 arg);
gint32 *using_mono_debugger;
+ gint32 *interruption_request;
+
+ guint64 (*abort_runtime_invoke) (G_GNUC_UNUSED guint64 dummy1, G_GNUC_UNUSED guint64 dummy2);
+
+ guint32 *thread_abort_signal;
};
struct _MonoDebuggerMetadataInfo {