nl:: Inet:: RawEndPoint
#include <src/inet/RawEndPoint.h>
Los objetos de esta clase representan extremos de red IP sin procesar.
Resumen
La capa de Inet de Nest encapsula métodos para interactuar con extremos de red IP (sockets SOCK_RAW en Linux y sistemas derivados de BSD) o bloques de control de protocolo sin procesar LwIP, a medida que el sistema está configurado según corresponda.
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)
|
Vincular el extremo a una dirección IP de la interfaz
|
BindIPv6LinkLocal(InterfaceId intf, IPAddress addr)
|
Vincula el extremo sin procesar a una dirección de alcance local IPv6 en el índice de la interfaz especificado.
|
BindInterface(IPAddressType addrType, InterfaceId intf)
|
Vincular el extremo a una interfaz de red
|
Close(void)
|
void
Cierre 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íe un mensaje ICMP al destino especificado.
|
SendTo(IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Es un sinónimo de
SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags) . |
SendTo(IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Envíe un mensaje 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 una variante 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 una variante de la clase que no se puede modificar.
Funciones públicas
Vincular
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, InterfaceId intfId )
Vincular el extremo a una dirección IP de la 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 de LwIP ya adquirido.
VincularIPv6VínculoLocal
INET_ERROR BindIPv6LinkLocal( InterfaceId intf, IPAddress addr )
Vincula el extremo sin procesar a una dirección de alcance local IPv6 en el índice de la interfaz especificado.
También define varias opciones de socket IPv6 adecuadas para transmitir paquetes desde y hacia destinos de vínculo.
Vincula el extremo a la dirección local de vínculo 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 el resultado fue correcto o un error de SO asignado en caso de error. 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 escucha, muestra INET_ERROR_INCORRECT_STATE. Vincula el extremo a una dirección de vínculo local IPv6 de la interfaz.
|
En LwIP, no se debe llamar a este método con el bloqueo de pila de LwIP ya adquirido.
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
Vincular 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 de LwIP ya adquirido.
Cerrar
void Close( void )
Cierre el extremo.
Si es mState != kState_Closed
, cierra el extremo, lo que lo quita del conjunto de extremos aptos para los eventos de comunicación.
En los sistemas LwIP, no se debe llamar a este método con el bloqueo de pila de LwIP ya adquirido.
Gratis
void Free( void )
Cierra el extremo y recicla su memoria.
Invoca el método Close
y, luego, invoca 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 de LwIP ya adquirido.
GetBoundInterface
InterfaceId GetBoundInterface( void )
Obtén la interfaz vinculada en este extremo.
Detalles | |
---|---|
Qué muestra |
InterfaceId: El ID de interfaz vinculado
|
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 configura como 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
Enviar mensaje
INET_ERROR SendMsg( const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Envíe un mensaje 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 |
|
Enviar a
INET_ERROR SendTo( IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Es un sinónimo de SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags)
.
Enviar a
INET_ERROR SendTo( IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Envíe un mensaje 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 en aICMPTypes
al extremo subyacente de la pila de red del sistema.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||
Valores que se muestran |
|