Skip to content
Syscall BSD#502

svc · unix #502

necp_client_action

Émet une commande sur un handle client NECP pour ajouter/retirer des paramètres ou récupérer les résultats de résolution.

Prototype

int necp_client_action(int necp_fd, uint32_t action, uuid_t client_id, size_t client_id_len, uint8_t *buffer, size_t buffer_size);

Retour: int

Arguments

NameTypeDirDescription
necp_fdint-
actionuint32_t-
client_iduuid_t-
client_id_lensize_t-
bufferuint8_t-
buffer_sizesize_t-

Historique des versions

XNU tagmacOS#
xnu-3789.1.32macOS 10.12 Sierra502
xnu-4570.1.46macOS 10.13 High Sierra502
xnu-4903.221.2macOS 10.14 Mojave502
xnu-6153.11.26macOS 10.15 Catalina502
xnu-7195.50.7.100.1macOS 11.0 Big Sur502
xnu-8019.41.5macOS 12.0 Monterey502
xnu-8792.41.9macOS 13.0 Ventura502
xnu-10002.1.13macOS 14.0 Sonoma502
xnu-11215.1.10macOS 15.0 Sequoia502
xnu-11417.101.15macOS 15.4 Sequoia502
xnu-12377.1.9macOS 26.0 Tahoe502
xnu-10002.41.9—502
xnu-10002.61.3—502
xnu-10002.81.5—502
xnu-10063.101.15—502
xnu-10063.121.3—502
xnu-10063.141.1—502
xnu-11215.41.3—502
xnu-11215.61.5—502
xnu-11215.81.4—502
xnu-11417.121.6—502
xnu-11417.140.69—502
xnu-12377.101.15—502
xnu-12377.41.6—502
xnu-12377.61.12—502
xnu-12377.81.4—502
xnu-3789.21.4—502
xnu-3789.31.2—502
xnu-3789.41.3—502
xnu-3789.51.2—502
xnu-3789.60.24—502
xnu-3789.70.16—502
xnu-4570.20.62—502
xnu-4570.31.3—502
xnu-4570.41.2—502
xnu-4570.51.1—502
xnu-4570.61.1—502
xnu-4570.71.2—502
xnu-4903.231.4—502
xnu-4903.241.1—502
xnu-4903.270.47—502
xnu-6153.101.6—502
xnu-6153.121.1—502
xnu-6153.141.1—502
xnu-6153.41.3—502
xnu-6153.61.1—502
xnu-6153.81.5—502
xnu-7195.101.1—502
xnu-7195.121.3—502
xnu-7195.141.2—502
xnu-7195.60.75—502
xnu-7195.81.3—502
xnu-8019.61.5—502
xnu-8019.80.24—502
xnu-8020.101.4—502
xnu-8020.121.3—502
xnu-8020.140.41—502
xnu-8792.61.2—502
xnu-8792.81.2—502
xnu-8796.101.5—502
xnu-8796.121.2—502
xnu-8796.141.3—502

Notes

Point d'entrée unique multiplexé utilisé par Network.framework (et in fine URLSession) pour chaque connexion sortante moderne. Les sous-actions comprennent NECP_CLIENT_ACTION_ADD (créer un client), _COPY_PARAMETERS, _COPY_RESULT, _COPY_LIST, _UPDATE, _REMOVE, _AGENT et la famille _SIGN/_VERIFY liée à Skywalk. Chaque client correspond à un uuid_t que le noyau retourne, que l'appelant attache ensuite à une socket via SO_NECP_CLIENTUUID. Le blob de résultat contient l'interface choisie, les informations NAT64, la chaîne de proxy et les QoS/quotas par flux.

Détection

NEFilterDataProvider est la couche en espace utilisateur empilée par-dessus ; les enquêteurs interceptent rarement necp_client_action directement. nettop -m necp donne une vue en temps réel des allocations de clients.

API associées

necp_opennecp_match_policysetsockoptconnectxnetagent_trigger