nl::Inet::TCPEndPoint

#include <src/inet/TCPEndPoint.h>

इस क्लास के ऑब्जेक्ट, टीसीपी ट्रांसपोर्ट एंडपॉइंट दिखाते हैं.

खास जानकारी

Nest Inet लेयर, टीसीपी ट्रांसपोर्ट एंडपॉइंट (Linux और BSD से मिलने वाले सिस्टम पर SOCK_STREAM सॉकेट) या LwIP टीसीपी प्रोटोकॉल कंट्रोल ब्लॉक के साथ इंटरैक्ट करने के तरीकों को इनकैप्सुलेट करता है, क्योंकि सिस्टम को सही तरीके से कॉन्फ़िगर किया जाता है.

इनहेरिटेंस

यहां से इनहेरिट किया जाता है: nl::Inet::EndPointBasis

सार्वजनिक टाइप

@10{
  kState_Ready = kBasisState_Closed,
  kState_Bound = 1,
  kState_Listening = 2,
  kState_Connecting = 3,
  kState_Connected = 4,
  kState_SendShutdown = 5,
  kState_ReceiveShutdown = 6,
  kState_Closing = 7,
  kState_Closed = 8
}
enum
मौजूदा एंडपॉइंट की बुनियादी डाइनैमिक स्थिति.
OnAcceptErrorFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
कनेक्शन स्वीकार करने में हुई गड़बड़ी से जुड़े इवेंट को हैंडल करने वाले फ़ंक्शन का टाइप.
OnConnectCompleteFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
कनेक्शन बनाने के इवेंट हैंडलिंग फ़ंक्शन का टाइप.
OnConnectionClosedFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
कनेक्शन बनाने के इवेंट हैंडलिंग फ़ंक्शन का टाइप.
OnConnectionReceivedFunct)(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort) typedef
void(*
कनेक्शन से मिला इवेंट हैंडलिंग फ़ंक्शन का टाइप.
OnDataReceivedFunct)(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data) typedef
void(*
डेटा रिसेप्शन इवेंट हैंडलिंग फ़ंक्शन का टाइप.
OnDataSentFunct)(TCPEndPoint *endPoint, uint16_t len) typedef
void(*
डेटा ट्रांसमिशन इवेंट हैंडलिंग फ़ंक्शन का टाइप.
OnPeerCloseFunct)(TCPEndPoint *endPoint) typedef
void(*
हाफ़-ऑफ़ रिसेप्शन इवेंट हैंडलिंग फ़ंक्शन का टाइप.
OnTCPSendIdleChangedFunct)(TCPEndPoint *endPoint, bool isIdle) typedef
void(*
टीसीपी SendIdle के टाइप ने सिग्नल हैंडलिंग फ़ंक्शन को बदल दिया है.

सार्वजनिक एट्रिब्यूट

OnAcceptError
एंडपॉइंट का कनेक्शन स्वीकार करने से जुड़ा इवेंट मैनेज करने वाला फ़ंक्शन डेलिगेट.
OnConnectComplete
एंडपॉइंट का कनेक्शन स्थापित करने से जुड़ा इवेंट हैंडलिंग फ़ंक्शन डेलिगेट.
OnConnectionClosed
एंडपॉइंट का नज़दीकी इवेंट हैंडलिंग फ़ंक्शन डेलिगेट.
OnConnectionReceived
एंडपॉइंट के कनेक्शन को, इवेंट हैंडलिंग का डेलिगेट मिला है.
OnDataReceived
एंडपॉइंट का मैसेज टेक्स्ट रिसेप्शन इवेंट हैंडलिंग का फ़ंक्शन डेलिगेट.
OnDataSent
एंडपॉइंट का मैसेज टेक्स्ट ट्रांसमिशन इवेंट हैंडलिंग फ़ंक्शन डेलिगेट.
OnPeerClose
एंडपॉइंट का आधा बंद वाला 'पाने वाला' इवेंट हैंडलिंग फ़ंक्शन डेलिगेट.
OnTCPSendIdleChanged
जब टीसीपी कनेक्शन के भेजे गए चैनल के इस्तेमाल में न होने की स्थिति में बदलाव होता है, तब एंडपॉइंट सिग्नलिंग का इवेंट हैंडलिंग फ़ंक्शन डेलिगेट.
ReceiveEnabled
bool
कंट्रोल स्विच, जिससे पता चलता है कि ऐप्लिकेशन को डेटा मिल रहा है या नहीं.
State
enum nl::Inet::TCPEndPoint::@10
मौजूदा एंडपॉइंट की बुनियादी डाइनैमिक स्थिति.

सार्वजनिक फ़ंक्शन

Abort(void)
void
एंडपॉइंट को अचानक बंद करना है, दूसरे शब्दों में कहें, तो आरएसटी पैकेट भेजें.
AckReceive(uint16_t len)
मैसेज टेक्स्ट मिलने की पुष्टि करें.
Bind(IPAddressType addrType, IPAddress addr, uint16_t port, bool reuseAddr)
एंडपॉइंट को किसी इंटरफ़ेस आईपी पते से बाइंड करें.
Close(void)
दूसरे शब्दों में, टीसीपी को पूरी तरह से शुरू करें. इसे भेजने और पाने, दोनों के साथ पूरा करें.
Connect(IPAddress addr, uint16_t port, InterfaceId intf)
टीसीपी कनेक्शन शुरू करें.
DisableKeepAlive(void)
टीसीपी "कीप-अलाइव" विकल्प को बंद करें.
DisableReceive(void)
void
रिसेप्शन बंद करें.
EnableKeepAlive(uint16_t interval, uint16_t timeoutCount)
टीसीपी "कीप-अलाइव" विकल्प को चालू करें.
EnableNoDelay(void)
EnableNoDelay.
EnableReceive(void)
void
रिसेप्शन चालू करें.
Free(void)
void
गड़बड़ियों को अनदेखा करते हुए, टीसीपी को पूरी तरह से बंद करके शुरू करें या जारी रखें.
GetLocalInfo(IPAddress *retAddr, uint16_t *retPort)
लोकल एंडपॉइंट का आईपी पता और टीसीपी पोर्ट निकालें.
GetPeerInfo(IPAddress *retAddr, uint16_t *retPort) const
रिमोट एंडपॉइंट का आईपी पता और टीसीपी पोर्ट निकालें.
IsConnected(void) const
bool
एक्सट्रैक्ट करें कि क्या टीसीपी कनेक्शन स्थापित है.
Listen(uint16_t backlog)
टीसीपी मैसेज पाने के लिए, एंडपॉइंट को तैयार करें.
LogId(void)
uint16_t
एंडपॉइंट के लिए आइडेंटिफ़ायर पाना.
MarkActive(void)
void
दूसरे शब्दों में, गतिविधि को नोट करें. इससे, डिवाइस इस्तेमाल में न होने वाले टाइमर को रीसेट किया जा सकता है.
PendingReceiveLength(void)
uint32_t
स्वीकार नहीं किए गए डेटा की लंबाई निकालें.
PendingSendLength(void)
uint32_t
पहले ट्रांसमिट किए जाने वाले डेटा की लंबाई निकालें.
PutBackReceivedData(Weave::System::PacketBuffer *data)
मैसेज के टेक्स्ट को वापस पाने की सूची में सबसे ऊपर पुश करें.
Send(Weave::System::PacketBuffer *data, bool push)
टीसीपी कनेक्शन पर मैसेज टेक्स्ट भेजें.
SetConnectTimeout(const uint32_t connTimeoutMsecs)
void
कनेक्ट के लिए टाइम आउट सेट करें, ताकि कनेक्ट हो सके या गड़बड़ी का मैसेज दिखाया जा सके.
SetUserTimeout(uint32_t userTimeoutMillis)
टीसीपी टीसीपी_USER_TIMEOUT सॉकेट विकल्प सेट करें.
Shutdown(void)
दूसरे शब्दों में, टीसीपी को भेजने की प्रक्रिया के दौरान ही शुरू करें.

सार्वजनिक टाइप

@10

 @10

मौजूदा एंडपॉइंट की बुनियादी डाइनैमिक स्थिति.

ऑब्जेक्ट, "रेडी" स्थिति में शुरू होते हैं. इसके बाद, टीसीपी ट्रांसपोर्ट स्टेट मशीन की स्थितियों को आसान बनाने के बाद की स्थिति पर जाएं.

ध्यान दें: पुराने तरीके से बाइनरी के साथ काम करने की वजहों के लिए, kBasisState_Closed स्टेट इन्यूरेशन को kState_Ready पर मैप किया जाता है. मौजूदा kState_Closed, "अभी तक नहीं खोला गया" और "पहले खुला हुआ अब बंद हो गया है" के बीच के अंतर को अलग से पहचानने के लिए मौजूद है, जो पहले kState_Ready और kState_Closed राज्यों में मौजूद था.

प्रॉपर्टी
kState_Bound

एंडपॉइंट बाउंड है, लेकिन सुन नहीं रहा है.

kState_Closed

एंडपॉइंट बंद हो गया, अब रिलीज़ के लिए तैयार है.

kState_Closing

एंडपॉइंट दो दिशाओं से बंद हो रहा है.

kState_Connected

एंडपॉइंट कनेक्ट हो गया. tx/rx के लिए तैयार है.

kState_Connecting

एंडपॉइंट से कनेक्ट करने की कोशिश की जा रही है.

kState_Listening

एंडपॉइंट को कनेक्शन मिल रहे हैं.

kState_Ready

एंडपॉइंट शुरू किया गया, लेकिन वह बाउंड नहीं है.

kState_ReceiveShutdown

एंडपॉइंट ने आधा बंद करने का जवाब दिया.

kState_SendShutdown

एंडपॉइंट ने अपने-आप बंद होने की प्रक्रिया शुरू कर दी है.

OnAcceptErrorFunct

void(* OnAcceptErrorFunct)(TCPEndPoint *endPoint, INET_ERROR err)

कनेक्शन स्वीकार करने में हुई गड़बड़ी से जुड़े इवेंट को हैंडल करने वाले फ़ंक्शन का टाइप.

OnAcceptError प्रतिनिधि के सदस्य को इस तरह का फ़ंक्शन दें, ताकि endPoint पर कनेक्शन स्वीकार करने से जुड़ी गड़बड़ी के इवेंट को प्रोसेस किया जा सके. err आर्ग्युमेंट, गड़बड़ी के टाइप के बारे में खास जानकारी देता है.

जानकारी
पैरामीटर
[in] endPoint
इवेंट से जुड़ा टीसीपी एंडपॉइंट.
[in] err
गड़बड़ी की वजह.

OnConnectCompleteFunct

void(* OnConnectCompleteFunct)(TCPEndPoint *endPoint, INET_ERROR err)

कनेक्शन बनाने के इवेंट हैंडलिंग फ़ंक्शन का टाइप.

endPoint को कनेक्शन बनाने के इवेंट प्रोसेस करने के लिए, OnConnectComplete के प्रतिनिधि को इस तरह का फ़ंक्शन दें. err तर्क, सफल कनेक्शन और असफलताओं में अंतर करता है.

जानकारी
पैरामीटर
[in] endPoint
इवेंट से जुड़ा टीसीपी एंडपॉइंट.
[in] err
सफल होने पर INET_NO_ERROR, नहीं तो कोई दूसरा कोड.

OnConnectionClosedFunct

void(* OnConnectionClosedFunct)(TCPEndPoint *endPoint, INET_ERROR err)

कनेक्शन बनाने के इवेंट हैंडलिंग फ़ंक्शन का टाइप.

OnConnectionClosed के प्रतिनिधि को इस तरह का कोई फ़ंक्शन दें, ताकि endPoint को कनेक्शन बंद किए जाने के इवेंट को प्रोसेस किया जा सके. err आर्ग्युमेंट, खत्म होने की प्रोसेस और असफलताओं के बीच फ़र्क़ करता है.

जानकारी
पैरामीटर
[in] endPoint
इवेंट से जुड़ा टीसीपी एंडपॉइंट.
[in] err
सफल होने पर INET_NO_ERROR, नहीं तो कोई दूसरा कोड.

OnConnectionReceivedFunct

void(* OnConnectionReceivedFunct)(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort)

कनेक्शन से मिला इवेंट हैंडलिंग फ़ंक्शन का टाइप.

OnConnectionReceived के प्रतिनिधि को इस तरह का फ़ंक्शन दें, ताकि listeningEndPoint को कनेक्शन के रिसेप्शन इवेंट को प्रोसेस किया जा सके. मिला नया एंडपॉइंट conEndPoint, आईपी पते peerAddr और टीसीपी पोर्ट peerPort पर मौजूद है.

जानकारी
पैरामीटर
[in] listeningEndPoint
लिसनिंग टीसीपी एंडपॉइंट.
[in] conEndPoint
मिला नया टीसीपी एंडपॉइंट.
[in] peerAddr
रिमोट पीयर का आईपी पता.
[in] peerPort
रिमोट पीयर का टीसीपी पोर्ट.

OnDataReceivedFunct

void(* OnDataReceivedFunct)(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data)

डेटा रिसेप्शन इवेंट हैंडलिंग फ़ंक्शन का टाइप.

OnDataReceived के प्रतिनिधि को इस तरह का कोई फ़ंक्शन दें, ताकि डेटा रिसेप्शन इवेंट को endPoint पर प्रोसेस किया जा सके. ऐसा तब किया जाता है, जब मैसेज टेक्स्ट data होता है.

जानकारी
पैरामीटर
[in] endPoint
इवेंट से जुड़ा टीसीपी एंडपॉइंट.
[in] data
मिला डेटा.

डेटा रिसेप्शन इवेंट हैंडलर को AckReceive तरीके का इस्तेमाल करके प्रोसेस किए गए डेटा की पुष्टि करनी होगी. डेटा बफ़र में Free तरीके को भी तब तक शुरू करना होगा, जब तक कि इसके बजाय PutBackReceivedData का इस्तेमाल न किया जाए.

OnDataSentFunct

void(* OnDataSentFunct)(TCPEndPoint *endPoint, uint16_t len)

डेटा ट्रांसमिशन इवेंट हैंडलिंग फ़ंक्शन का टाइप.

OnDataSent के प्रतिनिधि को endPoint पर डेटा ट्रांसमिशन इवेंट प्रोसेस करने के लिए, इस टाइप का कोई फ़ंक्शन दें. यहां len, टीसीपी ट्रांसमिट विंडो में जोड़े गए मैसेज टेक्स्ट की लंबाई है, जो मौजूदा नेटवर्क स्टैक से भेजे जा सकते हैं.

जानकारी
पैरामीटर
[in] endPoint
इवेंट से जुड़ा टीसीपी एंडपॉइंट.
[in] len
ट्रांसमिट विंडो में जोड़े गए बाइट की संख्या.

OnPeerCloseFunct

void(* OnPeerCloseFunct)(TCPEndPoint *endPoint)

हाफ़-ऑफ़ रिसेप्शन इवेंट हैंडलिंग फ़ंक्शन का टाइप.

OnPeerClose के प्रतिनिधि को इस तरह का कोई फ़ंक्शन दें, ताकि endPoint को कनेक्शन बंद किए जाने के इवेंट को प्रोसेस किया जा सके.

जानकारी
पैरामीटर
[in] endPoint
इवेंट से जुड़ा टीसीपी एंडपॉइंट.

OnTCPSendIdleChangedFunct

void(* OnTCPSendIdleChangedFunct)(TCPEndPoint *endPoint, bool isIdle)

टीसीपी SendIdle के टाइप ने सिग्नल हैंडलिंग फ़ंक्शन को बदल दिया है.

OnTCPSendIdleChanged के प्रतिनिधि को इस तरह का कोई फ़ंक्शन दें, ताकि TCPEndPoint के भेजे जाने वाले चैनल के इवेंट को कुछ समय के लिए इस्तेमाल न किए जाने की स्थिति में बदलाव किया जा सके.

जानकारी
पैरामीटर
[in] endPoint
इवेंट से जुड़ा टीसीपी एंडपॉइंट.
[in] isIdle
अगर टीसीपी एंडपॉइंट का सेंड चैनल कुछ समय से इस्तेमाल में नहीं है, तो वैल्यू 'सही' होगी, नहीं तो 'गलत है'.

सार्वजनिक एट्रिब्यूट

OnAcceptError

OnAcceptErrorFunct OnAcceptError

एंडपॉइंट का कनेक्शन स्वीकार करने से जुड़ा इवेंट मैनेज करने वाला फ़ंक्शन डेलिगेट.

OnConnectComplete

OnConnectCompleteFunct OnConnectComplete

एंडपॉइंट का कनेक्शन स्थापित करने से जुड़ा इवेंट हैंडलिंग फ़ंक्शन डेलिगेट.

OnConnectionClosed

OnConnectionClosedFunct OnConnectionClosed

एंडपॉइंट का नज़दीकी इवेंट हैंडलिंग फ़ंक्शन डेलिगेट.

OnConnectionReceived

OnConnectionReceivedFunct OnConnectionReceived

एंडपॉइंट के कनेक्शन को, इवेंट हैंडलिंग का डेलिगेट मिला है.

OnDataReceived

OnDataReceivedFunct OnDataReceived

एंडपॉइंट का मैसेज टेक्स्ट रिसेप्शन इवेंट हैंडलिंग का फ़ंक्शन डेलिगेट.

OnDataSent

OnDataSentFunct OnDataSent

एंडपॉइंट का मैसेज टेक्स्ट ट्रांसमिशन इवेंट हैंडलिंग फ़ंक्शन डेलिगेट.

OnPeerClose

OnPeerCloseFunct OnPeerClose

एंडपॉइंट का आधा बंद वाला 'पाने वाला' इवेंट हैंडलिंग फ़ंक्शन डेलिगेट.

OnTCPSendIdleChanged

OnTCPSendIdleChangedFunct OnTCPSendIdleChanged

जब टीसीपी कनेक्शन के भेजे गए चैनल के इस्तेमाल में न होने की स्थिति में बदलाव होता है, तब एंडपॉइंट सिग्नलिंग का इवेंट हैंडलिंग फ़ंक्शन डेलिगेट.

इसका इस्तेमाल, ऊपर वाली लेयर में किया जाता है, ताकि उपयोगकर्ता के सर्वर पर भेजा गया डेटा भरोसेमंद तरीके से डिलीवर हो पाया गया है या नहीं, इस आधार पर ज़रूरी कार्रवाइयां की जा सकें.

ReceiveEnabled

bool ReceiveEnabled

कंट्रोल स्विच, जिससे पता चलता है कि ऐप्लिकेशन को डेटा मिल रहा है या नहीं.

स्थिति

enum nl::Inet::TCPEndPoint::@10 State

मौजूदा एंडपॉइंट की बुनियादी डाइनैमिक स्थिति.

ऑब्जेक्ट, "रेडी" स्थिति में शुरू होते हैं. इसके बाद, टीसीपी ट्रांसपोर्ट स्टेट मशीन की स्थितियों को आसान बनाने के बाद की स्थिति पर जाएं.

ध्यान दें: पुराने तरीके से बाइनरी के साथ काम करने की वजहों के लिए, kBasisState_Closed स्टेट इन्यूरेशन को kState_Ready पर मैप किया जाता है. मौजूदा kState_Closed, "अभी तक नहीं खोला गया" और "पहले खुला हुआ अब बंद हो गया है" के बीच के अंतर को अलग से पहचानने के लिए मौजूद है, जो पहले kState_Ready और kState_Closed राज्यों में मौजूद था.

सार्वजनिक फ़ंक्शन

रद्द करें

void Abort(
  void
)

एंडपॉइंट को अचानक बंद करना है, दूसरे शब्दों में कहें, तो आरएसटी पैकेट भेजें.

AckReceive

INET_ERROR AckReceive(
  uint16_t len
)

मैसेज टेक्स्ट मिलने की पुष्टि करें.

पूरा डेटा या उसका कुछ हिस्सा पाने की पुष्टि करने के लिए, इस तरीके का इस्तेमाल करें. अगर len, मिले हुए कुल बकाया डेटा से ज़्यादा है, तो ऑपरेशनल सिमेंटिक की जानकारी नहीं दी जाती.

जानकारी
पैरामीटर
[in] len
स्वीकार करने के लिए बाइट की संख्या.
रिटर्न वैल्यू
INET_NO_ERROR
सफलता: रिसेप्शन की पुष्टि हो गई.
INET_ERROR_INCORRECT_STATE
टीसीपी कनेक्शन स्थापित नहीं है.
INET_ERROR_CONNECTION_ABORTED
टीसीपी कनेक्शन अब खुला नहीं है.

बाइंड

INET_ERROR Bind(
  IPAddressType addrType,
  IPAddress addr,
  uint16_t port,
  bool reuseAddr
)

एंडपॉइंट को किसी इंटरफ़ेस आईपी पते से बाइंड करें.

एंडपॉइंट को बताए गए नेटवर्क इंटरफ़ेस के आईपी पते से बाइंड करता है.

जानकारी
पैरामीटर
[in] addrType
आईपी पते का प्रोटोकॉल वर्शन
[in] addr
आईपी पता (इंटरफ़ेस का पता होना चाहिए)
[in] port
टीसीपी पोर्ट
[in] reuseAddr
बाइंडिंग को अन्य एंडपॉइंट के साथ शेयर करने का विकल्प
रिटर्न वैल्यू
INET_NO_ERROR
सफल: एंडपॉइंट, पते से जुड़ा है
INET_ERROR_INCORRECT_STATE
एंडपॉइंट पहले से ही बाउंड है
INET_NO_MEMORY
एंडपॉइंट के लिए कम मेमोरी
INET_ERROR_WRONG_PROTOCOL_TYPE
addrType का मिलान IPVer से नहीं होता.
INET_ERROR_WRONG_ADDRESS_TYPE
addrType, kIPAddressType_Any है या addr का टाइप, addrType के बराबर नहीं है.
other
सिस्टम या प्लैटफ़ॉर्म में कोई दूसरी गड़बड़ी हुई है

LwIP पर, इस तरीके को पहले से हासिल किए गए LwIP स्टैक लॉक के साथ कॉल नहीं किया जाना चाहिए.

बंद करें

INET_ERROR Close(
  void
)

दूसरे शब्दों में, टीसीपी को पूरी तरह से शुरू करें. इसे भेजने और पाने, दोनों के साथ पूरा करें.

जानकारी
रिटर्न वैल्यू
INET_NO_ERROR
सफलता: पता और पोर्ट निकाला गया.
INET_ERROR_INCORRECT_STATE
टीसीपी कनेक्शन स्थापित नहीं है.
other
सिस्टम या प्लैटफ़ॉर्म में कोई दूसरी गड़बड़ी हुई है

कनेक्ट करें

INET_ERROR Connect(
  IPAddress addr,
  uint16_t port,
  InterfaceId intf
)

टीसीपी कनेक्शन शुरू करें.

 If possible, then this method initiates a TCP connection to the
 destination \c addr (with \c intf used as the scope
 identifier for IPv6 link-local destinations) and \c port.

जानकारी
पैरामीटर
[in] addr
डेस्टिनेशन का आईपी पता
[in] port
डेस्टिनेशन टीसीपी पोर्ट
[in] intf
एक वैकल्पिक नेटवर्क इंटरफ़ेस इंडिकेटर
रिटर्न वैल्यू
INET_NO_ERROR
सफल: msg ट्रांसमिट के लिए कतार में है.
INET_ERROR_NOT_IMPLEMENTED
सिस्टम पर लागू करने की प्रक्रिया पूरी नहीं हुई है.
INET_ERROR_WRONG_ADDRESS_TYPE
डेस्टिनेशन के पते और बाउंड इंटरफ़ेस पते में मेल खाने वाले प्रोटोकॉल वर्शन या पता टाइप नहीं है या डेस्टिनेशन पता IPv6 लिंक-लोकल पता है और intf नहीं बताया गया है.
other
सिस्टम या प्लैटफ़ॉर्म में कोई दूसरी गड़बड़ी हुई है

DisableKeepAlive

INET_ERROR DisableKeepAlive(
  void
)

टीसीपी "कीप-अलाइव" विकल्प को बंद करें.

TCPEndPoint::DisableKeepAlive.

इससे जुड़े टीसीपी कनेक्शन पर, टीसीपी कीपअलाइव जांच बंद करें.

जानकारी
रिटर्न वैल्यू
INET_NO_ERROR
सफलता: पता और पोर्ट निकाला गया.
INET_ERROR_INCORRECT_STATE
टीसीपी कनेक्शन स्थापित नहीं है.
INET_ERROR_CONNECTION_ABORTED
टीसीपी कनेक्शन अब खुला नहीं है.
INET_ERROR_NOT_IMPLEMENTED
सिस्टम पर लागू करने की प्रक्रिया पूरी नहीं हुई है.
other
सिस्टम या प्लैटफ़ॉर्म में कोई दूसरी गड़बड़ी हुई है

ध्यान दें: इस तरीके को सिर्फ़ तब कॉल किया जा सकता है, जब एंडपॉइंट, कनेक्ट की गई किसी स्थिति में हो. अगर एंडपॉइंट पर कीपअलाइव (चालू रखें) की सुविधा चालू नहीं है, तो यह तरीका कुछ नहीं करता.

DisableReceive

void DisableReceive(
  void
)

रिसेप्शन बंद करें.

सभी इवेंट हैंडलर बंद करें. रिसेप्शन की सुविधा बंद करने वाले एंडपॉइंट पर भेजा गया डेटा, तब तक स्वीकार किया जाएगा, जब तक कि पाने की विंडो खत्म नहीं हो जाती.

EnableKeepAlive

INET_ERROR EnableKeepAlive(
  uint16_t interval,
  uint16_t timeoutCount
)

टीसीपी "कीप-अलाइव" विकल्प को चालू करें.

TCPEndPoint::EnableKeepAlive.

हर interval सेकंड में, टीसीपी "कीप-अलाइव" जांच सेगमेंट को अपने-आप ट्रांसमिट करना शुरू करें. नेगेटिव जवाब मिलने पर या timeoutCount जांच सेगमेंट भेजने के बाद, कनेक्शन अपने-आप रद्द हो जाएगा और आपको पॉज़िटिव जवाब नहीं मिलेगा.

जानकारी
पैरामीटर
[in] interval
जांच अनुरोधों के बीच सेकंड में समय.
[in] timeoutCount
टाइम आउट से पहले भेजी जाने वाली जांचों की संख्या.
रिटर्न वैल्यू
INET_NO_ERROR
सफलता: पता और पोर्ट निकाला गया.
INET_ERROR_INCORRECT_STATE
टीसीपी कनेक्शन स्थापित नहीं है.
INET_ERROR_CONNECTION_ABORTED
टीसीपी कनेक्शन अब खुला नहीं है.
INET_ERROR_NOT_IMPLEMENTED
सिस्टम पर लागू करने की प्रक्रिया पूरी नहीं हुई है.
other
सिस्टम या प्लैटफ़ॉर्म में कोई दूसरी गड़बड़ी हुई है

खास जानकारी के लिए, आरएफ़सी 1122 का सेक्शन 4.2.3.6 देखें.

इससे जुड़े टीसीपी कनेक्शन पर, टीसीपी कीपअलाइव जांच चालू करें.

ध्यान दें: इस तरीके को सिर्फ़ तब कॉल किया जा सकता है, जब एंडपॉइंट, कनेक्ट की गई किसी स्थिति में हो. कीपअलाइव इंटरवल या टाइम आउट की संख्या को अडजस्ट करने के लिए, इस तरीके को कई बार इस्तेमाल किया जा सकता है.

जानकारी
पैरामीटर
interval
कीपअलाइव प्रोब के बीच का अंतराल (सेकंड में). यह वैल्यू, भेजे गए आखिरी डेटा पैकेट और कीपअलाइव (चालू रखें) की पहली जांच के ट्रांसमिशन के बीच के समय को भी कंट्रोल करती है.
timeoutCount
बिना अनुमति वाली जांचों की ज़्यादा से ज़्यादा संख्या, कनेक्शन को फ़ेल माना जाएगा.

EnableNoDelay

INET_ERROR EnableNoDelay(
  void
)

EnableNoDelay.

TCPEndPoint::EnableNoDelay.

टीसीपी_NOINDEX सॉकेट के विकल्प सेट करके, टीसीपी में नागल बफ़रिंग एल्गोरिदम को बंद करें.

EnableReceive

void EnableReceive(
  void
)

रिसेप्शन चालू करें.

सभी इवेंट हैंडलर चालू करें. रिसेप्शन की सुविधा बंद करने वाले एंडपॉइंट पर भेजा गया डेटा, तब तक स्वीकार किया जाएगा, जब तक कि पाने की विंडो खत्म नहीं हो जाती.

बिना किसी शुल्क के आज़माएं

void Free(
  void
)

गड़बड़ियों को अनदेखा करते हुए, टीसीपी को पूरी तरह से बंद करके शुरू करें या जारी रखें.

ऑब्जेक्ट को मुफ़्त पूल में भेज दिया जाता है और बाद में, बाकी बचे सभी उपयोगकर्ता रेफ़रंस अमान्य हो जाते हैं.

GetLocalInfo

INET_ERROR GetLocalInfo(
  IPAddress *retAddr,
  uint16_t *retPort
)

लोकल एंडपॉइंट का आईपी पता और टीसीपी पोर्ट निकालें.

किसी भी आर्ग्युमेंट के लिए, NULL की पॉइंटर वैल्यू का इस्तेमाल न करें.

जानकारी
पैरामीटर
[out] retAddr
लोकल एंडपॉइंट का आईपी पता.
[out] retPort
लोकल एंडपॉइंट का टीसीपी पोर्ट.
रिटर्न वैल्यू
INET_NO_ERROR
सफलता: पता और पोर्ट निकाला गया.
INET_ERROR_INCORRECT_STATE
टीसीपी कनेक्शन स्थापित नहीं है.
INET_ERROR_CONNECTION_ABORTED
टीसीपी कनेक्शन अब खुला नहीं है.

GetPeerInfo

INET_ERROR GetPeerInfo(
  IPAddress *retAddr,
  uint16_t *retPort
) const 

रिमोट एंडपॉइंट का आईपी पता और टीसीपी पोर्ट निकालें.

किसी भी आर्ग्युमेंट के लिए, NULL की पॉइंटर वैल्यू का इस्तेमाल न करें.

जानकारी
पैरामीटर
[out] retAddr
रिमोट एंडपॉइंट का आईपी पता.
[out] retPort
रिमोट एंडपॉइंट का टीसीपी पोर्ट.
रिटर्न वैल्यू
INET_NO_ERROR
सफलता: पता और पोर्ट निकाला गया.
INET_ERROR_INCORRECT_STATE
टीसीपी कनेक्शन स्थापित नहीं है.
INET_ERROR_CONNECTION_ABORTED
टीसीपी कनेक्शन अब खुला नहीं है.

IsConnected

bool IsConnected(
  void
) const 

एक्सट्रैक्ट करें कि क्या टीसीपी कनेक्शन स्थापित है.

सुनें

INET_ERROR Listen(
  uint16_t backlog
)

टीसीपी मैसेज पाने के लिए, एंडपॉइंट को तैयार करें.

अगर State पहले से ही kState_Listening है, तो कोई कार्रवाई नहीं की जाती. ऐसा न होने पर, State को kState_Listening पर सेट किया जाता है और एंडपॉइंट को प्लैटफ़ॉर्म के सिमैंटिक के मुताबिक टीसीपी मैसेज पाने के लिए तैयार किया जाता है.

जानकारी
पैरामीटर
[in] backlog
कनेक्शन स्वीकार करने की सूची की ज़्यादा से ज़्यादा गहराई
रिटर्न वैल्यू
INET_NO_ERROR
सफल: एंडपॉइंट, मैसेज पाने के लिए तैयार है.
INET_ERROR_INCORRECT_STATE
एंडपॉइंट पहले से ही सुन रहा है.

कुछ प्लैटफ़ॉर्म पर, backlog आर्ग्युमेंट का इस्तेमाल नहीं किया जाता. हालांकि, लाइन की गहराई तय होती है, एक बार में सिर्फ़ एक कनेक्शन स्वीकार किया जा सकता है.

LwIP सिस्टम पर, इस तरीके को पहले से हासिल किए गए LwIP स्टैक लॉक के साथ कॉल नहीं किया जाना चाहिए

LogId

uint16_t LogId(
  void
)

एंडपॉइंट के लिए आइडेंटिफ़ायर पाना.

जानकारी
लौटाए गए सामान
इस्तेमाल के लॉग के लिए, कोई ओपेक यूनीक आइडेंटिफ़ायर दिखाता है.

MarkActive

void MarkActive(
  void
)

दूसरे शब्दों में, गतिविधि को नोट करें. इससे, डिवाइस इस्तेमाल में न होने वाले टाइमर को रीसेट किया जा सकता है.

कुछ समय से इस्तेमाल में न होने वाले टाइमर को शून्य पर रीसेट करें.

PendingReceiveLength

uint32_t PendingReceiveLength(
  void
)

स्वीकार नहीं किए गए डेटा की लंबाई निकालें.

जानकारी
लौटाए गए सामान
पाने वालों की सूची में ऐसे बाइट की संख्या जिन्हें अब तक AckReceive(uint16_t len) से स्वीकार नहीं किया गया है.

PendingSendLength

uint32_t PendingSendLength(
  void
)

पहले ट्रांसमिट किए जाने वाले डेटा की लंबाई निकालें.

जानकारी
लौटाए गए सामान
ट्रांसमिट की गई सूची में मौजूद बाइट की संख्या.

PutBackReceivedData

INET_ERROR PutBackReceivedData(
  Weave::System::PacketBuffer *data
)

मैसेज के टेक्स्ट को वापस पाने की सूची में सबसे ऊपर पुश करें.

इस तरीके को सिर्फ़ डेटा रिसेप्शन इवेंट हैंडलर कॉल कर सकते हैं, ताकि जिस हिस्से को स्वीकार नहीं किया गया है उसे पाने वाले की सूची में वापस रखा जा सके. अगर कॉलर, डेटा रिसेप्शन इवेंट हैंडलर के दायरे से बाहर है, data, हैंडलर को दिया गया Weave::System::PacketBuffer नहीं है, तो ऑपरेशनल सिमेंटिक की जानकारी नहीं दिखती. इसके अलावा, AckReceive(uint16_t len) तरीके को किए गए पिछले कॉल से मिली बाइट के बाद, data में वह हिस्सा शामिल नहीं होता है जिसकी पुष्टि नहीं की गई है.

जानकारी
पैरामीटर
[out] data
पुश करने के लिए संदेश टेक्स्ट.
रिटर्न वैल्यू
INET_NO_ERROR
सफलता: रिसेप्शन की पुष्टि हो गई.
INET_ERROR_INCORRECT_STATE
टीसीपी कनेक्शन स्थापित नहीं है.

भेजें

INET_ERROR Send(
  Weave::System::PacketBuffer *data,
  bool push
)

टीसीपी कनेक्शन पर मैसेज टेक्स्ट भेजें.

ट्रांसमिशन पूरा हुआ या नहीं, फिर भी Weave::System::PacketBuffer::Free तरीके को data आर्ग्युमेंट में कॉल किया जाता है.

जानकारी
पैरामीटर
[out] data
भेजने के लिए मैसेज टेक्स्ट.
[out] push
अगर true है, तो तुरंत भेजें, नहीं तो फिर सूची में भेजें.
रिटर्न वैल्यू
INET_NO_ERROR
सफलता: पता और पोर्ट निकाला गया.
INET_ERROR_INCORRECT_STATE
टीसीपी कनेक्शन स्थापित नहीं है.

SetConnectTimeout

void SetConnectTimeout(
  const uint32_t connTimeoutMsecs
)

कनेक्ट के लिए टाइम आउट सेट करें, ताकि कनेक्ट हो सके या गड़बड़ी का मैसेज दिखाया जा सके.

जानकारी
पैरामीटर
[in] connTimeoutMsecs

SetUserTimeout

INET_ERROR SetUserTimeout(
  uint32_t userTimeoutMillis
)

टीसीपी टीसीपी_USER_TIMEOUT सॉकेट विकल्प सेट करें.

TCPEndPoint::SetUserTimeout.

वैल्यू 0 से ज़्यादा होने पर, यह मिलीसेकंड में ज़्यादा से ज़्यादा समय तय करता है. हो सकता है कि ट्रांसमिट किए गए डेटा को स्वीकार न किया गया हो. इसके बाद ही टीसीपी जब उससे जुड़ा कनेक्शन बंद कर दे, ऐसा हो सकता है. अगर विकल्प की वैल्यू 0 है, तो टीसीपी, सिस्टम की डिफ़ॉल्ट वैल्यू का इस्तेमाल करेगा. ज़्यादा जानकारी के लिए, आरएफ़सी 5482 देखें.

जानकारी
पैरामीटर
[in] userTimeoutMillis
टीसीपी उपयोगकर्ता का टाइम आउट मान मिलीसेकंड में.
रिटर्न वैल्यू
INET_NO_ERROR
सफलता: पता और पोर्ट निकाला गया.
INET_ERROR_NOT_IMPLEMENTED
सिस्टम पर लागू करने की प्रक्रिया पूरी नहीं हुई है.
other
सिस्टम या प्लैटफ़ॉर्म में कोई दूसरी गड़बड़ी हुई है

टीसीपी उपयोगकर्ता के टाइम आउट सॉकेट का विकल्प सेट करें.

वैल्यू 0 से ज़्यादा होने पर, यह मिलीसेकंड में ज़्यादा से ज़्यादा समय तय करता है. हो सकता है कि ट्रांसमिट किए गए डेटा को स्वीकार न किया गया हो. इसके बाद ही टीसीपी जब उससे जुड़ा कनेक्शन बंद कर दे, ऐसा हो सकता है. अगर विकल्प की वैल्यू 0 है, तो टीसीपी, सिस्टम की डिफ़ॉल्ट सेटिंग का इस्तेमाल करेगा. ज़्यादा जानकारी के लिए, आरएफ़सी 5482 देखें.

ध्यान दें: इस तरीके को सिर्फ़ तब कॉल किया जा सकता है, जब एंडपॉइंट, कनेक्ट की गई किसी स्थिति में हो. कीपअलाइव इंटरवल या टाइम आउट की संख्या को अडजस्ट करने के लिए, इस तरीके को कई बार इस्तेमाल किया जा सकता है.

बंद है

INET_ERROR Shutdown(
  void
)

दूसरे शब्दों में, टीसीपी को भेजने की प्रक्रिया के दौरान ही शुरू करें.

जानकारी
रिटर्न वैल्यू
INET_NO_ERROR
सफलता: पता और पोर्ट निकाला गया.
INET_ERROR_INCORRECT_STATE
टीसीपी कनेक्शन स्थापित नहीं है.
other
सिस्टम या प्लैटफ़ॉर्म में कोई दूसरी गड़बड़ी हुई है