nl:: Inet:: RawEndPoint
#include <src/inet/RawEndPoint.h>
Gli oggetti di questa classe rappresentano endpoint di rete IP non elaborati.
Riepilogo
Nest Inet Layer racchiude i metodi per interagire con gli endpoint di rete IP (socket SOCK_RAW su sistemi Linux e derivati da BSD) o con blocchi di controllo del protocollo non elaborato LwIP, poiché il sistema viene configurato di conseguenza.
Eredità
Eredita da: nl::Inet::IPEndPointBasis
Attributi pubblici |
|
---|---|
IPProto
|
IPProtocol
versione dell'ICMP (Internet Control Message Protocol)
|
IPVer
|
IPVersion
Versione del protocollo Internet.
|
Funzioni pubbliche |
|
---|---|
Bind(IPAddressType addrType, IPAddress addr, InterfaceId intfId)
|
Associare l'endpoint a un indirizzo IP di interfaccia.
|
BindIPv6LinkLocal(InterfaceId intf, IPAddress addr)
|
Associa l'endpoint non elaborato a un indirizzo di ambito IPv6 locale rispetto al collegamento nell'indice dell'interfaccia specificato.
|
BindInterface(IPAddressType addrType, InterfaceId intf)
|
Associare l'endpoint a un'interfaccia di rete.
|
Close(void)
|
void
Chiudi l'endpoint.
|
Free(void)
|
void
Chiudi l'endpoint e ricicla la relativa memoria.
|
GetBoundInterface(void)
|
InterfaceId
Ottieni l'interfaccia associata su questo endpoint.
|
Listen(void)
|
Prepara l'endpoint per ricevere 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)
|
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 di filtro ICMP6 nello stack di rete.
|
Attributi pubblici
IPProto
IPProtocol IPProto
versione dell'ICMP (Internet Control Message Protocol)
Sebbene questo campo sia una variabile di classe modificabile, non è una variante della classe e non può essere modificato.
IPVer
IPVersion IPVer
Versione del protocollo Internet.
Sebbene questo campo sia una variabile di classe modificabile, non è una variante della classe e non può essere modificato.
Funzioni pubbliche
Associa
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, InterfaceId intfId )
Associare l'endpoint a un indirizzo IP di 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 rispetto al collegamento nell'indice dell'interfaccia specificato.
Consente inoltre di impostare varie opzioni socket IPv6 appropriate per la trasmissione di pacchetti da e verso destinazioni on-link.
Associa l'endpoint all'indirizzo IPv6 locale rispetto al collegamento addr
sull'interfaccia di rete indicata da intf
.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Parametri |
|
||||||||||||
Valori restituiti |
|
||||||||||||
Restituisce |
INET_NO_ERROR in caso di esito positivo o un errore del sistema operativo mappato in caso di errore. Un elenco di parametri non valido può generare 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'interfaccia IPv6 locale rispetto al collegamento.
|
Su LwIP, questo metodo non deve essere chiamato con il blocco dello stack LwIP già acquisito.
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
Associare 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
, chiude l'endpoint rimuovendolo dall'insieme di endpoint idonei per gli eventi di comunicazione.
Sui sistemi LwIP, questo metodo non deve essere chiamato con il blocco dello stack LwIP già acquisito.
Senza costi
void Free( void )
Chiudi l'endpoint e ricicla la relativa memoria.
Richiama il metodo Close
, quindi richiama il metodo InetLayerBasis::Release
per restituire l'oggetto al proprio pool di memoria.
Sui sistemi LwIP, questo metodo non deve essere chiamato con 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 messaggi ICMP.
Se mState
è già kState_Listening
, non viene eseguita alcuna operazione, altrimenti mState
viene impostato su kState_Listening
e l'endpoint viene preparato per i messaggi ICMPv6 ricevuti, 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 )
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 di 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 |
|