Skip to content
Syscall BSD#506

svc · unix #506

__nexus_create

Crée une nouvelle instance de nexus à partir d'un fournisseur enregistré, renvoyant un uuid auquel les clients pourront se lier.

Prototype

int __nexus_create(int ctl, uuid_t prov_uuid, uint32_t prov_uuid_len, uuid_t *nx_uuid, uint32_t nx_uuid_len);

Retour: int

Arguments

NameTypeDirDescription
ctlint-
prov_uuiduuid_t-
prov_uuid_lenuint32_t-
nx_uuiduuid_t-
nx_uuid_lenuint32_t-

Historique des versions

XNU tagmacOS#
xnu-8792.41.9macOS 13.0 Ventura506
xnu-10002.1.13macOS 14.0 Sonoma506
xnu-11215.1.10macOS 15.0 Sequoia506
xnu-11417.101.15macOS 15.4 Sequoia506
xnu-12377.1.9macOS 26.0 Tahoe506
xnu-10002.41.9—506
xnu-10002.61.3—506
xnu-10002.81.5—506
xnu-10063.101.15—506
xnu-10063.121.3—506
xnu-10063.141.1—506
xnu-11215.41.3—506
xnu-11215.61.5—506
xnu-11215.81.4—506
xnu-11417.121.6—506
xnu-11417.140.69—506
xnu-12377.101.15—506
xnu-12377.41.6—506
xnu-12377.61.12—506
xnu-12377.81.4—506
xnu-8019.80.24—506
xnu-8020.101.4—506
xnu-8020.121.3—506
xnu-8020.140.41—506
xnu-8792.61.2—506
xnu-8792.81.2—506
xnu-8796.101.5—506
xnu-8796.121.2—506
xnu-8796.141.3—506

Notes

Prend un uuid de fournisseur (enregistré auparavant via __nexus_register) et un blob d'attributs d'instance décrivant le nombre d'anneaux, la taille des emplacements et les drapeaux par instance. L'uuid d'instance renvoyé est ce que les clients passent à __channel_open. nehelper, par exemple, l'utilise pour faire tourner une instance flow_switch dédiée à un VPN particulier.

Détection

Non remonté par ES. L'ensemble des créateurs légitimes est restreint (nehelper, networkd, le noyau lui-même) ; l'audit repose sur des listes blanches de signatures de code.

API associées

__nexus_open__nexus_destroy__nexus_register__channel_open