lib: xpc: add support for event messages
This commit is contained in:
@@ -54,14 +54,24 @@ static kern_status_t __msg_recv(
|
||||
return status;
|
||||
}
|
||||
|
||||
if (!xpc_msg_header_validate(&out->msg_header)) {
|
||||
return KERN_INVALID_ARGUMENT;
|
||||
switch (msg.msg_type) {
|
||||
case KERN_MSG_TYPE_DATA:
|
||||
if (!xpc_msg_header_validate(&out->msg_header)) {
|
||||
return KERN_INVALID_ARGUMENT;
|
||||
}
|
||||
break;
|
||||
case KERN_MSG_TYPE_EVENT:
|
||||
out->msg_event = msg.msg_event;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
out->msg_sender.e_channel = channel;
|
||||
out->msg_sender.e_task = msg.msg_sender;
|
||||
out->msg_sender.e_port = msg.msg_endpoint;
|
||||
out->msg_sender.e_msg = msg.msg_id;
|
||||
out->msg_type = msg.msg_type;
|
||||
|
||||
return KERN_OK;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user