#include <mach/arcade_upcall_server.h>

mach/arcade_upcall_server.h Kernel.framework

includes: Kernel/string.h, Kernel/mach/ndr.h, Kernel/mach/boolean.h, Kernel/mach/kern_return.h, Kernel/mach/notify.h, mach/mach_types.h, mach/message.h, Kernel/mach/mig_errors.h, mach/port.h, Availability.h, Kernel/mach/std_types.h, Kernel/mach/mig.h, Kernel/mach/mig.h, mach/mach_types.h
3 macros · 3 functions · 1 struct · 1 variable

macro_arcade_upcall_server_

#define _arcade_upcall_server_ 

macroarcade_upcall_MSG_COUNT

#define arcade_upcall_MSG_COUNT 1

functionarcade_upcall

extern MIG_SERVER_ROUTINE kern_return_t arcade_upcall(
	mach_port_t arcade_upcall,
	vm_offset_t path,
	mach_msg_type_number_t pathCnt,
	uint64_t offset,
	boolean_t *should_kill
)
claude-fable-5, 2026-08-24 · not from Apple sources · verified against xnu osfmk/mach/arcade_upcall.defs, osfmk/kern/arcade.c
Server-interface routine of the arcade_upcall MIG subsystem (subsystem id 61471), implemented by the Arcade validation service in user space, not by the kernel. The kernel upcalls it from arcade_ast (osfmk/kern/arcade.c) on the registered upcall port, passing the executable path of the current process as out-of-line data (path, pathCnt bytes) and the file offset of the executable within its file. The service validates the process's Arcade entitlement and sets *should_kill to direct the kernel to terminate the process.

functionarcade_upcall_server

extern boolean_t arcade_upcall_server(
	mach_msg_header_t *InHeadP,
	mach_msg_header_t *OutHeadP
)
claude-fable-5, 2026-08-24 · not from Apple sources · verified against xnu osfmk/mach/arcade_upcall.defs
MIG-generated demultiplexer for the arcade_upcall subsystem (osfmk/mach/arcade_upcall.defs). If the request message at InHeadP belongs to the subsystem, calls the matching handler (arcade_upcall), formats the reply message at OutHeadP, and returns TRUE; returns FALSE, with a MIG_BAD_ID error reply, for messages that do not belong to the subsystem.

functionarcade_upcall_server_routine

extern mig_routine_t arcade_upcall_server_routine(mach_msg_header_t *InHeadP)
claude-fable-5, 2026-08-24 · not from Apple sources · verified against xnu osfmk/mach/arcade_upcall.defs
Returns the MIG dispatch function for the arcade_upcall subsystem request whose msgh_id is found in InHeadP, or a null pointer if the message is not a request of the subsystem. Alternative to the combined demultiplexer for servers that look up and invoke the handler themselves.

structarcade_upcall_subsystem

Description of this subsystem, for use in direct RPC
size 72, align 8
mig_server_routine_tserverServer routine
mach_msg_id_tstartMin routine number
mach_msg_id_tendMax routine number + 1
unsigned intmaxsizeMax msg size
vm_address_treservedReserved
struct routine_descriptor[1]routine

variablearcade_upcall_subsystem

extern const struct arcade_upcall_subsystem { mig_server_routine_t server; /* Server routine */ mach_msg_id_t start; /* Min routine number */ mach_msg_id_t end; /* Max routine number + 1 */ unsigned int maxsize; /* Max msg size */ vm_address_t reserved; /* Reserved */ struct routine_descriptor /* Array of routine descriptors */ routine[1]; } arcade_upcall_subsystem

macrosubsystem_to_name_map_arcade_upcall

#define subsystem_to_name_map_arcade_upcall { "arcade_upcall", 61471 }