nl:: Inet: InterfaceAddressiter
#include <src/inet/InetInterface.h>
Iterador para a lista de endereços IP da interface de rede do sistema.
Resumo
Use objetos dessa classe para iterar a lista de endereços IP da interface de rede do sistema.
Os métodos em uma instância individual dessa classe não são seguros para linhas de execução. No entanto, instâncias diferentes podem ser usadas simultaneamente por várias linhas de execução.
Em sistemas LwIP com várias linhas de execução, as instâncias são seguras para linhas de execução em relação a outras linhas de execução que acessam o estado LwIP global, desde que: 1) outras linhas de execução mantenham o bloqueio de LwIP principal enquanto modificam a lista de netifs e 2) o próprio objeto netif nunca seja destruído.
Em sistemas baseados em soquetes, a iteração é sempre estável diante de mudanças nas interfaces e/ou nos endereços do sistema.
Em sistemas LwIP, a iteração é estável, exceto no caso em que a interface associada ao endereço atual é removida. Nesse caso, a iteração pode terminar prematuramente.
Construtores e destruidores |
|
---|---|
InterfaceAddressIterator(void)
Cria um objeto InterfaceAddressiter.
|
|
~InterfaceAddressIterator(void)
Destrói um objeto InterfaceAddressiter.
|
Funções públicas |
|
---|---|
GetAddress(void)
|
Recebe o endereço atual da interface.
|
GetAddressWithPrefix(IPPrefix & addrWithPrefix)
|
void
Retorna um IPPrefix com o endereço e o prefixo do endereço atual.
|
GetIPv6PrefixLength(void)
|
uint8_t
Alias descontinuado para
GetPrefixLength(void) |
GetInterface(void)
|
InterfaceId
Alias descontinuado para
GetInterfaceId(void) |
GetInterfaceId(void)
|
InterfaceId
Retorna o ID da interface de rede associado ao endereço da interface atual.
|
GetInterfaceName(char *nameBuf, size_t nameBufSize)
|
Define o nome da interface de rede associada ao endereço da interface atual.
|
GetPrefixLength(void)
|
uint8_t
Recebe o prefixo de rede associado ao endereço da interface atual.
|
HasBroadcastAddress(void)
|
bool
Retorna indicando se a interface de rede associada ao endereço de interface atual tem um endereço de transmissão IPv4.
|
HasCurrent(void)
|
bool
|
IsUp(void)
|
bool
Retorna se a interface de rede associada ao endereço de interface atual está ativa.
|
Next(void)
|
bool
Avançar o iteração para o próximo endereço de interface.
|
SupportsMulticast(void)
|
bool
Retorna se a interface de rede associada ao endereço de interface atual é compatível com multicast.
|
Funções públicas
GetAddress
IPAddress GetAddress( void )
Recebe o endereço atual da interface.
Detalhes | |
---|---|
Retorna |
O endereço de interface atual ou
IPAddress::Any se o iteração estiver acima do fim da lista de endereços. |
GetAddressWithPrefix
void GetAddressWithPrefix( IPPrefix & addrWithPrefix )
Retorna um IPPrefix com o endereço e o prefixo do endereço atual.
GetIPv6PrefixLength
uint8_t GetIPv6PrefixLength( void )
Alias descontinuado para GetPrefixLength(void)
GetInterfaceId.
InterfaceId GetInterfaceId( void )
Retorna o ID da interface de rede associado ao endereço da interface atual.
Detalhes | |
---|---|
Retorna |
O ID da interface ou
INET_NULL_INTERFACEID se o iteração for posicionado além do fim da lista de endereços. |
NomeInterfaceInterface
INET_ERROR GetInterfaceName( char *nameBuf, size_t nameBufSize )
Define o nome da interface de rede associada ao endereço da interface atual.
Writes the name of the network interface as \c NUL terminated text string at \c nameBuf.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||
Valores de retorno |
|
GetPrefixLength
uint8_t GetPrefixLength( void )
Recebe o prefixo de rede associado ao endereço da interface atual.
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.
Detalhes | |
---|---|
Retorna |
O prefixo de rede (em bits) ou 0 se o iteração for posicionado além do fim da lista de endereços.
|
HasBroadcastAddress
bool HasBroadcastAddress( void )
Retorna indicando se a interface de rede associada ao endereço de interface atual tem um endereço de transmissão IPv4.
Detalhes | |
---|---|
Retorna |
true : se a interface tiver um endereço de transmissão, false , se não tiver, ou se o iteração não estiver posicionado no endereço de interface. |
HasCurrent
bool HasCurrent( void )
Interface AddressAddress
InterfaceAddressIterator( void )
Cria um objeto InterfaceAddressiter.
Inicia o iteração no primeiro endereço de rede. Em algumas plataformas, esse construtor pode alocar recursos reciclados pelo destruidor.
Is up
bool IsUp( void )
Retorna se a interface de rede associada ao endereço de interface atual está ativa.
Detalhes | |
---|---|
Retorna |
true se a interface de rede atual estiver ativa, false em caso negativo, ou se o iteração não estiver posicionado em um endereço de interface. |
Próxima
bool Next( void )
Avançar o iteração para o próximo endereço de interface.
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.
Detalhes | |
---|---|
Retorna |
false se estiver além do final. Caso contrário, true . |
Compatível com Multicast
bool SupportsMulticast( void )
Retorna se a interface de rede associada ao endereço de interface atual é compatível com multicast.
Detalhes | |
---|---|
Retorna |
true se compatível com multicast, false caso não tenha sido, ou se o iteração não estiver posicionado no endereço de interface. |
~InterfaceAddressiter
~InterfaceAddressIterator( void )
Destrói um objeto InterfaceAddressiter.
Recicla todos os recursos alocados pelo construtor.