Skip to content
BSD syscall#432

svc · unix #432

audit_session_port

Returns a send right to the audit session port for an arbitrary session id.

Prototype

int audit_session_port(au_asid_t asid, user_addr_t portnamep);

Returns: int

Arguments

NameTypeDirDescription
asidau_asid_t-
portnamepuser_addr_t-

Version history

XNU tagmacOS#
xnu-1699.24.8macOS 10.7 Lion432
xnu-2050.18.24macOS 10.8 Mountain Lion432
xnu-2422.115.4macOS 10.9 Mavericks432
xnu-2782.40.9macOS 10.10 Yosemite432
xnu-3247.1.106macOS 10.11 El Capitan432
xnu-3789.1.32macOS 10.12 Sierra432
xnu-4570.1.46macOS 10.13 High Sierra432
xnu-4903.221.2macOS 10.14 Mojave432
xnu-6153.11.26macOS 10.15 Catalina432
xnu-7195.50.7.100.1macOS 11.0 Big Sur432
xnu-8019.41.5macOS 12.0 Monterey432
xnu-8792.41.9macOS 13.0 Ventura432
xnu-10002.1.13macOS 14.0 Sonoma432
xnu-11215.1.10macOS 15.0 Sequoia432
xnu-11417.101.15macOS 15.4 Sequoia432
xnu-12377.1.9macOS 26.0 Tahoe432
xnu-10002.41.9432
xnu-10002.61.3432
xnu-10002.81.5432
xnu-10063.101.15432
xnu-10063.121.3432
xnu-10063.141.1432
xnu-11215.41.3432
xnu-11215.61.5432
xnu-11215.81.4432
xnu-11417.121.6432
xnu-11417.140.69432
xnu-12377.101.15432
xnu-12377.41.6432
xnu-12377.61.12432
xnu-12377.81.4432
xnu-1699.22.73432
xnu-1699.22.81432
xnu-1699.24.23432
xnu-1699.26.8432
xnu-1699.32.7432
xnu-2050.22.13432
xnu-2050.24.15432
xnu-2050.48.11432
xnu-2050.7.9432
xnu-2050.9.2432
xnu-2422.1.72432
xnu-2422.100.13432
xnu-2422.110.17432
xnu-2422.90.20432
xnu-2782.1.97432
xnu-2782.10.72432
xnu-2782.20.48432
xnu-2782.30.5432
xnu-3247.10.11432
xnu-3248.20.55432
xnu-3248.30.4432
xnu-3248.40.184432
xnu-3248.50.21432
xnu-3248.60.10432
xnu-3789.21.4432
xnu-3789.31.2432
xnu-3789.41.3432
xnu-3789.51.2432
xnu-3789.60.24432
xnu-3789.70.16432
xnu-4570.20.62432
xnu-4570.31.3432
xnu-4570.41.2432
xnu-4570.51.1432
xnu-4570.61.1432
xnu-4570.71.2432
xnu-4903.231.4432
xnu-4903.241.1432
xnu-4903.270.47432
xnu-6153.101.6432
xnu-6153.121.1432
xnu-6153.141.1432
xnu-6153.41.3432
xnu-6153.61.1432
xnu-6153.81.5432
xnu-7195.101.1432
xnu-7195.121.3432
xnu-7195.141.2432
xnu-7195.60.75432
xnu-7195.81.3432
xnu-8019.61.5432
xnu-8019.80.24432
xnu-8020.101.4432
xnu-8020.121.3432
xnu-8020.140.41432
xnu-8792.61.2432
xnu-8792.81.2432
xnu-8796.101.5432
xnu-8796.121.2432
xnu-8796.141.3432

Notes

Given an asid_t and a flags word, audit_session_port() hands back the Mach port representing that session, allowing privileged processes (loginwindow, sessionlogoutd) to manage sessions they didn't create. The kernel checks that the caller either owns the session or holds the audit_control privilege. The returned port can be passed to audit_session_join() to enter the session.

Detection

Best observed by hooking the MACF policy mac_proc_check_get_audit_session_port, or via DTrace fbt::audit_session_port:entry. Calls from non-system binaries are extremely rare and warrant inspection.

Related APIs

audit_session_selfaudit_session_joingetaudit_addr