nl :: Inet :: RawEndPoint
#include <src/inet/RawEndPoint.h>
Los objetos de esta clase representan puntos finales de red IP sin procesar.
Resumen
Nest Inet Layer encapsula los métodos para interactuar con los puntos finales de la red IP (sockets SOCK_RAW en Linux y sistemas derivados de BSD) o bloques de control de protocolo sin procesar LwIP, ya que el sistema está configurado en consecuencia.
Herencia
Hereda de: nl :: Inet :: IPEndPointBasisAtributos públicos | |
---|---|
IPProto | IPProtocol versión del Protocolo de mensajes de control de Internet (ICMP) |
IPVer | IPVersion Versión del protocolo de Internet. |
Funciones publicas | |
---|---|
Bind (IPAddressType addrType, IPAddress addr, InterfaceId intfId) | Vincule el punto final a una dirección IP de interfaz. |
BindIPv6LinkLocal (InterfaceId intf, IPAddress addr) | Vincule el punto final sin procesar a una dirección de alcance local de enlace IPv6 en el índice de interfaz especificado. |
BindInterface (IPAddressType addrType, InterfaceId intf) | Vincular el punto final a una interfaz de red. |
Close (void) | void Cierre el punto final. |
Free (void) | void Cierre el endpoint y recicle su memoria. |
GetBoundInterface (void) | InterfaceId Obtenga la interfaz vinculada en este punto final. |
Listen (void) | Prepare el punto final 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) | 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) | Configure 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 un invariante de la clase que no se modifique.
IPVer
IPVersion IPVer
Versión del protocolo de Internet.
Si bien este campo es una variable de clase mutable, es un invariante de la clase que no se modifique.
Funciones publicas
Enlazar
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, InterfaceId intfId )
Vincule el punto final a una dirección IP de interfaz.
Vincula el punto final a la dirección IP de la interfaz de red especificada.
Detalles | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||||||||
Valores devueltos |
|
En LwIP, este método no debe llamarse con el bloqueo de pila LwIP ya adquirido.
BindIPv6LinkLocal
INET_ERROR BindIPv6LinkLocal( InterfaceId intf, IPAddress addr )
Vincule el punto final sin procesar a una dirección de alcance local de enlace IPv6 en el índice de interfaz especificado.
También establece varias opciones de socket IPv6 apropiadas para transmitir paquetes hacia y desde destinos en el enlace.
Se liga el punto final a la dirección de enlace local IPv6 addr
en la interfaz de red indicado por intf
.
Detalles | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||||||
Parámetros |
| ||||||||||||
Valores devueltos |
| ||||||||||||
Devoluciones | INET_NO_ERROR en caso de éxito, o un error del sistema operativo asignado en caso de error. Una lista de parámetros no válida puede resultar en INET_ERROR_WRONG_ADDRESS_TYPE. Si el punto final sin procesar ya está vinculado o está escuchando, devuelve INET_ERROR_INCORRECT_STATE. Vincule el punto final a una dirección de enlace local IPv6 de interfaz. |
En LwIP, este método no debe llamarse con el bloqueo de pila LwIP ya adquirido.
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
Vincular el punto final a una interfaz de red.
Vincula el punto final a la dirección IP de la interfaz de red especificada.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||||
Valores devueltos |
|
En LwIP, este método no debe llamarse con el bloqueo de pila LwIP ya adquirido.
Cerrar
void Close( void )
Cierre el punto final.
Si mState != kState_Closed
, cierra el punto final y lo elimina del conjunto de puntos finales elegibles para eventos de comunicación.
En sistemas LwIP, este método no debe llamarse con el bloqueo de pila LwIP ya adquirido.
Gratis
void Free( void )
Cierre el endpoint y recicle su memoria.
Invoca el método Close
, luego invoca el método InetLayerBasis::Release
para devolver el objeto a su grupo de memoria.
En sistemas LwIP, este método no debe llamarse con el bloqueo de pila LwIP ya adquirido.
GetBoundInterface
InterfaceId GetBoundInterface( void )
Obtenga la interfaz vinculada en este punto final.
Detalles | |
---|---|
Devoluciones | InterfaceId El ID de la interfaz enlazada. |
Escucha
INET_ERROR Listen( void )
Prepare el punto final para recibir mensajes ICMP.
Si mState
ya es kState_Listening
, entonces no se realiza ninguna operación; de lo contrario, mState
se establece en kState_Listening
y el punto final está preparado para recibir mensajes ICMPv6, de acuerdo con la semántica de la plataforma.
Detalles | |||
---|---|---|---|
Valores devueltos |
|
En LwIP, este método no se debe llamar con el bloqueo de pila LwIP ya adquirido
SendMsg
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 devueltos |
|
Enviar a
INET_ERROR SendTo( IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
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 devueltos |
|
SetICMPFilter
INET_ERROR SetICMPFilter( uint8_t numICMPTypes, const uint8_t *aICMPTypes )
Configure los parámetros del filtro ICMP6 en la pila de red.
Aplique los parámetros de filtrado ICMPv6 para los códigos en aICMPTypes
al extremo subyacente en la pila de redes del sistema.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||||
Valores devueltos |
|