Skip to content
BSD syscall#505

svc · unix #505

__nexus_deregister

Removes a previously registered nexus provider after all its instances have been destroyed.

Prototype

int __nexus_deregister(int ctl, uuid_t prov_uuid, uint32_t prov_uuid_len);

Returns: int

Arguments

NameTypeDirDescription
ctlint-
prov_uuiduuid_t-
prov_uuid_lenuint32_t-

Version history

XNU tagmacOS#
xnu-8792.41.9macOS 13.0 Ventura505
xnu-10002.1.13macOS 14.0 Sonoma505
xnu-11215.1.10macOS 15.0 Sequoia505
xnu-11417.101.15macOS 15.4 Sequoia505
xnu-12377.1.9macOS 26.0 Tahoe505
xnu-10002.41.9505
xnu-10002.61.3505
xnu-10002.81.5505
xnu-10063.101.15505
xnu-10063.121.3505
xnu-10063.141.1505
xnu-11215.41.3505
xnu-11215.61.5505
xnu-11215.81.4505
xnu-11417.121.6505
xnu-11417.140.69505
xnu-12377.101.15505
xnu-12377.41.6505
xnu-12377.61.12505
xnu-12377.81.4505
xnu-8019.80.24505
xnu-8020.101.4505
xnu-8020.121.3505
xnu-8020.140.41505
xnu-8792.61.2505
xnu-8792.81.2505
xnu-8796.101.5505
xnu-8796.121.2505
xnu-8796.141.3505

Notes

Returns EBUSY if live instances reference the provider. Typically called when a DriverKit network driver unloads or when nehelper retires a VPN configuration. The provider uuid is freed and may be reused by a subsequent __nexus_register.

Detection

Not exposed by ES. Logged at high verbosity by the Skywalk subsystem (`log show --predicate 'subsystem == "com.apple.skywalk"'`).

Related APIs

__nexus_register__nexus_destroy__nexus_open__nexus_get_opt