Ancillary Function Driver
# Ancillary Function Driver

Ancillary Function Driver (AFD) est le pilote de fonction auxiliaire, un service de Microsoft Windows, chargé de faire fonctionner les sockets BSD. Sous Windows (voir Winsock), l'application la plus célèbre qui utilise les sockets est Apache.

Dans l'interface graphique de Windows, le paramétrage de AFD se fait via le gestionnaire de périphériques (devmgmt.msc) et non pas dans services et applications (services.msc). Il est affiché dans la liste des pilotes non Plug-and-Play, sous le nom de Environnement de prise en charge réseau AFD (AFD Networking Support Environment). Attention : par défaut, les pilotes non Plug-and-Play ne sont pas affichés par le gestionnaire de périphériques.

Dans la base de registre, les paramètres sont dans CurrentControlSet\Services\AFD.

La DLL associée à AFD est afd.sys.

Les versions de Windows qui utilisent ce service sont :

* les futurs Vista et Longhorn
* Windows serveur 2003, Windows XP, Windows 2000, Windows NT 4.0 (serveur et station de travail)

## Groupe TDI

AFD fait partie du groupe TDI (Transport Driver Interface) ; les autres services de ce groupe sont : DHCP, cache DNS, lmhosts, WZCSVC (Wireless Zero Configuration SerViCes).

Le concept de groupe de services n'apparaît pas dans l'interface graphique de Windows ; il apparaît seulement dans la base de registre de windows.

## Raw socket : problèmes de sécurité et compatibilité

Les raw socket permettent d'agir directement sur IP sans passer par TCP et UDP ; pour cette raison, ils peuvent constituer un danger pour la sécurité d'un PC sous Windows et donc, depuis 2004, Microsoft a interdit cette fonctionnalité sur les dernières versions de Windows (Windows XP Service Pack 2 et versions postérieures). Cette amélioration de la sécurité peut avoir des conséquences sur la compatibilité de certains logiciels non Microsoft.

Dans certaines versions de Windows, le paramètre DisableRawSecurity dans la base de registre permet de désactiver ou d'activer les socket raw.

