nl:: Inet:: RawEndPoint
#include <src/inet/RawEndPoint.h>
Obiekty tej klasy reprezentują punkty końcowe sieci z nieprzetworzonymi adresami IP.
Podsumowanie
System Nest Inet Layer zawiera metody interakcji z punktami końcowymi sieci IP (gniazda SOCK_RAW w systemach Linux i systemach opartych na BSD) oraz blokami sterującymi protokołu LwIP, ponieważ system jest odpowiednio skonfigurowany.
Dziedziczenie
Dziedziczy z: nl::Inet::IPEndPointBasis
Atrybuty publiczne |
|
---|---|
IPProto
|
IPProtocol
wersja protokołu ICMP (Internet Control Message Protocol),
|
IPVer
|
IPVersion
Wersja protokołu internetowego.
|
Funkcje publiczne |
|
---|---|
Bind(IPAddressType addrType, IPAddress addr, InterfaceId intfId)
|
Powiąż punkt końcowy z adresem IP interfejsu.
|
BindIPv6LinkLocal(InterfaceId intf, IPAddress addr)
|
Powiąż nieprzetworzony punkt końcowy z adresem zakresu połączenia lokalnego IPv6 w określonym indeksie interfejsu.
|
BindInterface(IPAddressType addrType, InterfaceId intf)
|
Powiąż punkt końcowy z interfejsem sieci.
|
Close(void)
|
void
Zamknij punkt końcowy.
|
Free(void)
|
void
Zamknij punkt końcowy i odśwież jego pamięć.
|
GetBoundInterface(void)
|
InterfaceId
Pobierz powiązany interfejs z tego punktu końcowego.
|
Listen(void)
|
Przygotuj punkt końcowy do odbierania komunikatów ICMP.
|
SendMsg(const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Wyślij wiadomość ICMP do podanego miejsca docelowego.
|
SendTo(IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Synonim słowa
SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags) . |
SendTo(IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Wyślij wiadomość ICMP na podany adres docelowy.
|
SetICMPFilter(uint8_t numICMPTypes, const uint8_t *aICMPTypes)
|
Ustaw parametry filtra ICMP6 w stosie sieci.
|
Atrybuty publiczne
IPProto
IPProtocol IPProto
wersja protokołu ICMP (Internet Control Message Protocol),
To pole jest zmienną klasy klasy, ale jest niezmiennym elementem klasy, którego nie można modyfikować.
protokół IPVer
IPVersion IPVer
Wersja protokołu internetowego.
To pole jest zmienną klasy klasy, ale jest niezmiennym elementem klasy, którego nie można modyfikować.
Funkcje publiczne
Powiąż
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, InterfaceId intfId )
Powiąż punkt końcowy z adresem IP interfejsu.
Wiąże punkt końcowy z określonym adresem IP interfejsu sieci.
Szczegóły | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||||||
Zwracane wartości |
|
W LwIP tej metody nie można wywoływać z zablokowaną blokadą stosu LwIP,
BindIPv6LinkLocal
INET_ERROR BindIPv6LinkLocal( InterfaceId intf, IPAddress addr )
Powiąż nieprzetworzony punkt końcowy z adresem zakresu połączenia lokalnego IPv6 w określonym indeksie interfejsu.
Ustawia też różne opcje gniazd IPv6 odpowiednie do przesyłania pakietów do i z miejsc docelowych w połączeniu.
Wiąże punkt końcowy z adresem połączenia lokalnego IPv6 addr
w interfejsie sieci wskazanym przez intf
.
Szczegóły | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||||
Parametry |
|
||||||||||||
Zwracane wartości |
|
||||||||||||
Zwroty |
INET_NO_ERROR w przypadku powodzenia lub zmapowany błąd systemu operacyjnego w przypadku niepowodzenia. Nieprawidłowa lista parametrów może skutkować wystąpieniem INET_ERROR_WRONG_ADDRESS_TYPE. Jeśli nieprzetworzony punkt końcowy jest już powiązany lub nasłuchuje, zwraca INET_ERROR_INCORRECT_STATE. Powiąż punkt końcowy z adresem połączenia lokalnego protokołu IPv6.
|
W LwIP tej metody nie można wywoływać z zablokowaną blokadą stosu LwIP,
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
Powiąż punkt końcowy z interfejsem sieci.
Wiąże punkt końcowy z określonym adresem IP interfejsu sieci.
Szczegóły | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||
Zwracane wartości |
|
W LwIP tej metody nie można wywoływać z zablokowaną blokadą stosu LwIP,
Zamknij
void Close( void )
Zamknij punkt końcowy.
Jeśli mState != kState_Closed
, zamyka punkt końcowy, usuwając go z zestawu punktów końcowych kwalifikujących się do obsługi zdarzeń komunikacji.
W systemach LwIP tej metody nie można wywoływać z dostępną blokadą stosu LwIP,
bezpłatnie
void Free( void )
Zamknij punkt końcowy i odśwież jego pamięć.
Wywołuje metodę Close
, a następnie metodę InetLayerBasis::Release
, aby zwrócić obiekt do puli pamięci.
W systemach LwIP tej metody nie można wywoływać z dostępną blokadą stosu LwIP,
GetBoundInterface
InterfaceId GetBoundInterface( void )
Pobierz powiązany interfejs z tego punktu końcowego.
Szczegóły | |
---|---|
Zwroty |
InterfaceId Identyfikator powiązanego interfejsu.
|
Posłuchaj
INET_ERROR Listen( void )
Przygotuj punkt końcowy do odbierania komunikatów ICMP.
Jeśli mState
ma już wartość kState_Listening
, nie jest wykonywana żadna operacja. W przeciwnym razie mState
ma wartość kState_Listening
, a punkt końcowy jest gotowy do odbierania komunikatów ICMPv6 zgodnie ze semantyką platformy.
Szczegóły | |||
---|---|---|---|
Zwracane wartości |
|
W LwIP tej metody nie można wywoływać z blokadą stosu LwIP, która została już pozyskana
SendMsg
INET_ERROR SendMsg( const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Wyślij wiadomość ICMP do podanego miejsca docelowego.
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.
Szczegóły | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||||
Zwracane wartości |
|
SendTo
INET_ERROR SendTo( IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Synonim słowa SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags)
.
SendTo
INET_ERROR SendTo( IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Wyślij wiadomość ICMP na podany adres docelowy.
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.
Szczegóły | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||||
Zwracane wartości |
|
SetICMPFilter
INET_ERROR SetICMPFilter( uint8_t numICMPTypes, const uint8_t *aICMPTypes )
Ustaw parametry filtra ICMP6 w stosie sieci.
Zastosuj parametry filtrowania ICMPv6 dla kodów z elementu aICMPTypes
do bazowego punktu końcowego w stosie sieci systemu.
Szczegóły | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||
Zwracane wartości |
|