nl:: Inet:: RawEndPoint
#include <src/inet/RawEndPoint.h>
Các đối tượng của lớp này đại diện cho các điểm cuối mạng IP thô.
Tóm tắt
Lớp Inet của Nest đóng gói các phương pháp tương tác với các thiết bị đầu cuối mạng IP (ổ cắm SOCK_RAW trên các hệ thống bắt nguồn từ Linux và BSD) hoặc các khối điều khiển giao thức thô LwIP, vì hệ thống được định cấu hình tương ứng.
Tính kế thừa
Kế thừa từ: nl::Inet::IPEndPointBasis
Các thuộc tính công khai |
|
---|---|
IPProto
|
IPProtocol
phiên bản của Giao thức thông báo kiểm soát Internet (ICMP)
|
IPVer
|
IPVersion
Phiên bản của giao thức Internet.
|
Hàm công khai |
|
---|---|
Bind(IPAddressType addrType, IPAddress addr, InterfaceId intfId)
|
Liên kết điểm cuối với một địa chỉ IP của giao diện.
|
BindIPv6LinkLocal(InterfaceId intf, IPAddress addr)
|
Liên kết điểm cuối thô với địa chỉ phạm vi liên kết cục bộ IPv6 tại chỉ mục giao diện được chỉ định.
|
BindInterface(IPAddressType addrType, InterfaceId intf)
|
Liên kết điểm cuối với một giao diện mạng.
|
Close(void)
|
void
Đóng điểm cuối.
|
Free(void)
|
void
Đóng điểm cuối và tái chế bộ nhớ của điểm cuối.
|
GetBoundInterface(void)
|
InterfaceId
Lấy giao diện ràng buộc trên điểm cuối này.
|
Listen(void)
|
Chuẩn bị điểm cuối để nhận thông báo ICMP.
|
SendMsg(const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Gửi thông báo ICMP đến đích đến được chỉ định.
|
SendTo(IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Từ đồng nghĩa của
SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags) . |
SendTo(IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Gửi thông báo ICMP đến địa chỉ đích được chỉ định.
|
SetICMPFilter(uint8_t numICMPTypes, const uint8_t *aICMPTypes)
|
Đặt các tham số bộ lọc ICMP6 trong ngăn xếp mạng.
|
Các thuộc tính công khai
IPProto
IPProtocol IPProto
phiên bản của Giao thức thông báo kiểm soát Internet (ICMP)
Mặc dù là một biến lớp có thể thay đổi, nhưng trường này là bất biến của lớp và không thể sửa đổi.
IPVer
IPVersion IPVer
Phiên bản của giao thức Internet.
Mặc dù là một biến lớp có thể thay đổi, nhưng trường này là bất biến của lớp và không thể sửa đổi.
Hàm công khai
Đóng gáy
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, InterfaceId intfId )
Liên kết điểm cuối với một địa chỉ IP của giao diện.
Liên kết điểm cuối với địa chỉ IP của giao diện mạng đã chỉ định.
Thông tin chi tiết | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||||||
Giá trị trả về |
|
Trên LwIP, bạn không được gọi phương thức này khi đã thu nạp khoá ngăn xếp LwIP.
BindIPv6LinkLocal
INET_ERROR BindIPv6LinkLocal( InterfaceId intf, IPAddress addr )
Liên kết điểm cuối thô với địa chỉ phạm vi liên kết cục bộ IPv6 tại chỉ mục giao diện được chỉ định.
Đồng thời thiết lập các tuỳ chọn ổ cắm IPv6 khác nhau phù hợp để truyền các gói đến và đi từ các đích trên liên kết.
Liên kết điểm cuối với địa chỉ liên kết cục bộ của IPv6 addr
trên giao diện mạng do intf
chỉ định.
Thông tin chi tiết | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||||
Tham số |
|
||||||||||||
Giá trị trả về |
|
||||||||||||
Trả về |
INET_NO_ERROR khi thành công hoặc lỗi đã ánh xạ hệ điều hành khi không thành công. Danh sách tham số không hợp lệ có thể dẫn đến INET_ERROR_WRONG_ADDRESS_TYPE. Nếu điểm cuối thô đã được liên kết hoặc đang nghe thì hệ thống sẽ trả về INET_ERROR_INTRUE_STATE. Liên kết điểm cuối với một địa chỉ liên kết cục bộ trong giao diện IPv6.
|
Trên LwIP, bạn không được gọi phương thức này khi đã thu nạp khoá ngăn xếp LwIP.
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
Liên kết điểm cuối với một giao diện mạng.
Liên kết điểm cuối với địa chỉ IP của giao diện mạng đã chỉ định.
Thông tin chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|
Trên LwIP, bạn không được gọi phương thức này khi đã thu nạp khoá ngăn xếp LwIP.
Đóng
void Close( void )
Đóng điểm cuối.
Nếu là mState != kState_Closed
, sau đó đóng điểm cuối, xoá điểm cuối đó khỏi tập hợp các điểm cuối đủ điều kiện cho sự kiện giao tiếp.
Trên các hệ thống LwIP, bạn không được gọi phương thức này khi đã thu nạp được khoá ngăn xếp LwIP.
Miễn phí
void Free( void )
Đóng điểm cuối và tái chế bộ nhớ của điểm cuối.
Gọi phương thức Close
, sau đó gọi phương thức InetLayerBasis::Release
để trả đối tượng về nhóm bộ nhớ.
Trên các hệ thống LwIP, bạn không được gọi phương thức này khi đã thu nạp được khoá ngăn xếp LwIP.
GetBoundInterface
InterfaceId GetBoundInterface( void )
Lấy giao diện ràng buộc trên điểm cuối này.
Thông tin chi tiết | |
---|---|
Trả về |
InterfaceId Mã giao diện ràng buộc.
|
Lắng nghe
INET_ERROR Listen( void )
Chuẩn bị điểm cuối để nhận thông báo ICMP.
Nếu mState
đã là kState_Listening
thì không có thao tác nào được thực hiện, nếu không thì mState
sẽ được đặt thành kState_Listening
và điểm cuối được chuẩn bị để nhận các thông báo ICMPv6, theo ngữ nghĩa của nền tảng.
Thông tin chi tiết | |||
---|---|---|---|
Giá trị trả về |
|
Trên LwIP, bạn không được gọi phương thức này khi đã thu nạp được khoá ngăn xếp LwIP
SendMsg
INET_ERROR SendMsg( const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Gửi thông báo ICMP đến đích đến được chỉ định.
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.
Thông tin chi tiết | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||||
Giá trị trả về |
|
SendTo
INET_ERROR SendTo( IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Từ đồng nghĩa của SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags)
.
SendTo
INET_ERROR SendTo( IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Gửi thông báo ICMP đến địa chỉ đích được chỉ định.
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.
Thông tin chi tiết | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||||
Giá trị trả về |
|
SetICMPFilter
INET_ERROR SetICMPFilter( uint8_t numICMPTypes, const uint8_t *aICMPTypes )
Đặt các tham số bộ lọc ICMP6 trong ngăn xếp mạng.
Áp dụng các tham số lọc ICMPv6 cho các mã trong aICMPTypes
cho điểm cuối cơ bản trong ngăn xếp kết nối mạng hệ thống.
Thông tin chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|