Delen via


Een filtermodule koppelen

Om het proces van het invoegen van een filtermodule in een stuurprogrammastack te starten, roept NDIS de FilterAttach-functie van een filterstuurprogramma aan. Aan het begin van de uitvoering in de functie FilterAttach voert de filtermodule de status Koppelen in. Zie Een stuurprogrammastack startenvoor meer informatie over het koppelen van een filtermodule aan een stuurprogrammastack.

Een filterstuurprogramma gebruikt het handvat dat NDIS doorgeeft bij de NdisFilterHandle parameter van FilterAttach in alle toekomstige NdisXxx functieaanroepen die naar deze filtermodule verwijzen. Dergelijke functies omvatten statusindicaties, aanvragen verzenden, indicaties ontvangen en OID-aanvragen.

Terwijl een filtermodule zich in de status Verbinden bevindt, is het stuurprogramma:

  • Hiermee maakt u een contextgebied voor de filtermodule en wijst u buffergroepen en andere filtermodulespecifieke resources toe. Zie Filter Driver Buffer Managementvoor meer informatie over buffergroepen.

  • Roept de NdisFSetAttributes--functie aan met behulp van de NdisFilterHandle--waarde die NDIS heeft doorgegeven aan FilterAttach. De parameter FilterModuleContext van NdisFSetAttributes geeft het contextgebied van het filterstuurprogramma voor deze filtermodule op. NDIS geeft dit contextgebied door aan de FilterXxx-functies van het filterstuurprogramma.

  • Lees eventueel configuratieparameters voor deze filtermodule uit het register. Zie Toegang tot configuratiegegevens voor een filterstuurprogrammavoor meer informatie.

  • Als de voorgaande bewerkingen zijn voltooid, bevindt de filtermodule zich in de status Onderbroken.

  • Als de voorgaande bewerkingen zijn mislukt, moet het filterstuurprogramma alle resources vrijgeven die zijn toegewezen in de functie FilterAttach en moet de filtermodule worden geretourneerd naar de status Losgekoppelde.

  • Retourneert NDIS_STATUS_SUCCESS of een geschikte foutcode. Als het stuurprogramma een foutcode retourneert, beëindigt NDIS de stuurprogrammastack.

Opmerking Het register kan een vlag bevatten, die aangeeft dat een filtermodule optioneel is. Als een optionele filtermodule niet wordt gekoppeld, beëindigt NDIS de rest van de stuurprogrammastack niet.

Een filterstuurprogramma kan in de toekenningsstatus Attaching geen aanvragen verzenden, ontvangen gegevens aangeven, OID-aanvragen indienen of statusindicaties maken. Verzend- en ontvangstbewerkingen worden ondersteund in de Actieve en Onderbreken toestanden. OID-aanvragen en statusindicaties worden ondersteund in de Gepauzeerd, Opnieuw opstarten, Actiefen Pauzeren statusen.

NDIS roept de functie FilterDetach aan om een filtermodule los te koppelen die NDIS heeft gekoppeld met FilterAttach. Zie Een filtermodule loskoppelenvoor meer informatie.