1 /* core_dump.h 2 3 Copyright 1999 Cygnus Solutions. 4 5 Written by Egor Duda <deo@logos-m.ru> 6 7 This file is part of Cygwin. 8 9 This software is a copyrighted work licensed under the terms of the 10 Cygwin license. Please consult the file "CYGWIN_LICENSE" for 11 details. */ 12 13 #ifndef _CYGWIN_CORE_DUMP_H 14 #define _CYGWIN_CORE_DUMP_H 15 16 #include <windows.h> 17 18 #define NOTE_INFO_PROCESS 1 19 #define NOTE_INFO_THREAD 2 20 #define NOTE_INFO_MODULE 3 21 22 struct win32_core_process_info 23 { 24 DWORD pid; 25 int signal; 26 int command_line_size; 27 char command_line[1]; 28 } 29 #ifdef __GNUC__ 30 __attribute__ ((packed)) 31 #endif 32 ; 33 34 struct win32_core_thread_info 35 { 36 DWORD tid; 37 BOOL is_active_thread; 38 CONTEXT thread_context; 39 } 40 #ifdef __GNUC__ 41 __attribute__ ((packed)) 42 #endif 43 ; 44 45 struct win32_core_module_info 46 { 47 void* base_address; 48 int module_name_size; 49 char module_name[1]; 50 } 51 #ifdef __GNUC__ 52 __attribute__ ((packed)) 53 #endif 54 ; 55 56 struct win32_pstatus 57 { 58 unsigned long data_type; 59 union 60 { 61 struct win32_core_process_info process_info; 62 struct win32_core_thread_info thread_info; 63 struct win32_core_module_info module_info; 64 } data ; 65 } 66 #ifdef __GNUC__ 67 __attribute__ ((packed)) 68 #endif 69 ; 70 71 typedef struct win32_pstatus win32_pstatus_t ; 72 73 #endif /* _CYGWIN_CORE_DUMP_H */ |