nl :: Inet :: UDPEndPoint
#include <src/inet/UDPEndPoint.h>
Os objetos desta classe representam os terminais de transporte UDP.
Resumo
A camada Nest Inet encapsula métodos para interagir com pontos finais de transporte UDP (soquetes SOCK_DGRAM em sistemas Linux e derivados de BSD) ou blocos de controle de protocolo LwIP UDP, conforme o sistema é configurado de acordo.
Herança
Herda: nl :: Inet :: IPEndPointBasisFunções públicas | |
---|---|
Bind (IPAddressType addrType, IPAddress addr, uint16_t port, InterfaceId intfId) | Vincule o ponto de extremidade a um endereço IP de interface. |
BindInterface (IPAddressType addrType, InterfaceId intf) | Vincule o ponto de extremidade a uma interface de rede. |
Close (void) | void Feche o terminal. |
Free (void) | void Feche o ponto de extremidade e recicle sua memória. |
GetBoundInterface (void) | InterfaceId Obtenha a interface vinculada neste terminal. |
GetBoundPort (void) | uint16_t |
Listen (void) | Prepare o endpoint para receber mensagens UDP. |
SendMsg (const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags) | Envie uma mensagem UDP para um destino especificado. |
SendTo ( IPAddress addr, uint16_t port, Weave::System::PacketBuffer *msg, uint16_t sendFlags) | Um sinónimo para SendTo(addr, port, INET_NULL_INTERFACEID, msg, sendFlags) . |
SendTo ( IPAddress addr, uint16_t port, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags) | Envie uma mensagem UDP para o endereço de destino especificado. |
Funções públicas
Ligar
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, uint16_t port, InterfaceId intfId )
Vincule o ponto de extremidade a um endereço IP de interface.
Vincula o ponto de extremidade ao endereço IP da interface de rede especificado.
Detalhes | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||||||||
Valores Retornados |
|
No LwIP, este método não deve ser chamado com o bloqueio de pilha LwIP já adquirido.
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
Vincule o ponto de extremidade a uma interface de rede.
Vincula o ponto de extremidade ao endereço IP da interface de rede especificado.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||||
Valores Retornados |
|
No LwIP, este método não deve ser chamado com o bloqueio de pilha LwIP já adquirido.
Perto
void Close( void )
Feche o terminal.
Se mState != kState_Closed
, em seguida, fecha o ponto final, removendo-o do conjunto de endpoints elegíveis para eventos de comunicação.
Em sistemas LwIP, este método não deve ser chamado com o bloqueio de pilha LwIP já adquirido.
Livre
void Free( void )
Feche o ponto de extremidade e recicle sua memória.
Chama o Close
método, em seguida, chama o InetLayerBasis::Release
método para retornar o objeto à sua pool de memória.
Em sistemas LwIP, este método não deve ser chamado com o bloqueio de pilha LwIP já adquirido.
GetBoundInterface
InterfaceId GetBoundInterface( void )
Obtenha a interface vinculada neste terminal.
Detalhes | |
---|---|
Devoluções | InterfaceId O ID da interface vinculada. |
GetBoundPort
uint16_t GetBoundPort( void )
Ouço
INET_ERROR Listen( void )
Prepare o endpoint para receber mensagens UDP.
Se State
já está kState_Listening
, então nenhuma operação for executada, caso contrário o mState
está definido para kState_Listening
eo ponto final é preparado para mensagens UDP recebidos, de acordo com a semântica da plataforma.
Detalhes | |||||
---|---|---|---|---|---|
Valores Retornados |
|
No LwIP, este método não deve ser chamado com o bloqueio de pilha LwIP já adquirido
SendMsg
INET_ERROR SendMsg( const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Envie uma mensagem UDP para um destino especificado.
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.
Detalhes | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||||||
Valores Retornados |
|
Enviar para
INET_ERROR SendTo( IPAddress addr, uint16_t port, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Um sinónimo para SendTo(addr, port, INET_NULL_INTERFACEID, msg, sendFlags)
.
Enviar para
INET_ERROR SendTo( IPAddress addr, uint16_t port, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Envie uma mensagem UDP para o endereço de destino especificado.
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.
Detalhes | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||||||
Valores Retornados |
|