IPv6
Este módulo inclui funções que controlam a comunicação IPv6.
Resumo
Enumerações |
|
---|---|
anonymous enum{
|
tipo enumerado Origens de endereço IPv6. |
anonymous enum{
|
tipo enumerado Status ECN, representados como no cabeçalho IP. |
anonymous enum{
|
tipo enumerado Números de protocolo de Internet. |
Typedefs |
|
---|---|
otBorderRoutingCounters
|
typedefstruct otBorderRoutingCounters
Essa estrutura representa os contadores de pacotes encaminhados por um roteamento de borda. |
otIp6Address
|
typedefstruct otIp6Address
Essa estrutura representa um endereço IPv6. |
otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext)
|
typedefvoid(*
Esse ponteiro de função é chamado quando um endereço IPv6 interno é adicionado ou removido. |
otIp6AddressComponents
|
typedefstruct otIp6AddressComponents
Essa estrutura representa os componentes de um endereço IPv6. |
otIp6AddressInfo
|
typedefstruct otIp6AddressInfo
|
otIp6InterfaceIdentifier
|
typedefstruct otIp6InterfaceIdentifier
Esta estrutura representa o identificador de interface de um endereço IPv6. |
otIp6NetworkPrefix
|
typedefstruct otIp6NetworkPrefix
Essa estrutura representa o prefixo de rede de um endereço IPv6 (os 64 bits mais importantes do endereço). |
otIp6Prefix
|
typedefstruct otIp6Prefix
Essa estrutura representa um prefixo IPv6. |
otIp6ReceiveCallback)(otMessage *aMessage, void *aContext)
|
typedefvoid(*
Esse ponteiro de função é chamado quando um datagrama IPv6 é recebido. |
otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum)
|
typedefvoid(*
Esse ponteiro de função é chamado com os resultados de otIp6RegisterMulticastListeners . |
otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix)
|
typedefbool(*
Esse ponteiro de função permite que o usuário filtre prefixos e não permita que um endereço SLAAC com base em um prefixo seja adicionado. |
otMessageInfo
|
typedefstruct otMessageInfo
Essa estrutura representa os endereços de soquetes IPv6 locais e de peering. |
otNetifAddress
|
typedefstruct otNetifAddress
Essa estrutura representa um endereço unicast de interface de rede IPv6. |
otNetifMulticastAddress
|
typedefstruct otNetifMulticastAddress
Essa estrutura representa um endereço multicast de interface de rede IPv6. |
otPacketsAndBytes
|
typedefstruct otPacketsAndBytes
Essa estrutura representa os contadores para pacotes e bytes. |
otSockAddr
|
typedefstruct otSockAddr
Essa estrutura representa um endereço de soquete IPv6. |
Variáveis |
|
---|---|
OT_TOOL_PACKED_END
|
Funções |
|
---|---|
otIp6AddUnicastAddress(otInstance *aInstance, const otNetifAddress *aAddress)
|
Adiciona um endereço de interface de rede à interface Thread.
|
otIp6AddUnsecurePort(otInstance *aInstance, uint16_t aPort)
|
Esta função adiciona uma porta à lista de portas não seguras permitidas.
|
otIp6AddressFromString(const char *aString, otIp6Address *aAddress)
|
Essa função converte uma string de endereço IPv6 legível em uma representação binária.
|
otIp6AddressToString(const otIp6Address *aAddress, char *aBuffer, uint16_t aSize)
|
void
Essa função converte determinado endereço IPv6 em uma string legível.
|
otIp6ArePrefixesEqual(const otIp6Prefix *aFirst, const otIp6Prefix *aSecond)
|
bool
Teste se dois prefixos IPv6 são iguais.
|
otIp6GetBorderRoutingCounters(otInstance *aInstance)
|
const otBorderRoutingCounters *
Recebe os contadores de roteamento de borda.
|
otIp6GetMulticastAddresses(otInstance *aInstance)
|
const otNetifMulticastAddress *
Recebe a lista de endereços multicast IPv6 inscritos na interface Thread.
|
otIp6GetPrefix(const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix)
|
void
Esse método recebe um prefixo com
aLength de aAddress . |
otIp6GetUnicastAddresses(otInstance *aInstance)
|
const otNetifAddress *
Recebe a lista de endereços IPv6 atribuídos à interface Thread.
|
otIp6GetUnsecurePorts(otInstance *aInstance, uint8_t *aNumEntries)
|
const uint16_t *
Essa função retorna um ponteiro para a lista de portas não seguras.
|
otIp6IsAddressEqual(const otIp6Address *aFirst, const otIp6Address *aSecond)
|
bool
Teste se dois endereços IPv6 são iguais.
|
otIp6IsAddressUnspecified(const otIp6Address *aAddress)
|
bool
Esta função indica se um determinado endereço IPv6 é ou não o endereço não especificado.
|
otIp6IsEnabled(otInstance *aInstance)
|
bool
Indica se a interface IPv6 está ativa ou não.
|
otIp6IsMulticastPromiscuousEnabled(otInstance *aInstance)
|
bool
Verifica se o modo promísculo multicast está ativado na interface Thread.
|
otIp6IsReceiveFilterEnabled(otInstance *aInstance)
|
bool
Essa função indica se o tráfego de controle da linha de execução é filtrado ou não ao enviar datagramas IPv6 pelo callback especificado em otIp6SetReceiveCallback().
|
otIp6IsSlaacEnabled(otInstance *aInstance)
|
bool
Esta função indica se o módulo SLAAC está ativado ou não.
|
otIp6NewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
|
Aloque um novo buffer de mensagem para enviar uma mensagem IPv6.
|
otIp6NewMessageFromBuffer(otInstance *aInstance, const uint8_t *aData, uint16_t aDataLength, const otMessageSettings *aSettings)
|
Aloque um novo buffer de mensagem e grave o datagrama IPv6 no buffer de mensagens para enviar uma mensagem IPv6.
|
otIp6PrefixMatch(const otIp6Address *aFirst, const otIp6Address *aSecond)
|
uint8_t
Essa função retorna o tamanho da correspondência de prefixo (bits) de dois endereços IPv6.
|
otIp6PrefixToString(const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize)
|
void
Essa função converte determinado prefixo IPv6 em uma string legível.
|
otIp6ProtoToString(uint8_t aIpProto)
|
const char *
Essa função converte um determinado número de protocolo IP em uma string legível.
|
otIp6RegisterMulticastListeners(otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext)
|
Esta função registra listeners de multicast no roteador de backbone principal.
|
otIp6RemoveAllUnsecurePorts(otInstance *aInstance)
|
void
Esta função remove todas as portas da lista de portas não seguras permitidas.
|
otIp6RemoveUnicastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
Remove um endereço de interface de rede da interface Thread.
|
otIp6RemoveUnsecurePort(otInstance *aInstance, uint16_t aPort)
|
Esta função remove uma porta da lista de portas não seguras permitidas.
|
otIp6ResetBorderRoutingCounters(otInstance *aInstance)
|
void
Redefine os contadores de roteamento de borda.
|
otIp6SelectSourceAddress(otInstance *aInstance, otMessageInfo *aMessageInfo)
|
Essa função realiza a seleção de endereços de origem do OpenThread.
|
otIp6Send(otInstance *aInstance, otMessage *aMessage)
|
Essa função envia um datagrama IPv6 pela interface Thread.
|
otIp6SetAddressCallback(otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext)
|
void
Esta função registra um callback para notificar as alterações no endereço IPv6 interno.
|
otIp6SetEnabled(otInstance *aInstance, bool aEnabled)
|
Aumenta ou diminui a interface IPv6.
|
otIp6SetMeshLocalIid(otInstance *aInstance, const otIp6InterfaceIdentifier *aIid)
|
Essa função define o IID local da malha (para fins de teste).
|
otIp6SetMulticastPromiscuousEnabled(otInstance *aInstance, bool aEnabled)
|
void
Ativa ou desativa o modo promísculo multicast na interface de Thread.
|
otIp6SetReceiveCallback(otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
|
void
Esta função registra um callback para fornecer datagramas IPv6 recebidos.
|
otIp6SetReceiveFilterEnabled(otInstance *aInstance, bool aEnabled)
|
void
Essa função define se o tráfego de controle do Thread é filtrado ou não ao enviar datagramas IPv6 pelo callback especificado em otIp6SetReceiveCallback().
|
otIp6SetSlaacEnabled(otInstance *aInstance, bool aEnabled)
|
void
Esta função ativa/desativa o módulo SLAAC.
|
otIp6SetSlaacPrefixFilter(otInstance *aInstance, otIp6SlaacPrefixFilter aFilter)
|
void
Essa função define o gerenciador de filtro do módulo SLAAC.
|
otIp6SockAddrToString(const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize)
|
void
Essa função converte determinado endereço de soquete IPv6 em uma string legível.
|
otIp6SubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
Inscreve a interface Thread em um endereço multicast de interface de rede.
|
otIp6UnsubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
Cancela a inscrição na interface de Thread em um endereço multicast de interface de rede.
|
Estruturas |
|
---|---|
otBorderRoutingCounters (em inglês) |
Essa estrutura representa os contadores de pacotes encaminhados por um roteamento de borda. |
Endereço otIp6 |
Essa estrutura representa um endereço IPv6. |
otIp6AddressComponents (link em inglês) |
Essa estrutura representa os componentes de um endereço IPv6. |
otIp6AddressInfo (em inglês) |
Essa estrutura representa informações de endereço IPv6. |
otIp6InterfaceIdentifier (link em inglês) |
Esta estrutura representa o identificador de interface de um endereço IPv6. |
otIp6NetworkPrefix (link em inglês) |
Essa estrutura representa o prefixo de rede de um endereço IPv6 (os 64 bits mais importantes do endereço). |
otIp6Prefix. |
Essa estrutura representa um prefixo IPv6. |
OtMessageInfo. |
Essa estrutura representa os endereços de soquetes IPv6 locais e de peering. |
OtNetifAddress |
Essa estrutura representa um endereço unicast de interface de rede IPv6. |
otNetifMulticastAddress (link em inglês) |
Essa estrutura representa um endereço multicast de interface de rede IPv6. |
otPacketsAndBytes (link em inglês) |
Essa estrutura representa os contadores para pacotes e bytes. |
OtSockAddr (em inglês) |
Essa estrutura representa um endereço de soquete IPv6. |
União |
|
---|---|
otIp6InterfaceIdentifier: |
Enumerações
enumeração anônima
anonymous enum
Origens de endereço IPv6.
Propriedades | |
---|---|
OT_ADDRESS_ORIGIN_DHCPV6
|
Endereço atribuído DHCPv6. |
OT_ADDRESS_ORIGIN_MANUAL
|
Endereço atribuído manualmente. |
OT_ADDRESS_ORIGIN_SLAAC
|
Endereço atribuído do SLAAC. |
OT_ADDRESS_ORIGIN_THREAD
|
Endereço atribuído para encadeamento (ALOC, RLOC, MLEID etc.) |
enumeração anônima
anonymous enum
Status ECN, representados como no cabeçalho IP.
Propriedades | |
---|---|
OT_ECN_CAPABLE_0
|
ECT(0) |
OT_ECN_CAPABLE_1
|
ECT(1) |
OT_ECN_MARKED
|
Congestion encontrado (CE) |
OT_ECN_NOT_CAPABLE
|
Não ECT. |
enumeração anônima
anonymous enum
Números de protocolo de Internet.
Propriedades | |
---|---|
OT_IP6_PROTO_DST_OPTS
|
Opções de destino para IPv6. |
OT_IP6_PROTO_FRAGMENT
|
Cabeçalho do fragmento para IPv6. |
OT_IP6_PROTO_HOP_OPTS
|
Opção de salto por salto IPv6. |
OT_IP6_PROTO_ICMP6
|
ICMP para IPv6. |
OT_IP6_PROTO_IP6
|
Encapsulamento IPv6. |
OT_IP6_PROTO_NONE
|
Próximo cabeçalho para IPv6. |
OT_IP6_PROTO_ROUTING
|
Cabeçalho de roteamento para IPv6. |
OT_IP6_PROTO_TCP
|
Protocolo de controle de transmissão. |
OT_IP6_PROTO_UDP
|
Datagrama do usuário. |
Typedefs
OtBorderRoutingCounters
struct otBorderRoutingCounters otBorderRoutingCounters
Essa estrutura representa os contadores de pacotes encaminhados por um roteamento de borda.
OtIp6AddressCallback
void(* otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext)
Esse ponteiro de função é chamado quando um endereço IPv6 interno é adicionado ou removido.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
OtIp6AddressComponents
struct otIp6AddressComponents otIp6AddressComponents
Essa estrutura representa os componentes de um endereço IPv6.
OtIp6AddressInfo
struct otIp6AddressInfo otIp6AddressInfo
OtIp6InterfaceIdentifier
struct otIp6InterfaceIdentifier otIp6InterfaceIdentifier
Esta estrutura representa o identificador de interface de um endereço IPv6.
OtIp6NetworkPrefix
struct otIp6NetworkPrefix otIp6NetworkPrefix
Essa estrutura representa o prefixo de rede de um endereço IPv6 (os 64 bits mais importantes do endereço).
OtIp6ReceiveCallback
void(* otIp6ReceiveCallback)(otMessage *aMessage, void *aContext)
Esse ponteiro de função é chamado quando um datagrama IPv6 é recebido.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
OtIp6RegisterMulticastListenersCallback
void(* otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum)
Esse ponteiro de função é chamado com os resultados de otIp6RegisterMulticastListeners
.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
otIp6RegisterMulticastListeners
OtIp6SlaacPrefixFilter
bool(* otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix)
Esse ponteiro de função permite que o usuário filtre prefixos e não permita que um endereço SLAAC com base em um prefixo seja adicionado.
otIp6SetSlaacPrefixFilter()
pode ser usado para definir o gerenciador de filtro. O gerenciador de filtros é invocado pelo módulo SLAAC quando está prestes a adicionar um endereço SLAAC com base em um prefixo. O valor de retorno booleano determina se o endereço é filtrado (não adicionado) ou não.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
Informações da otMessage
struct otMessageInfo otMessageInfo
Essa estrutura representa os endereços de soquetes IPv6 locais e de peering.
Endereço otNetif
struct otNetifAddress otNetifAddress
Essa estrutura representa um endereço unicast de interface de rede IPv6.
OtNetifMulticastAddress
struct otNetifMulticastAddress otNetifMulticastAddress
Essa estrutura representa um endereço multicast de interface de rede IPv6.
OtPacketsAndBytes
struct otPacketsAndBytes otPacketsAndBytes
Essa estrutura representa os contadores para pacotes e bytes.
Integração do otock
struct otSockAddr otSockAddr
Essa estrutura representa um endereço de soquete IPv6.
Variáveis
OT_Tool_PACKED_END
OT_TOOL_PACKED_BEGIN struct otIp6InterfaceIdentifier OT_TOOL_PACKED_END
Funções
OtIp6Adicionar endereço do Unicast
otError otIp6AddUnicastAddress( otInstance *aInstance, const otNetifAddress *aAddress )
Adiciona um endereço de interface de rede à interface Thread.
A instância transmitida aAddress
é copiada pela interface Thread. A interface de Thread só é compatível com um número fixo de endereços unicast adicionados externamente. Consulte os OPENTHREAD_CONFIG_IP6_MAX_EXT_UCAST_ADDRS
.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
OtIp6AddUnsecurePort
otError otIp6AddUnsecurePort( otInstance *aInstance, uint16_t aPort )
Esta função adiciona uma porta à lista de portas não seguras permitidas.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
OtIp6AddressFromString
otError otIp6AddressFromString( const char *aString, otIp6Address *aAddress )
Essa função converte uma string de endereço IPv6 legível em uma representação binária.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
OtIp6AddressToString
void otIp6AddressToString( const otIp6Address *aAddress, char *aBuffer, uint16_t aSize )
Essa função converte determinado endereço IPv6 em uma string legível.
A string de endereço IPv6 é formatada como 16 valores hexadecimais separados por ":" (ou seja, "%x:%x:%x:...:%x").
Se a string resultante não couber em aBuffer
(dentro dos caracteres aSize
), a string será truncada, mas a string resultante será sempre terminada em nulo.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
OtIp6ArePrefixesEqual
bool otIp6ArePrefixesEqual( const otIp6Prefix *aFirst, const otIp6Prefix *aSecond )
Teste se dois prefixos IPv6 são iguais.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
OtIp6GetBorderRoutingCounters
const otBorderRoutingCounters * otIp6GetBorderRoutingCounters( otInstance *aInstance )
Recebe os contadores de roteamento de borda.
Essa função requer que o recurso de tempo de compilação OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE
esteja ativado.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retorna |
Um ponteiro para os contadores de roteamento de borda.
|
OtIp6GetMulticastAddresses
const otNetifMulticastAddress * otIp6GetMulticastAddresses( otInstance *aInstance )
Recebe a lista de endereços multicast IPv6 inscritos na interface Thread.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retorna |
Um ponteiro para o primeiro endereço multicast de interface de rede.
|
OtIp6GetPrefix
void otIp6GetPrefix( const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix )
Esse método recebe um prefixo com aLength
de aAddress
.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
OtIp6GetUnicastAddresses
const otNetifAddress * otIp6GetUnicastAddresses( otInstance *aInstance )
Recebe a lista de endereços IPv6 atribuídos à interface Thread.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retorna |
Um ponteiro para o primeiro endereço de interface de rede.
|
OtIp6GetUnsecurePorts
const uint16_t * otIp6GetUnsecurePorts( otInstance *aInstance, uint8_t *aNumEntries )
Essa função retorna um ponteiro para a lista de portas não seguras.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
Um ponteiro para a lista de portas não seguras.
|
OtIp6IsAddressEqual
bool otIp6IsAddressEqual( const otIp6Address *aFirst, const otIp6Address *aSecond )
Teste se dois endereços IPv6 são iguais.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
OtIp6IsAddressUnspecified
bool otIp6IsAddressUnspecified( const otIp6Address *aAddress )
Esta função indica se um determinado endereço IPv6 é ou não o endereço não especificado.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
OtIp6IsEnabled
bool otIp6IsEnabled( otInstance *aInstance )
Indica se a interface IPv6 está ativa ou não.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
OtIp6IsMulticastPromiscuousEnabled
bool otIp6IsMulticastPromiscuousEnabled( otInstance *aInstance )
Verifica se o modo promísculo multicast está ativado na interface Thread.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
otIp6SetMulticastPromiscuousEnabled
OtIp6IsReceiveFilterEnabled
bool otIp6IsReceiveFilterEnabled( otInstance *aInstance )
Essa função indica se o tráfego de controle da linha de execução é filtrado ou não ao enviar datagramas IPv6 pelo callback especificado em otIp6SetReceiveCallback().
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retorna |
Verdadeiro se o tráfego de controle da linha de execução for filtrado. Caso contrário, FALSO.
|
otIp6SetReceiveCallback
otIp6SetReceiveFilterEnabled
OtIp6IsSlaacEnabled
bool otIp6IsSlaacEnabled( otInstance *aInstance )
Esta função indica se o módulo SLAAC está ativado ou não.
Essa função requer que o recurso de tempo de compilação OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE
esteja ativado.
Detalhes | |||||
---|---|---|---|---|---|
Valores de retorno |
|
OtIp6Novamensagem
otMessage * otIp6NewMessage( otInstance *aInstance, const otMessageSettings *aSettings )
Aloque um novo buffer de mensagem para enviar uma mensagem IPv6.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
Um ponteiro para o buffer de mensagem ou NULL se nenhum buffer de mensagem estiver disponível ou os parâmetros forem inválidos.
|
otMessageFree
OtIp6NewMessageFromBuffer
otMessage * otIp6NewMessageFromBuffer( otInstance *aInstance, const uint8_t *aData, uint16_t aDataLength, const otMessageSettings *aSettings )
Aloque um novo buffer de mensagem e grave o datagrama IPv6 no buffer de mensagens para enviar uma mensagem IPv6.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||
Retorna |
Um ponteiro para a mensagem ou NULL se um cabeçalho IPv6 incorreto ou buffers de mensagem insuficientes estiverem disponíveis.
|
otMessageFree
OtIp6PrefixMatch
uint8_t otIp6PrefixMatch( const otIp6Address *aFirst, const otIp6Address *aSecond )
Essa função retorna o tamanho da correspondência de prefixo (bits) de dois endereços IPv6.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
O comprimento da correspondência de prefixo em bits.
|
OtIp6PrefixToString
void otIp6PrefixToString( const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize )
Essa função converte determinado prefixo IPv6 em uma string legível.
A string de endereço IPv6 é formatada como "%x:%x:%x:...[::]/plen".
Se a string resultante não couber em aBuffer
(dentro dos caracteres aSize
), a string será truncada, mas a string resultante será sempre terminada em nulo.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
OtIp6ProtoToString
const char * otIp6ProtoToString( uint8_t aIpProto )
Essa função converte um determinado número de protocolo IP em uma string legível.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retorna |
Uma string que representa
aIpProto . |
OtIp6RegisterMulticastListeners
otError otIp6RegisterMulticastListeners( otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext )
Esta função registra listeners de multicast no roteador de backbone principal.
Observação: disponível apenas quando OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLE
e OPENTHREAD_CONFIG_COMMISSIONER_ENABLE
estão ativados
Detalhes | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||
Valores de retorno |
|
otIp6RegisterMulticastListenersCallback
OtIp6RemoveAllUnsecurePorts
void otIp6RemoveAllUnsecurePorts( otInstance *aInstance )
Esta função remove todas as portas da lista de portas não seguras permitidas.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
OtIp6RemoveUnicastAddress
otError otIp6RemoveUnicastAddress( otInstance *aInstance, const otIp6Address *aAddress )
Remove um endereço de interface de rede da interface Thread.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
OtIp6RemoveUnsecurePort
otError otIp6RemoveUnsecurePort( otInstance *aInstance, uint16_t aPort )
Esta função remove uma porta da lista de portas não seguras permitidas.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
OtIp6ResetBorderRoutingCounter
void otIp6ResetBorderRoutingCounters( otInstance *aInstance )
Redefine os contadores de roteamento de borda.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
OtIp6SelectSourceAddress
otError otIp6SelectSourceAddress( otInstance *aInstance, otMessageInfo *aMessageInfo )
Essa função realiza a seleção de endereços de origem do OpenThread.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
OtIp6Send
otError otIp6Send( otInstance *aInstance, otMessage *aMessage )
Essa função envia um datagrama IPv6 pela interface Thread.
O autor da chamada transfere a propriedade de aMessage
ao fazer essa chamada. O OpenThread libera aMessage
quando o processamento é concluído, inclusive quando um valor diferente de OT_ERROR_NONE
é retornado.
Detalhes | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||
Valores de retorno |
|
OtIp6SetAddressCallback
void otIp6SetAddressCallback( otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext )
Esta função registra um callback para notificar as alterações no endereço IPv6 interno.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
OtIp6SetEnabled
otError otIp6SetEnabled( otInstance *aInstance, bool aEnabled )
Aumenta ou diminui a interface IPv6.
Chame esta função para ativar ou desativar a comunicação IPv6.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
OtIp6SetMeshLocalIid
otError otIp6SetMeshLocalIid( otInstance *aInstance, const otIp6InterfaceIdentifier *aIid )
Essa função define o IID local da malha (para fins de teste).
Disponível apenas quando OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
está ativado.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
OtIp6SetMulticastPromiscuousEnabled
void otIp6SetMulticastPromiscuousEnabled( otInstance *aInstance, bool aEnabled )
Ativa ou desativa o modo promísculo multicast na interface de Thread.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
otIp6IsMulticastPromiscuousEnabled
OtIp6SetReceiveCallback
void otIp6SetReceiveCallback( otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext )
Esta função registra um callback para fornecer datagramas IPv6 recebidos.
Por padrão, esse callback não transmite o tráfego de controle do Thread. Consulte otIp6SetReceiveFilterEnabled() para alterar a configuração do filtro de tráfego de controle de linhas de execução.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled
OtIp6SetReceiveFilterEnabled
void otIp6SetReceiveFilterEnabled( otInstance *aInstance, bool aEnabled )
Essa função define se o tráfego de controle do Thread é filtrado ou não ao enviar datagramas IPv6 pelo callback especificado em otIp6SetReceiveCallback().
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
otIp6SetReceiveCallback
otIsReceiveIp6FilterEnabled
OtIp6SetSlaacEnabled
void otIp6SetSlaacEnabled( otInstance *aInstance, bool aEnabled )
Esta função ativa/desativa o módulo SLAAC.
Essa função requer que o recurso de tempo de compilação OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE
esteja ativado.
Quando o módulo SLAAC é ativado, os endereços SLAAC (com base em prefixos na malha em dados de rede) são adicionados à interface. Quando o módulo SLAAC é desativado, todos os endereços SLAAC adicionados anteriormente são removidos.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
OtIp6SetSlaacPrefixFilter
void otIp6SetSlaacPrefixFilter( otInstance *aInstance, otIp6SlaacPrefixFilter aFilter )
Essa função define o gerenciador de filtro do módulo SLAAC.
Essa função requer que o recurso de tempo de compilação OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE
esteja ativado.
O gerenciador de filtros é chamado pelo módulo SLAAC quando está prestes a adicionar um endereço SLAAC com base em um prefixo para decidir se o endereço deve ser adicionado ou não.
Um gerenciador de filtros NULL desativa a filtragem e permite que todos os endereços SLAAC sejam adicionados.
Se essa função não for chamada, o filtro padrão usado pelo módulo SLAAC será NULO (o filtro está desativado).
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
OtIp6SockAddrToString
void otIp6SockAddrToString( const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize )
Essa função converte determinado endereço de soquete IPv6 em uma string legível.
A string do endereço do soquete IPv6 é formatada como [address
]:port
, em que address
é exibido como 16 valores hexadecimais separados por :
e port
é o número da porta em formato decimal, por exemplo "[%x:%x:...:%x]:%u".
Se a string resultante não couber em aBuffer
(dentro dos caracteres aSize
), a string será truncada, mas a string resultante será sempre terminada em nulo.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
OtIp6AssinarMulticastAddress
otError otIp6SubscribeMulticastAddress( otInstance *aInstance, const otIp6Address *aAddress )
Inscreve a interface Thread em um endereço multicast de interface de rede.
O aAddress
transmitido na instância será copiado pela interface da linha de execução. A interface de Thread só é compatível com um número fixo de endereços multicast adicionados externamente. Consulte os OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS
.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Valores de retorno |
|
OtIp6CancelMulticastAddress
otError otIp6UnsubscribeMulticastAddress( otInstance *aInstance, const otIp6Address *aAddress )
Cancela a inscrição na interface de Thread em um endereço multicast de interface de rede.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
Macros
OT_IP6_END_END_SIZE
OT_IP6_ADDRESS_SIZE 16
Tamanho de um endereço IPv6 (bytes)
OT_IP6_END_STRING_SIZE
OT_IP6_ADDRESS_STRING_SIZE 40
Tamanho recomendado para a representação da string de um endereço IPv6.
OT_IP6_IID_SIZE
OT_IP6_IID_SIZE 8
Tamanho de um identificador de interface IPv6 (bytes)
OT_IP6_MAX_MLR_ADDRESSES
OT_IP6_MAX_MLR_ADDRESSES 15
Número máximo de endereços IPv6 compatíveis com o registro do listener do Multicast.
OT_IP6_PREFIX_BITSIZE
OT_IP6_PREFIX_BITSIZE (OT_IP6_PREFIX_SIZE * 8)
Tamanho de um prefixo IPv6 (bits)
OT_IP6_PREFIX_SIZE
OT_IP6_PREFIX_SIZE 8
Tamanho de um prefixo IPv6 (bytes)
OT_IP6_PREFIX_STRING_SIZE
OT_IP6_PREFIX_STRING_SIZE 45
Tamanho recomendado para a representação da string de um prefixo IPv6.
OT_IP6_SOCK_ADDR_STRING_SIZE
OT_IP6_SOCK_ADDR_STRING_SIZE 48
Tamanho recomendado para a representação da string de um endereço de soquete IPv6.
Recursos
Os tópicos de referência da API OpenThread são provenientes do código-fonte, disponível no GitHub. Para saber mais ou contribuir com nossa documentação, consulte Recursos.