nl::Inet:: IPEndPointBasis

#include <src/inet/IPEndPointBasis.h>

אובייקטים של הכיתה הזו מייצגים נקודות קצה (endpoint) של פרוטוקולים ללא התקנה.

סיכום

ירושה

ירושה מאת: nl::Inet::EndPointBasis
קטגוריות משנה מוכרות ישירות:
nl::Inet::RawendPoint
nl::Inet::UDPEndPoint

סוגים ציבוריים

@8{
  kState_Ready = kBasisState_Closed,
  kState_Bound = 1,
  kState_Listening = 2,
  kState_Closed = 3
}
טיפוסים בני מנייה (enum)
מצב דינמי בסיסי של נקודת הקצה.
@9{
  kSendFlag_RetainBuffer = 0x0040
}
טיפוסים בני מנייה (enum)
שידור סימונים של האפשרות בשיטה SendMsg.
OnMessageReceivedFunct)(IPEndPointBasis *endPoint, Weave::System::PacketBuffer *msg, const IPPacketInfo *pktInfo) Typedef
void(*
סוג הפונקציה בקליטה של אירוע קליטת טקסט.
OnReceiveErrorFunct)(IPEndPointBasis *endPoint, INET_ERROR err, const IPPacketInfo *pktInfo) Typedef
void(*
סוג פונקציית הטיפול בשגיאת קליטה.

מאפיינים ציבוריים

OnMessageReceived
הענקת גישה לפונקצית אירועי קבלת ההודעות של נקודת הקצה.
OnReceiveError
להעניק לנקודת הקצה של אירוע לציון טיפול בשגיאות נקודת קצה.
mState
enum nl::Inet::IPEndPointBasis::@8
מצב דינמי בסיסי של נקודת הקצה.

מאפיינים מוגנים

mBoundIntfId
InterfaceId

תפקידים ציבוריים

JoinMulticastGroup(InterfaceId aInterfaceId, const IPAddress & aAddress)
הצטרפות לקבוצה של שידורים מרובים של כתובות IP.
LeaveMulticastGroup(InterfaceId aInterfaceId, const IPAddress & aAddress)
יציאה מקבוצת שידורים מרובים של כתובות IP.
SetMulticastLoopback(IPVersion aIPVersion, bool aLoopback)
הגדרה זו קובעת אם תנועה חזרה למספר שידורי IP מתרחשת בלופ.

פונקציות מוגנות

Bind(IPAddressType aAddressType, IPAddress aAddress, uint16_t aPort, InterfaceId aInterfaceId)
BindInterface(IPAddressType aAddressType, InterfaceId aInterfaceId)
GetSocket(IPAddressType aAddressType, int aType, int aProtocol)
HandleDataReceived(Weave::System::PacketBuffer *aBuffer)
void
HandlePendingIO(uint16_t aPort)
void
Init(InetLayer *aInetLayer)
void
PrepareIO(void)
SendMsg(const IPPacketInfo *aPktInfo, Weave::System::PacketBuffer *aBuffer, uint16_t aSendFlags)

פונקציות סטטיות ציבוריות

FindNetifFromInterfaceId(InterfaceId aInterfaceId)
struct netif *

פונקציות סטטיות מוגנות

GetPacketInfo(Weave::System::PacketBuffer *buf)
קבלת מידע על המקור וכתובת היעד של כתובת ה-IP של LwIP.

סוגים ציבוריים

8 אזכורים

 @8

מצב דינמי בסיסי של נקודת הקצה.

אובייקטים מופעלים במצב "Ready" במצב

הערה: הספירה של המדינה kBasisState_Closed ממופה ל-kState_Ready מסיבות היסטוריות של תאימות בינארית. ה-kState_Closed הקיים קיים כדי לזהות בנפרד את ההבחנה בין "לא נפתחה עדיין&& ; ; "לפני כן נפתחה &סגורה, שהייתה קיימת בעבר במצבים kState_Ready ו-kState_Closed.

מאפיינים
kState_Bound

נקודת הקצה מסומנת, אבל לא מקשיבה.

kState_Closed

נקודת הקצה נסגרה, מוכנה להשקה.

kState_Listening

נקודות קצה (endpoint) לקבלת נתונים.

kState_Ready

נקודת הקצה הופעלה, אבל לא פתוחה.

9 אזכורים

 @9

שידור סימונים של האפשרות בשיטה SendMsg.

מאפיינים
kSendFlag_RetainBuffer

לא להוסיף הודעה הרסנית להודעות.

הוספת עותק לתור.

OnMessageRecipientdFunct

void(* OnMessageReceivedFunct)(IPEndPointBasis *endPoint, Weave::System::PacketBuffer *msg, const IPPacketInfo *pktInfo)

סוג הפונקציה בקליטה של אירוע קליטת טקסט.

יש לספק פונקציה מסוג זה לנמען של הקצאת ההרשאות OnMessageReceived כדי לעבד אירועים של קבלת הודעות טקסט ב-endPoint, כאשר msg הוא טקסט ההודעה שהשולח קיבל מהכתובת senderAddr.

פרטים
פרמטרים
[in] endPoint
נקודת הקצה המשויכת לאירוע.
[in] msg
טקסט ההודעה התקבל.
[in] senderAddr
כתובת ה-IP של השולח.

OnGetErrorFunct

void(* OnReceiveErrorFunct)(IPEndPointBasis *endPoint, INET_ERROR err, const IPPacketInfo *pktInfo)

סוג פונקציית הטיפול בשגיאת קליטה.

יש לספק פונקציה מסוג זה לנציגים של OnReceiveError כדי לאפשר להם לעבד אירועי שגיאה בקבלה בתאריך endPoint. הארגומנט err מספק פרטים ספציפיים על סוג השגיאה.

פרטים
פרמטרים
[in] endPoint
נקודת הקצה המשויכת לאירוע.
[in] err
הסיבה לשגיאה.

מאפיינים ציבוריים

OnMessageקבלת

OnMessageReceivedFunct OnMessageReceived

הענקת גישה לפונקצית אירועי קבלת ההודעות של נקודת הקצה.

OnGetError

OnReceiveErrorFunct OnReceiveError

להעניק לנקודת הקצה של אירוע לציון טיפול בשגיאות נקודת קצה.

מצב רוח

enum nl::Inet::IPEndPointBasis::@8 mState

מצב דינמי בסיסי של נקודת הקצה.

אובייקטים מופעלים במצב "Ready" במצב

הערה: הספירה של המדינה kBasisState_Closed ממופה ל-kState_Ready מסיבות היסטוריות של תאימות בינארית. ה-kState_Closed הקיים קיים כדי לזהות בנפרד את ההבחנה בין "לא נפתחה עדיין&& ; ; "לפני כן נפתחה &סגורה, שהייתה קיימת בעבר במצבים kState_Ready ו-kState_Closed.

מאפיינים מוגנים

mBoundIntfId

InterfaceId mBoundIntfId

תפקידים ציבוריים

הצטרף ל-MulticastGroup

INET_ERROR JoinMulticastGroup(
  InterfaceId aInterfaceId,
  const IPAddress & aAddress
)

הצטרפות לקבוצה של שידורים מרובים של כתובות IP.

מצטרפים באמצעות נקודת הקצה לקבוצת שידורים מרובים שסופקה בממשק שצוין.

פרטים
פרמטרים
[in] aInterfaceId
האינדיקטור של ממשק הרשת להוספה לקבוצת שידורים מרובים
[in] aAddress
של קבוצת שידורים מרובים שאליה יש להוסיף את הממשק
ערכי החזרה
INET_NO_ERROR
בוצע בהצלחה: קבוצת שידורים מרובים הוסרה
INET_ERROR_UNKNOWN_INTERFACE
ממשק רשת לא ידוע, aInterfaceId
INET_ERROR_WRONG_ADDRESS_TYPE
aAddress אינו kIPAddressType_IPv4 או kIPAddressType_IPv6 ואינו שידור לקבוצה
other
שגיאת מערכת או פלטפורמה אחרת

יציאה מ-MulticastGroup

INET_ERROR LeaveMulticastGroup(
  InterfaceId aInterfaceId,
  const IPAddress & aAddress
)

יציאה מקבוצת שידורים מרובים של כתובות IP.

יש להסיר את נקודת הקצה מקבוצת שידורים שסופק בממשק שצוין.

פרטים
פרמטרים
[in] aInterfaceId
האינדיקטור של ממשק הרשת שיש להסיר מקבוצת שידורים מרובים
[in] aAddress
קבוצה של שידורים מרוקנים
ערכי החזרה
INET_NO_ERROR
בוצע בהצלחה: קבוצת שידורים מרובים הוסרה
INET_ERROR_UNKNOWN_INTERFACE
ממשק רשת לא ידוע, aInterfaceId
INET_ERROR_WRONG_ADDRESS_TYPE
aAddress אינו kIPAddressType_IPv4 או kIPAddressType_IPv6 ואינו שידור לקבוצה
other
שגיאת מערכת או פלטפורמה אחרת

הגדרת MulticastLoopback

INET_ERROR SetMulticastLoopback(
  IPVersion aIPVersion,
  bool aLoopback
)

הגדרה זו קובעת אם תנועה חזרה למספר שידורי IP מתרחשת בלופ.

מגדירים אם יש לחזור חזרה בין נקודות IP של שידורים מרובים.

פרטים
פרמטרים
[in] aIPVersion
[in] aLoop
ערכי החזרה
INET_NO_ERROR
הצלחת: הוגדר התנהגות הלוך ושוב של שידור לקבוצה
other
שגיאת מערכת או פלטפורמה אחרת

פונקציות מוגנות

שירותי כריכה

INET_ERROR Bind(
  IPAddressType aAddressType,
  IPAddress aAddress,
  uint16_t aPort,
  InterfaceId aInterfaceId
)

ממשק בינדינג

INET_ERROR BindInterface(
  IPAddressType aAddressType,
  InterfaceId aInterfaceId
)

GetSocket

INET_ERROR GetSocket(
  IPAddressType aAddressType,
  int aType,
  int aProtocol
)

HandleDataהתקבל

void HandleDataReceived(
  Weave::System::PacketBuffer *aBuffer
)

HandlePendingIO

void HandlePendingIO(
  uint16_t aPort
)

Init

void Init(
  InetLayer *aInetLayer
)

בהכנה

SocketEvents PrepareIO(
  void
)

שליחה

INET_ERROR SendMsg(
  const IPPacketInfo *aPktInfo,
  Weave::System::PacketBuffer *aBuffer,
  uint16_t aSendFlags
)

פונקציות סטטיות ציבוריות

FindNetifFromInterfaceId

struct netif * FindNetifFromInterfaceId(
  InterfaceId aInterfaceId
)

פונקציות סטטיות מוגנות

GetPacketInfo

IPPacketInfo * GetPacketInfo(
  Weave::System::PacketBuffer *buf
)

קבלת מידע על המקור וכתובת היעד של כתובת ה-IP של LwIP.

כשמשתמשים במידע על LWIP לגבי החבילה, אפשר להשתמש ב-##99;מוסתר&#39. במקום השמור לפני תחילת הנתונים במאגר הנתונים. עליכם לעשות זאת כי לאירועי שכבת המערכת יש רק שני ארגומנטים, שבמקרה הזה הם משמשים כדי להעביר את הסמן לנקודת הסיום ואת הסמן למאגר.

פרטים
פרמטרים
[in] aBuffer
מאגר החבילות המכיל את הודעת ה-IP
החזרות
מצביע על פרטי הכתובת על הצלחה. אחרת, NULL אם אין מספיק נפח מידע בחבילה עבור פרטי הכתובת.

ברוב המקרים, הטעיה של אחסון מידע לפני שהנתונים פועלים כי המאגר הראשון בהודעת IP מסוג LwIP מכיל את הרווח ששימש לכותרות ה-Ethernet/IP/UDP. עם זאת, בגלל הגודל הנוכחי של מבנה IPPacketInfo (40 בייטים), ייתכן שלא יהיה מספיק מקום לאחסן את המבנה יחד עם המטען הייעודי במאגר נתונים זמני. בפועל, זה קורה רק בחבילות IPv4 גדולות מאוד שמגיעות ללא כותרת אתרנט.