Skip to content
Syscall BSD#430

svc · unix #430

fileport_makeport

Encapsule un descripteur de fichier dans un port Mach transférable via XPC ou les ports de tâche.

Prototype

int fileport_makeport(int fd, user_addr_t portnamep);

Retour: int

Arguments

NameTypeDirDescription
fdint-
portnamepuser_addr_t-

Historique des versions

XNU tagmacOS#
xnu-1699.24.8macOS 10.7 Lion430
xnu-2050.18.24macOS 10.8 Mountain Lion430
xnu-2422.115.4macOS 10.9 Mavericks430
xnu-2782.40.9macOS 10.10 Yosemite430
xnu-3247.1.106macOS 10.11 El Capitan430
xnu-3789.1.32macOS 10.12 Sierra430
xnu-4570.1.46macOS 10.13 High Sierra430
xnu-4903.221.2macOS 10.14 Mojave430
xnu-6153.11.26macOS 10.15 Catalina430
xnu-1504.15.3432
xnu-1504.7.4432
xnu-1504.9.17432
xnu-1504.9.26432
xnu-1504.9.37432
xnu-1699.22.73430
xnu-1699.22.81430
xnu-1699.24.23430
xnu-1699.26.8430
xnu-1699.32.7430
xnu-2050.22.13430
xnu-2050.24.15430
xnu-2050.48.11430
xnu-2050.7.9430
xnu-2050.9.2430
xnu-2422.1.72430
xnu-2422.100.13430
xnu-2422.110.17430
xnu-2422.90.20430
xnu-2782.1.97430
xnu-2782.10.72430
xnu-2782.20.48430
xnu-2782.30.5430
xnu-3247.10.11430
xnu-3248.20.55430
xnu-3248.30.4430
xnu-3248.40.184430
xnu-3248.50.21430
xnu-3248.60.10430
xnu-3789.21.4430
xnu-3789.31.2430
xnu-3789.41.3430
xnu-3789.51.2430
xnu-3789.60.24430
xnu-3789.70.16430
xnu-4570.20.62430
xnu-4570.31.3430
xnu-4570.41.2430
xnu-4570.51.1430
xnu-4570.61.1430
xnu-4570.71.2430
xnu-4903.231.4430
xnu-4903.241.1430
xnu-4903.270.47430
xnu-6153.101.6430
xnu-6153.121.1430
xnu-6153.141.1430
xnu-6153.41.3430
xnu-6153.61.1430
xnu-6153.81.5430

Notes

Brique fondamentale qui permet à launchd, XPC et beaucoup de frameworks Apple de transférer des fichiers ouverts entre processus sans copier de données. Le port créé conserve une référence sur le fileglob jusqu'à consommation par le destinataire via fileport_makefd. Le fd d'origine reste valide.

Détection

syscall::fileport_makeport:entry en DTrace. Le trafic de droits de port est visible avec `lsmp -p <pid>`.

API associées

fileport_makefdmach_msgxpc_connection_send_messagedupclose