nl:: Inet:: RawEndPoint
#include <src/inet/RawEndPoint.h>
Los objetos de esta clase representan extremos de red IP sin procesar.
Resumen
La capa Nest Inet encapsula métodos para interactuar con extremos de red IP (sockets SOCK_RAW en sistemas Linux y derivados de BSD) o bloques de control de protocolo sin procesar LwIP, ya que el sistema se configura de forma correspondiente.
Herencia
Hereda de: nl::Inet::IPEndPointBasis
Atributos públicos |
|
---|---|
IPProto
|
IPProtocol
versión del protocolo de mensajes de control de Internet (ICMP)
|
IPVer
|
IPVersion
Versión del protocolo de Internet.
|
Funciones públicas |
|
---|---|
Bind(IPAddressType addrType, IPAddress addr, InterfaceId intfId)
|
Vincula el extremo a una dirección IP de interfaz.
|
BindIPv6LinkLocal(InterfaceId intf, IPAddress addr)
|
Vincula el extremo sin procesar a una dirección de alcance de vínculo local IPv6 en el índice de interfaz especificado.
|
BindInterface(IPAddressType addrType, InterfaceId intf)
|
Vincula el extremo a una interfaz de red.
|
Close(void)
|
void
Cierra el extremo.
|
Free(void)
|
void
Cierra el extremo y recicla su memoria.
|
GetBoundInterface(void)
|
InterfaceId
Obtén la interfaz vinculada en este extremo.
|
Listen(void)
|
Prepara el extremo para recibir mensajes ICMP.
|
SendMsg(const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Envía un mensaje de ICMP al destino especificado.
|
SendTo(IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Un sinónimo de
SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags) . |
SendTo(IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Envía un mensaje de ICMP a la dirección de destino especificada.
|
SetICMPFilter(uint8_t numICMPTypes, const uint8_t *aICMPTypes)
|
Establece los parámetros del filtro ICMP6 en la pila de red.
|
Atributos públicos
IPProto
IPProtocol IPProto
versión del protocolo de mensajes de control de Internet (ICMP)
Si bien este campo es una variable de clase mutable, es invariante de la clase que no se puede modificar.
IPVer
IPVersion IPVer
Versión del protocolo de Internet.
Si bien este campo es una variable de clase mutable, es invariante de la clase que no se puede modificar.
Funciones públicas
Vincular
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, InterfaceId intfId )
Vincula el extremo a una dirección IP de interfaz.
Vincula el extremo a la dirección IP de la interfaz de red especificada.
Detalles | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||||||
Valores que se muestran |
|
En LwIP, no se debe llamar a este método con el bloqueo de pila LwIP ya adquirido.
BindIPv6LinkLocal
INET_ERROR BindIPv6LinkLocal( InterfaceId intf, IPAddress addr )
Vincula el extremo sin procesar a una dirección de alcance de vínculo local IPv6 en el índice de interfaz especificado.
También configura varias opciones de socket IPv6 adecuadas para transmitir paquetes hacia y desde destinos en vínculo.
Vincula el extremo a la dirección de vínculo local IPv6 addr
en la interfaz de red indicada por intf
.
Detalles | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||||
Parámetros |
|
||||||||||||
Valores que se muestran |
|
||||||||||||
Qué muestra |
INET_NO_ERROR si se ejecuta correctamente o un error de SO asignado si se produce una falla. Una lista de parámetros no válida puede dar como resultado INET_ERROR_WRONG_ADDRESS_TYPE. Si el extremo sin procesar ya está vinculado o está escuchando, muestra INET_ERROR_INCORRECT_STATE. Vincula el extremo a una dirección de vínculo local IPv6 de interfaz.
|
En LwIP, no se debe llamar a este método con el bloqueo de pila LwIP ya adquirido.
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
Vincula el extremo a una interfaz de red.
Vincula el extremo a la dirección IP de la interfaz de red especificada.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||
Valores que se muestran |
|
En LwIP, no se debe llamar a este método con el bloqueo de pila LwIP ya adquirido.
Cerrar
void Close( void )
Cierra el extremo.
Si es mState != kState_Closed
, cierra el extremo y lo quita del conjunto de extremos aptos para eventos de comunicación.
En los sistemas LwIP, no se debe llamar a este método con el bloqueo de pila LwIP ya adquirido.
Gratis
void Free( void )
Cierra el extremo y recicla su memoria.
Invoca el método Close
y, luego, el método InetLayerBasis::Release
para mostrar el objeto a su grupo de memoria.
En los sistemas LwIP, no se debe llamar a este método con el bloqueo de pila LwIP ya adquirido.
GetBoundInterface
InterfaceId GetBoundInterface( void )
Obtén la interfaz vinculada en este extremo.
Detalles | |
---|---|
Qué muestra |
InterfaceId: Es el ID de interfaz vinculada.
|
Escuchar
INET_ERROR Listen( void )
Prepara el extremo para recibir mensajes ICMP.
Si mState
ya es kState_Listening
, no se realiza ninguna operación. De lo contrario, mState
se establece en kState_Listening
y el extremo está preparado para recibir mensajes ICMPv6, según la semántica de la plataforma.
Detalles | |||
---|---|---|---|
Valores que se muestran |
|
En LwIP, no se debe llamar a este método con el bloqueo de pila de LwIP ya adquirido.
SendMsg
INET_ERROR SendMsg( const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Envía un mensaje de ICMP al destino especificado.
Send the ICMP message \c msg using the destination information given in \c addr. Where (sendFlags & kSendFlag_RetainBuffer) != 0, calls Weave::System::PacketBuffer::Free on behalf of the caller, otherwise this method deep-copies \c msg into a fresh object, and queues that for transmission, leaving the original \c msg available after return.
Detalles | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||||
Valores que se muestran |
|
SendTo
INET_ERROR SendTo( IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Un sinónimo de SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags)
.
SendTo
INET_ERROR SendTo( IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Envía un mensaje de ICMP a la dirección de destino especificada.
Send the ICMP message in \c msg to the destination given in \c addr. Where (sendFlags & kSendFlag_RetainBuffer) != 0, calls Weave::System::PacketBuffer::Free on behalf of the caller, otherwise this method deep-copies \c msg into a fresh object, and queues that for transmission, leaving the original \c msg available after return.
Detalles | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||||
Valores que se muestran |
|
SetICMPFilter
INET_ERROR SetICMPFilter( uint8_t numICMPTypes, const uint8_t *aICMPTypes )
Establece los parámetros del filtro ICMP6 en la pila de red.
Aplica los parámetros de filtro ICMPv6 para los códigos de aICMPTypes
en el extremo subyacente en la pila de red del sistema.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||
Valores que se muestran |
|