nl:: Inet:: RawEndPoint
#include <src/inet/RawEndPoint.h>
Gli oggetti di questa classe rappresentano endpoint di rete IP non elaborati.
Riepilogo
Nest Inet Layer incapsula metodi per interagire con gli endpoint di rete IP (socket SOCK_RAW su sistemi Linux e BSD) o con blocchi di controllo del protocollo non elaborato LwIP, in quanto il sistema è configurato di conseguenza.
Eredità
Eredita da: nl::Inet::IPEndPointBasis
Attributi pubblici |
|
---|---|
IPProto
|
IPProtocol
versione di Internet Control Message Protocol (ICMP)
|
IPVer
|
IPVersion
Versione del protocollo internet.
|
Funzioni pubbliche |
|
---|---|
Bind(IPAddressType addrType, IPAddress addr, InterfaceId intfId)
|
Associa l'endpoint a un indirizzo IP dell'interfaccia.
|
BindIPv6LinkLocal(InterfaceId intf, IPAddress addr)
|
Associa l'endpoint non elaborato a un indirizzo di ambito IPv6 locale rispetto al collegamento all'indice dell'interfaccia specificato.
|
BindInterface(IPAddressType addrType, InterfaceId intf)
|
Associa l'endpoint a un'interfaccia di rete.
|
Close(void)
|
void
Chiudi l'endpoint.
|
Free(void)
|
void
Chiudi l'endpoint e ricicla la memoria.
|
GetBoundInterface(void)
|
InterfaceId
Ottieni l'interfaccia associata su questo endpoint.
|
Listen(void)
|
Prepara l'endpoint per ricevere i messaggi ICMP.
|
SendMsg(const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Invia un messaggio ICMP alla destinazione specificata.
|
SendTo(IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Un sinonimo di
SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags) . |
SendTo(IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Invia un messaggio ICMP all'indirizzo di destinazione specificato.
|
SetICMPFilter(uint8_t numICMPTypes, const uint8_t *aICMPTypes)
|
Imposta i parametri del filtro ICMP6 nello stack di rete.
|
Attributi pubblici
IPProto
IPProtocol IPProto
versione di Internet Control Message Protocol (ICMP)
Sebbene questo campo sia una variabile di classe modificabile, è un'invariante della classe che non può essere modificato.
IPVer
IPVersion IPVer
Versione del protocollo internet.
Sebbene questo campo sia una variabile di classe modificabile, è un'invariante della classe che non può essere modificato.
Funzioni pubbliche
Associa
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, InterfaceId intfId )
Associa l'endpoint a un indirizzo IP dell'interfaccia.
Associa l'endpoint all'indirizzo IP dell'interfaccia di rete specificato.
Dettagli | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||||
Valori restituiti |
|
Su LwIP, questo metodo non deve essere chiamato con il blocco dello stack LwIP già acquisito.
BindIPv6LinkLocal
INET_ERROR BindIPv6LinkLocal( InterfaceId intf, IPAddress addr )
Associa l'endpoint non elaborato a un indirizzo di ambito IPv6 locale e collegato all'indice dell'interfaccia specificato.
Consente inoltre di impostare varie opzioni socket IPv6 appropriate per la trasmissione di pacchetti da e verso destinazioni sul collegamento.
Associa l'endpoint all'indirizzo locale rispetto al collegamento IPv6 addr
sull'interfaccia di rete indicata da intf
.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Parametri |
|
||||||||||||
Valori restituiti |
|
||||||||||||
Restituisce |
INET_NO_ERROR in caso di operazione riuscita o un errore del sistema operativo mappato in caso di errore. Un elenco di parametri non valido può restituire INET_ERROR_WRONG_ADDRESS_TYPE. Se l'endpoint non elaborato è già associato o è in ascolto, restituisce INET_ERROR_INCORRECT_STATE. Associa l'endpoint a un indirizzo IPv6 e locale rispetto al collegamento dell'interfaccia.
|
Su LwIP, questo metodo non deve essere chiamato con il blocco dello stack LwIP già acquisito.
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
Associa l'endpoint a un'interfaccia di rete.
Associa l'endpoint all'indirizzo IP dell'interfaccia di rete specificato.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
Su LwIP, questo metodo non deve essere chiamato con il blocco dello stack LwIP già acquisito.
Chiudi
void Close( void )
Chiudi l'endpoint.
Se mState != kState_Closed
, l'endpoint viene chiuso e rimosso dall'insieme di endpoint idonei per gli eventi di comunicazione.
Nei sistemi LwIP, questo metodo non deve essere chiamato se il blocco dello stack LwIP è già acquisito.
Gratis
void Free( void )
Chiudi l'endpoint e ricicla la memoria.
Richiama il metodo Close
, quindi richiama il metodo InetLayerBasis::Release
per restituire l'oggetto nel relativo pool di memoria.
Nei sistemi LwIP, questo metodo non deve essere chiamato se il blocco dello stack LwIP è già acquisito.
GetBoundInterface
InterfaceId GetBoundInterface( void )
Ottieni l'interfaccia associata su questo endpoint.
Dettagli | |
---|---|
Restituisce |
InterfaceId L'ID dell'interfaccia associata.
|
Ascolta
INET_ERROR Listen( void )
Prepara l'endpoint per ricevere i messaggi ICMP.
Se mState
è già kState_Listening
, non viene eseguita alcuna operazione, altrimenti mState
viene impostato su kState_Listening
e l'endpoint è preparato per ricevere messaggi ICMPv6, in base alla semantica della piattaforma.
Dettagli | |||
---|---|---|---|
Valori restituiti |
|
Su LwIP, questo metodo non deve essere chiamato con il blocco dello stack LwIP già acquisito
SendMsg
INET_ERROR SendMsg( const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Invia un messaggio ICMP alla destinazione specificata.
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.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Valori restituiti |
|
SendTo
INET_ERROR SendTo( IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Un sinonimo di SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags)
.
SendTo
INET_ERROR SendTo( IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Invia un messaggio ICMP all'indirizzo di destinazione specificato.
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.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Valori restituiti |
|
SetICMPFilter
INET_ERROR SetICMPFilter( uint8_t numICMPTypes, const uint8_t *aICMPTypes )
Imposta i parametri del filtro ICMP6 nello stack di rete.
Applica i parametri di filtro ICMPv6 per i codici in aICMPTypes
all'endpoint sottostante nello stack di networking del sistema.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|