ntdll: Move DbgUiIssueRemoteBreakin() to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
245efd04e1
commit
8e5d304278
|
@ -1788,16 +1788,5 @@ void WINAPI DbgUiRemoteBreakin( void *arg )
|
|||
*/
|
||||
NTSTATUS WINAPI DbgUiIssueRemoteBreakin( HANDLE process )
|
||||
{
|
||||
apc_call_t call;
|
||||
apc_result_t result;
|
||||
NTSTATUS status;
|
||||
|
||||
TRACE( "(%p)\n", process );
|
||||
|
||||
memset( &call, 0, sizeof(call) );
|
||||
|
||||
call.type = APC_BREAK_PROCESS;
|
||||
status = unix_funcs->server_queue_process_apc( process, &call, &result );
|
||||
if (status) return status;
|
||||
return result.break_process.status;
|
||||
return unix_funcs->DbgUiIssueRemoteBreakin( process );
|
||||
}
|
||||
|
|
|
@ -1036,6 +1036,7 @@ static struct unix_funcs unix_funcs =
|
|||
NtWaitForSingleObject,
|
||||
NtWriteVirtualMemory,
|
||||
NtYieldExecution,
|
||||
DbgUiIssueRemoteBreakin,
|
||||
get_main_args,
|
||||
get_paths,
|
||||
get_dll_path,
|
||||
|
@ -1072,7 +1073,6 @@ static struct unix_funcs unix_funcs =
|
|||
wine_server_call,
|
||||
server_select,
|
||||
server_wait,
|
||||
server_queue_process_apc,
|
||||
server_send_fd,
|
||||
server_get_unix_fd,
|
||||
server_fd_to_handle,
|
||||
|
|
|
@ -727,7 +727,7 @@ unsigned int CDECL server_wait( const select_op_t *select_op, data_size_t size,
|
|||
/***********************************************************************
|
||||
* server_queue_process_apc
|
||||
*/
|
||||
unsigned int CDECL server_queue_process_apc( HANDLE process, const apc_call_t *call, apc_result_t *result )
|
||||
unsigned int server_queue_process_apc( HANDLE process, const apc_call_t *call, apc_result_t *result )
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
|
@ -1556,6 +1556,23 @@ size_t server_init_thread( void *entry_point, BOOL *suspend )
|
|||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* DbgUiIssueRemoteBreakin
|
||||
*/
|
||||
NTSTATUS WINAPI DbgUiIssueRemoteBreakin( HANDLE process )
|
||||
{
|
||||
apc_call_t call;
|
||||
apc_result_t result;
|
||||
NTSTATUS status;
|
||||
|
||||
memset( &call, 0, sizeof(call) );
|
||||
call.type = APC_BREAK_PROCESS;
|
||||
status = server_queue_process_apc( process, &call, &result );
|
||||
if (status) return status;
|
||||
return result.break_process.status;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
* NtDuplicateObject
|
||||
*/
|
||||
|
|
|
@ -83,7 +83,6 @@ extern unsigned int CDECL server_select( const select_op_t *select_op, data_size
|
|||
user_apc_t *user_apc ) DECLSPEC_HIDDEN;
|
||||
extern unsigned int CDECL server_wait( const select_op_t *select_op, data_size_t size, UINT flags,
|
||||
const LARGE_INTEGER *timeout ) DECLSPEC_HIDDEN;
|
||||
extern unsigned int CDECL server_queue_process_apc( HANDLE process, const apc_call_t *call, apc_result_t *result ) DECLSPEC_HIDDEN;
|
||||
extern void CDECL server_send_fd( int fd ) DECLSPEC_HIDDEN;
|
||||
extern int CDECL server_get_unix_fd( HANDLE handle, unsigned int wanted_access, int *unix_fd,
|
||||
int *needs_close, enum server_fd_type *type,
|
||||
|
@ -127,6 +126,8 @@ extern NTSTATUS context_from_server( CONTEXT *to, const context_t *from ) DECLSP
|
|||
extern void wait_suspend( CONTEXT *context ) DECLSPEC_HIDDEN;
|
||||
extern NTSTATUS set_thread_context( HANDLE handle, const context_t *context, BOOL *self ) DECLSPEC_HIDDEN;
|
||||
extern NTSTATUS get_thread_context( HANDLE handle, context_t *context, unsigned int flags, BOOL *self ) DECLSPEC_HIDDEN;
|
||||
extern unsigned int server_queue_process_apc( HANDLE process, const apc_call_t *call,
|
||||
apc_result_t *result ) DECLSPEC_HIDDEN;
|
||||
extern NTSTATUS alloc_object_attributes( const OBJECT_ATTRIBUTES *attr, struct object_attributes **ret,
|
||||
data_size_t *ret_len ) DECLSPEC_HIDDEN;
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ struct ldt_copy;
|
|||
struct msghdr;
|
||||
|
||||
/* increment this when you change the function table */
|
||||
#define NTDLL_UNIXLIB_VERSION 29
|
||||
#define NTDLL_UNIXLIB_VERSION 30
|
||||
|
||||
struct unix_funcs
|
||||
{
|
||||
|
@ -131,6 +131,9 @@ struct unix_funcs
|
|||
SIZE_T size, SIZE_T *bytes_written );
|
||||
NTSTATUS (WINAPI *NtYieldExecution)(void);
|
||||
|
||||
/* other Win32 API functions */
|
||||
NTSTATUS (WINAPI *DbgUiIssueRemoteBreakin)( HANDLE process );
|
||||
|
||||
/* environment functions */
|
||||
void (CDECL *get_main_args)( int *argc, char **argv[], char **envp[] );
|
||||
void (CDECL *get_paths)( const char **builddir, const char **datadir, const char **configdir );
|
||||
|
@ -183,7 +186,6 @@ struct unix_funcs
|
|||
user_apc_t *user_apc );
|
||||
unsigned int (CDECL *server_wait)( const select_op_t *select_op, data_size_t size, UINT flags,
|
||||
const LARGE_INTEGER *timeout );
|
||||
unsigned int (CDECL *server_queue_process_apc)( HANDLE process, const apc_call_t *call, apc_result_t *result );
|
||||
void (CDECL *server_send_fd)( int fd );
|
||||
int (CDECL *server_get_unix_fd)( HANDLE handle, unsigned int wanted_access, int *unix_fd,
|
||||
int *needs_close, enum server_fd_type *type, unsigned int *options );
|
||||
|
|
Loading…
Reference in New Issue