nl:: Inet:: InterfaceAddressDecrypt
#include <src/inet/InetInterface.h>
TensorBoard für die Liste der IP-Adressen der Systemnetzwerkschnittstelle.
Fazit
Verwenden Sie Objekte dieser Klasse, um die Liste der IP-Adressen der Systemnetzwerkschnittstelle zu iterieren.
Methoden für eine einzelne Instanz dieser Klasse sind nicht threadsicher. Separate Instanzen können jedoch von mehreren Threads gleichzeitig verwendet werden.
Auf Multi-Thread-LwIP-Systemen sind Instanzen threadsicher im Vergleich zu anderen Threads, die auf den globalen LwIP-Status zugreifen. Voraussetzung ist, dass 1) andere Threads die LwIP-Core-Sperre beibehalten und dabei die Liste mit Netifs modifizieren, und 2) netif-Objekte selbst nie gelöscht werden.
Auf Socket-basierten Systemen ist die Iteration bei Änderungen der zugrunde liegenden Systemschnittstellen und/oder Adressen immer stabil.
Auf LwIP-Systemen ist die Iteration stabil, es sei denn, die Schnittstelle, die mit der aktuellen Adresse verknüpft ist, wird vorzeitig beendet.
Konstrukteur und Zerstörer |
|
---|---|
InterfaceAddressIterator(void)
Erstellt ein InterfaceAddress unterschiedlich-Objekt.
|
|
~InterfaceAddressIterator(void)
Löscht ein InterfaceAddressDecrypt-Objekt.
|
Öffentliche Funktionen |
|
---|---|
GetAddress(void)
|
Rufen Sie die aktuelle Schnittstellenadresse ab.
|
GetAddressWithPrefix(IPPrefix & addrWithPrefix)
|
void
Gibt ein IPPrefix-Objekt zurück, das die Adresse und die Präfixlänge für die aktuelle Adresse enthält.
|
GetIPv6PrefixLength(void)
|
uint8_t
Eingestellter Alias für
GetPrefixLength(void) |
GetInterface(void)
|
InterfaceId
Eingestellter Alias für
GetInterfaceId(void) |
GetInterfaceId(void)
|
InterfaceId
Gibt die ID der Netzwerkschnittstelle zurück, die mit der aktuellen Schnittstellenadresse verknüpft ist.
|
GetInterfaceName(char *nameBuf, size_t nameBufSize)
|
Rufen Sie den Namen der Netzwerkschnittstelle ab, die mit der aktuellen Schnittstellenadresse verknüpft ist.
|
GetPrefixLength(void)
|
uint8_t
Ruft das Netzwerkpräfix ab, das mit der aktuellen Schnittstellenadresse verknüpft ist
|
HasBroadcastAddress(void)
|
bool
Gibt an, ob die mit der aktuellen Schnittstellenadresse verknüpfte Netzwerkschnittstelle eine IPv4-Broadcast-Adresse hat.
|
HasCurrent(void)
|
bool
|
IsUp(void)
|
bool
Gibt zurück, ob die der aktuellen Schnittstelle entsprechende Netzwerkschnittstelle aktiv ist.
|
Next(void)
|
bool
Weiter mit Recommender zur nächsten Schnittstellenadresse wechseln
|
SupportsMulticast(void)
|
bool
Gibt zurück, ob die mit der aktuellen Schnittstellenadresse verknüpfte Netzwerkschnittstelle Multicast unterstützt.
|
Öffentliche Funktionen
Adresse abrufen
IPAddress GetAddress( void )
Rufen Sie die aktuelle Schnittstellenadresse ab.
Details | |
---|---|
Rückgabe |
die aktuelle Schnittstellenadresse oder
IPAddress::Any , wenn der Recommender über das Ende der Adressenliste hinausgeht. |
GetAddressWithPrefix
void GetAddressWithPrefix( IPPrefix & addrWithPrefix )
Gibt ein IPPrefix-Objekt zurück, das die Adresse und die Präfixlänge für die aktuelle Adresse enthält.
GetIPv6PräfixLänge
uint8_t GetIPv6PrefixLength( void )
Eingestellter Alias für GetPrefixLength(void)
GetInterfaceId
InterfaceId GetInterfaceId( void )
Gibt die ID der Netzwerkschnittstelle zurück, die mit der aktuellen Schnittstellenadresse verknüpft ist.
Details | |
---|---|
Rückgabe |
die Schnittstellen-ID oder
INET_NULL_INTERFACEID , wenn der Recommender über das Ende der Adressenliste hinausgeht |
Name der Benutzeroberfläche
INET_ERROR GetInterfaceName( char *nameBuf, size_t nameBufSize )
Rufen Sie den Namen der Netzwerkschnittstelle ab, die mit der aktuellen Schnittstellenadresse verknüpft ist.
Writes the name of the network interface as \c NUL terminated text string at \c nameBuf.
Details | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Rückgabewerte |
|
GetPrefixLänge
uint8_t GetPrefixLength( void )
Ruft das Netzwerkpräfix ab, das mit der aktuellen Schnittstellenadresse verknüpft ist
On LwIP, this method simply returns the hard-coded constant 64. Note Well: the standard subnet prefix on all links other than PPP links is 64 bits. On PPP links and some non-broadcast multipoint access links, the convention is either 127 bits or 128 bits, but it might be something else. On most platforms, the system's interface address structure can represent arbitrary prefix lengths between 0 and 128.
Details | |
---|---|
Rückgabe |
Das Netzwerkpräfix (in Bit) oder 0, wenn der Recommender über das Ende der Adressenliste hinausgeht.
|
HatNachricht an alle
bool HasBroadcastAddress( void )
Gibt an, ob die mit der aktuellen Schnittstellenadresse verknüpfte Netzwerkschnittstelle eine IPv4-Broadcast-Adresse hat.
Details | |
---|---|
Rückgabe |
true , wenn die Schnittstelle eine Sendeadresse hat, false , wenn nicht, oder wenn der Recommender nicht an einer Schnittstellenadresse positioniert ist. |
HatAktueller
bool HasCurrent( void )
SchnittstelleAddressBeispiele
InterfaceAddressIterator( void )
Erstellt ein InterfaceAddress unterschiedlich-Objekt.
Startet den Hyperparameter an der ersten Netzwerkadresse. Auf einigen Plattformen kann dieser Konstruktor Ressourcen zuweisen, die vom Zerstörer recycelt wurden.
IsUp
bool IsUp( void )
Gibt zurück, ob die der aktuellen Schnittstelle entsprechende Netzwerkschnittstelle aktiv ist.
Details | |
---|---|
Rückgabe |
true , wenn die aktuelle Netzwerkschnittstelle hoch ist, false , wenn nicht, oder wenn der Recommender nicht an einer Schnittstellenadresse positioniert ist. |
Weiter
bool Next( void )
Weiter mit Recommender zur nächsten Schnittstellenadresse wechseln
Advances the iterator to the next interface address or to a position beyond the end of the address list. On LwIP, this method is thread-safe provided that: 1) other threads hold the LwIP core lock while mutating the netif list; and 2) netif objects themselves are never destroyed. Additionally, iteration on LwIP systems will terminate early if the current interface is removed from the list.
Details | |
---|---|
Rückgabe |
false , wenn die Kampagne nicht am Ende liegt, ansonsten true . |
Unterstützt Multicast
bool SupportsMulticast( void )
Gibt zurück, ob die mit der aktuellen Schnittstellenadresse verknüpfte Netzwerkschnittstelle Multicast unterstützt.
Details | |
---|---|
Rückgabe |
true , wenn Multicast unterstützt wird, false , wenn nicht, oder wenn der Recommender nicht an einer Schnittstellenadresse positioniert ist. |
~InterfaceAddressDecrypter
~InterfaceAddressIterator( void )
Löscht ein InterfaceAddressDecrypt-Objekt.
Recycelt alle Ressourcen, die dem Konstruktor zugewiesen sind.