nl:: Inet:: UDPEndPoint
#include <src/inet/UDPEndPoint.h>
Los objetos de esta clase representan extremos de transporte UDP.
Resumen
La capa de Inet de Nest encapsula métodos para interactuar con extremos de transporte UDP (sockets SOCK_DGRAM en sistemas Linux y derivados de BSD) o bloques de control del protocolo LwIP UDP, ya que el sistema se configura en consecuencia.
Herencia
Se hereda de: nl::Inet::IPEndPointBasis
Funciones públicas |
|
---|---|
Bind(IPAddressType addrType, IPAddress addr, uint16_t port, InterfaceId intfId)
|
Vincular el extremo a una dirección IP de interfaz
|
BindInterface(IPAddressType addrType, InterfaceId intf)
|
Vincular 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.
|
GetBoundPort(void)
|
uint16_t
|
Listen(void)
|
Prepara el extremo para recibir mensajes UDP.
|
SendMsg(const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Envía un mensaje UDP a un destino específico.
|
SendTo(IPAddress addr, uint16_t port, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Un sinónimo de
SendTo(addr, port, INET_NULL_INTERFACEID, msg, sendFlags) . |
SendTo(IPAddress addr, uint16_t port, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Envía un mensaje UDP a la dirección de destino especificada.
|
Funciones públicas
Vincular
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, uint16_t port, InterfaceId intfId )
Vincular 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 de retorno |
|
En LwIP, este método no se debe llamar 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 de retorno |
|
En LwIP, este método no se debe llamar con el bloqueo de pila de 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, este método no se debe llamar 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, el método InetLayerBasis::Release
para devolver el objeto a su grupo de memoria.
En los sistemas LwIP, este método no se debe llamar con el bloqueo de pila de LwIP ya adquirido.
GetBoundInterface
InterfaceId GetBoundInterface( void )
Obtén la interfaz vinculada en este extremo.
Detalles | |
---|---|
Resultado que se muestra |
InterfaceId: Es el ID de la interfaz vinculada.
|
GetBoundPort
uint16_t GetBoundPort( void )
Escuchar
INET_ERROR Listen( void )
Prepara el extremo para recibir mensajes UDP.
Si State
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 UDP, según la semántica de la plataforma.
Detalles | |||||
---|---|---|---|---|---|
Valores de retorno |
|
En LwIP, este método no se debe llamar 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 UDP a un destino específico.
Send the UDP message in \c msg to the destination address and port given in \c pktInfo. If \c pktInfo contains an interface id, the message will be sent over the specified interface. If \c pktInfo contains a source address, the given address will be used as the source of the UDP message. 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 de retorno |
|
SendTo
INET_ERROR SendTo( IPAddress addr, uint16_t port, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Un sinónimo de SendTo(addr, port, INET_NULL_INTERFACEID, msg, sendFlags)
.
SendTo
INET_ERROR SendTo( IPAddress addr, uint16_t port, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Envía un mensaje UDP a la dirección de destino especificada.
If possible, then this method sends the UDP message \c msg to the destination \c addr (with \c intfId used as the scope identifier for IPv6 link-local destinations) and \c port with the transmit option flags encoded in \c sendFlags. 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 de retorno |
|