| |
| |
| |
| |
| |
| |
| #include <psxtypes/psxtypes.h> |
| #include <ntapi/ntapi.h> |
| |
| #include <toksvc/toksvc.h> |
| #include "toksvc_driver_impl.h" |
| #include "toksvc_daemon_impl.h" |
| |
| int32_t toks_service_abort(struct toks_driver_ctx * dctx) |
| { |
| int32_t status; |
| void * hport; |
| struct _nt_tty_sync_msg msg; |
| |
| hport = toks_get_driver_hservice(dctx); |
| |
| ntapi->tt_aligned_block_memset( |
| &msg,0,sizeof(msg)); |
| |
| msg.header.msg_type = NT_LPC_NEW_MESSAGE; |
| msg.header.data_size = sizeof(msg.data); |
| msg.header.msg_size = sizeof(msg); |
| msg.data.ttyinfo.opcode = TOKS_DAEMON_ABORT; |
| |
| if ((status = ntapi->zw_request_wait_reply_port(hport,&msg,&msg))) |
| return status; |
| |
| return (msg.data.ttyinfo.status) |
| ? msg.data.ttyinfo.status |
| : NT_STATUS_SUCCESS; |
| } |