Delen via


De functie NotifyTeredoPortChange

De functie NotifyTeredoPortChange registreert het stuurprogramma dat moet worden gewaarschuwd voor wijzigingen in het UDP-poortnummer dat de Teredo-client gebruikt voor de Teredo-servicepoort op een lokale computer.

Syntaxis

NETIOAPI_API NotifyTeredoPortChange(
  _In_    PTEREDO_PORT_CHANGE_CALLBACK Callback,
  _In_    PVOID                        CallerContext,
  _In_    BOOLEAN                      InitialNotification,
  _Inout_ HANDLE *                     NotificationHandle
);

Parameters

  • Callback [in]
    Een aanwijzer naar de functie die moet worden aangeroepen wanneer een Teredo-clientpoort wordt gewijzigd. Deze functie wordt aangeroepen wanneer een melding voor teredo-poortwijziging wordt ontvangen.

  • CallerContext [in]
    Een gebruikerscontext die wordt doorgegeven aan de callback-functie die is opgegeven in de callback-parameter wanneer een melding voor teredo-poortwijziging wordt ontvangen.

  • InitialNotification [in]
    Een waarde die aangeeft of de callback direct moet worden aangeroepen nadat de registratie voor melding over het wijzigen van stuurprogramma's is voltooid. Deze eerste melding geeft niet aan dat er een wijziging is opgetreden in de Teredo-clientpoort. Deze parameter biedt een bevestiging dat de callback is geregistreerd.

  • NotificationHandle [in, uit]
    Een aanwijzer die wordt gebruikt om een ingang te retourneren die uw stuurprogramma later kan gebruiken om de registratie van de melding voor het wijzigen van het stuurprogramma ongedaan te maken. Bij succes wordt een meldingsgreep geretourneerd in deze parameter. Als er een fout optreedt, wordt NULL- geretourneerd.

Retourwaarde

NotifyTeredoPortChange- retourneert STATUS_SUCCESS als de functie slaagt.

Als de functie mislukt, retourneert NotifyTeredoPortChange een van de volgende foutcodes:

Retourcode Beschrijving
ERROR_INVALID_HANDLE

Er is een interne fout opgetreden waarbij er een ongeldige ingang is opgetreden.

STATUS_INVALID_PARAMETER

Er is een ongeldige parameter doorgegeven aan de functie. Deze fout wordt geretourneerd als de parameter Callback een NULL- aanwijzer is.

STATUS_NOT_ENOUGH_MEMORY

Er was onvoldoende geheugen.

Overige

Gebruik de functie FormatMessage om de berichttekenreeks voor de geretourneerde fout op te halen.

Opmerkingen

De aanroep van de callback-functie die is opgegeven in de parameter Callback wordt geserialiseerd. De callback-functie moet worden gedefinieerd als een functie van het type VOID. De parameters die aan de callback-functie worden doorgegeven, bevatten het volgende.

Parameter Beschrijving

IN PVOID CallerContext

De parameter CallerContext die wordt doorgegeven aan de functie NotifyTeredoPortChange wanneer het stuurprogramma wordt geregistreerd voor wijzigingsmeldingen.

IN USHORT Port

Het UDP-poortnummer dat de Teredo-client momenteel gebruikt. Deze parameter is nul wanneer de MIB_NOTIFICATION_TYPE waarde die wordt doorgegeven in de parameter NotificationType voor de callback-functie is ingesteld op MibInitialNotification. Deze situatie kan alleen optreden als de parameter InitialNotification die wordt doorgegeven aan NotifyTeredoPortChange- is ingesteld op TRUE- bij het registreren van het stuurprogramma voor wijzigingsmeldingen.

IN MIB_NOTIFICATION_TYPE NotificationType

Het meldingstype. Dit lid kan een van de waarden van het MIB_NOTIFICATION_TYPE opsommingstype zijn.

Uw stuurprogramma kan de GetTeredoPort- functie gebruiken om het oorspronkelijke UDP-poortnummer op te halen dat door de Teredo-client wordt gebruikt voor de Teredo-servicepoort.

De Teredo-poort is dynamisch en kan op elk gewenst moment wijzigen dat de Teredo-client opnieuw wordt opgestart op de lokale computer. Een stuurprogramma kan worden geregistreerd wanneer de teredo-servicepoort wordt gewijzigd door de NotifyTeredoPortChange--functie aan te roepen.

De Teredo-client maakt ook gebruik van statische UDP-poort 3544 voor het luisteren naar multicast-verkeer dat wordt verzonden op multicast IPv4-adres 224.0.0.253, zoals gedefinieerd in RFC 4380. Zie Teredo: Tunneling IPv6 via UDPthrough Network Address Translations (NAT's)voor meer informatie.

De functie NotifyTeredoPortChange wordt voornamelijk gebruikt door firewallstuurprogramma's om de juiste uitzonderingen te configureren om binnenkomend en uitgaand Teredo-verkeer in te schakelen.

Als u de registratie van het stuurprogramma voor wijzigingsmeldingen ongedaan wilt maken, roept u de functie CancelMibChangeNotify2 aan en geeft u de parameter NotificationHandle door die de functie NotifyTeredoPortChange retourneert.

Eisen

Doelplatform

Universal

Versie

Beschikbaar in Windows Vista en latere versies van de Windows-besturingssystemen.

Rubriek

Netioapi.h (inclusief Netioapi.h)

Bibliotheek

Netio.lib

IRQL

< DISPATCH_LEVEL

Zie ook

CancelMibChangeNotify2

GetTeredoPort-

NotifyStableUnicastIpAddressTable