nl::Inet::TCPEndPoint

#include <src/inet/TCPEndPoint.h>

Objek dari class ini mewakili endpoint transpor TCP.

Ringkasan

Nest Inet Layer mengenkapsulasi metode untuk berinteraksi dengan endpoint transpor TCP (soket SOCK_STREAM di sistem yang berasal dari Linux dan BSD) atau blok kontrol protokol TCP LwIP, karena sistem telah dikonfigurasi dengan sesuai.

Inheritance

Mewarisi dari: nl::Inet::EndPointBasis

Jenis publik

@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
Status dinamis dasar endpoint yang mendasari.
OnAcceptErrorFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
Jenis fungsi penanganan peristiwa error penerimaan koneksi.
OnConnectCompleteFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
Jenis fungsi penanganan peristiwa pembuatan koneksi.
OnConnectionClosedFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
Jenis fungsi penanganan peristiwa pembuatan koneksi.
OnConnectionReceivedFunct)(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort) typedef
void(*
Jenis koneksi yang diterima fungsi penanganan peristiwa.
OnDataReceivedFunct)(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data) typedef
void(*
Jenis fungsi penanganan peristiwa penerimaan data.
OnDataSentFunct)(TCPEndPoint *endPoint, uint16_t len) typedef
void(*
Jenis fungsi penanganan peristiwa transmisi data.
OnPeerCloseFunct)(TCPEndPoint *endPoint) typedef
void(*
Jenis fungsi penanganan peristiwa penerimaan setengah tertutup.
OnTCPSendIdleChangedFunct)(TCPEndPoint *endPoint, bool isIdle) typedef
void(*
Jenis TCP SendIdle mengubah fungsi penanganan sinyal.

Atribut publik

OnAcceptError
Delegasi fungsi penanganan peristiwa penerimaan koneksi endpoint.
OnConnectComplete
Delegasi fungsi penanganan peristiwa pembentukan koneksi endpoint.
OnConnectionClosed
Delegasi fungsi penanganan peristiwa tutup endpoint.
OnConnectionReceived
Koneksi endpoint menerima delegasi fungsi penanganan peristiwa.
OnDataReceived
Delegasi fungsi penanganan peristiwa penerimaan teks pesan endpoint.
OnDataSent
Delegasi fungsi penanganan peristiwa transmisi teks pesan endpoint.
OnPeerClose
Delegasi fungsi penanganan peristiwa penerimaan half-close endpoint.
OnTCPSendIdleChanged
Delegasi fungsi penanganan peristiwa dari pensinyalan endpoint saat kondisi tidak ada aktivitas koneksi TCP berubah.
ReceiveEnabled
bool
Tombol kontrol yang menunjukkan apakah aplikasi menerima data.
State
enum nl::Inet::TCPEndPoint::@10
Status dinamis dasar endpoint yang mendasari.

Fungsi publik

Abort(void)
void
Menutup endpoint secara dibatalkan, dengan kata lain, mengirim paket RST.
AckReceive(uint16_t len)
Konfirmasi penerimaan teks pesan.
Bind(IPAddressType addrType, IPAddress addr, uint16_t port, bool reuseAddr)
Ikat endpoint ke alamat IP antarmuka.
Close(void)
Memulai TCP sepenuhnya, dengan kata lain, diselesaikan dengan mengirim dan menerima.
Connect(IPAddress addr, uint16_t port, InterfaceId intf)
Memulai koneksi TCP.
DisableKeepAlive(void)
Menonaktifkan opsi "keep-alive" TCP.
DisableReceive(void)
void
Nonaktifkan penerimaan sinyal.
EnableKeepAlive(uint16_t interval, uint16_t timeoutCount)
Mengaktifkan opsi "keep-alive" TCP.
EnableNoDelay(void)
EnableNoDelay.
EnableReceive(void)
void
Aktifkan penerimaan.
Free(void)
void
Memulai (atau melanjutkan) TCP sepenuhnya, mengabaikan kesalahan.
GetLocalInfo(IPAddress *retAddr, uint16_t *retPort)
Mengekstrak alamat IP dan port TCP endpoint lokal.
GetPeerInfo(IPAddress *retAddr, uint16_t *retPort) const
Mengekstrak alamat IP dan port TCP endpoint jarak jauh.
IsConnected(void) const
bool
Ekstrak apakah koneksi TCP tersambung.
Listen(uint16_t backlog)
Menyiapkan endpoint untuk menerima pesan TCP.
LogId(void)
uint16_t
Dapatkan ID untuk endpoint.
MarkActive(void)
void
Mencatat aktivitas, dengan kata lain, mereset timer yang tidak ada aktivitas.
PendingReceiveLength(void)
uint32_t
Ekstrak panjang data penerimaan yang tidak dikonfirmasi.
PendingSendLength(void)
uint32_t
Mengekstrak durasi data yang menunggu pengiriman pertama.
PutBackReceivedData(Weave::System::PacketBuffer *data)
Mendorong teks pesan kembali ke kepala antrean penerimaan.
Send(Weave::System::PacketBuffer *data, bool push)
Mengirim teks pesan di koneksi TCP.
SetConnectTimeout(const uint32_t connTimeoutMsecs)
void
Setel waktu tunggu agar Connect berhasil atau menampilkan error.
SetUserTimeout(uint32_t userTimeoutMillis)
Setel opsi soket TCP TCP_USER_TIMEOUT.
Shutdown(void)
Memulai TCP setengah, dengan kata lain, selesai dengan pengiriman.

Jenis publik

@10

 @10

Status dinamis dasar endpoint yang mendasari.

Objek diinisialisasi dalam status "siap", lanjutkan ke status berikutnya yang sesuai dengan penyederhanaan status mesin status transpor TCP.

Catatan:Enumerasi status kBasisState_Closed dipetakan ke kState_Ready untuk alasan kompatibilitas biner historis. kState_Closed yang ada ada untuk mengidentifikasi secara terpisah perbedaan antara "belum dibuka" dan "sebelumnya dibuka sekarang ditutup" yang ada sebelumnya dalam status kState_Ready dan kState_Closed.

Properti
kState_Bound

Endpoint terikat, tetapi tidak merespons.

kState_Closed

Endpoint ditutup, siap dirilis.

kState_Closing

Endpoint ditutup secara dua arah.

kState_Connected

Endpoint terhubung, siap untuk tx/rx.

kState_Connecting

Endpoint mencoba terhubung.

kState_Listening

Endpoint yang menerima koneksi.

kState_Ready

Endpoint diinisialisasi, tetapi tidak terikat.

kState_ReceiveShutdown

Endpoint merespons half-close.

kState_SendShutdown

Endpoint memulai setengah penutupan.

OnAcceptErrorFunct

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

Jenis fungsi penanganan peristiwa error penerimaan koneksi.

Berikan fungsi jenis ini kepada anggota delegasi OnAcceptError untuk memproses peristiwa error penerimaan koneksi di endPoint. Argumen err memberikan detail spesifik tentang jenis error.

Detail
Parameter
[in] endPoint
Endpoint TCP yang terkait dengan peristiwa.
[in] err
Alasan error.

OnConnectCompleteFunct

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

Jenis fungsi penanganan peristiwa pembuatan koneksi.

Berikan fungsi jenis ini kepada anggota delegasi OnConnectComplete untuk memproses peristiwa pembuatan koneksi di endPoint. Argumen err membedakan koneksi yang berhasil dari koneksi yang gagal.

Detail
Parameter
[in] endPoint
Endpoint TCP yang terkait dengan peristiwa.
[in] err
INET_NO_ERROR jika berhasil, kode lain.

OnConnectionClosedFunct

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

Jenis fungsi penanganan peristiwa pembuatan koneksi.

Berikan fungsi jenis ini kepada anggota delegasi OnConnectionClosed untuk memproses peristiwa penghentian koneksi di endPoint. Argumen err membedakan penghentian yang berhasil dengan kegagalan.

Detail
Parameter
[in] endPoint
Endpoint TCP yang terkait dengan peristiwa.
[in] err
INET_NO_ERROR jika berhasil, kode lain.

OnConnectionReceivedFunct

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

Jenis koneksi yang diterima fungsi penanganan peristiwa.

Sediakan fungsi jenis ini kepada anggota delegasi OnConnectionReceived untuk memproses peristiwa penerimaan koneksi di listeningEndPoint. Endpoint conEndPoint yang baru diterima berada di alamat IP peerAddr dan port TCP peerPort.

Detail
Parameter
[in] listeningEndPoint
Endpoint TCP pemroses.
[in] conEndPoint
Endpoint TCP yang baru diterima.
[in] peerAddr
Alamat IP peer jarak jauh.
[in] peerPort
Porta TCP peer jarak jauh.

OnDataReceivedFunct

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

Jenis fungsi penanganan peristiwa penerimaan data.

Sediakan fungsi jenis ini kepada anggota delegasi OnDataReceived untuk memproses peristiwa penerimaan data di endPoint dengan data sebagai teks pesan yang diterima.

Detail
Parameter
[in] endPoint
Endpoint TCP yang terkait dengan peristiwa.
[in] data
Data yang diterima.

Pengendali peristiwa penerimaan data harus mengonfirmasi data yang diproses menggunakan metode AckReceive. Metode Free pada buffering data juga harus dipanggil kecuali jika PutBackReceivedData digunakan sebagai gantinya.

OnDataSentFunct

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

Jenis fungsi penanganan peristiwa transmisi data.

Sediakan fungsi jenis ini kepada anggota delegasi OnDataSent untuk memproses peristiwa transmisi data di endPoint dengan len adalah panjang teks pesan yang ditambahkan ke jendela transmisi TCP, yang memenuhi syarat untuk dikirim oleh stack jaringan dasar.

Detail
Parameter
[in] endPoint
Endpoint TCP yang terkait dengan peristiwa.
[in] len
Jumlah byte yang ditambahkan ke jendela transmisi.

OnPeerCloseFunct

void(* OnPeerCloseFunct)(TCPEndPoint *endPoint)

Jenis fungsi penanganan peristiwa penerimaan setengah tertutup.

Berikan fungsi jenis ini kepada anggota delegasi OnPeerClose untuk memproses peristiwa penghentian koneksi di endPoint.

Detail
Parameter
[in] endPoint
Endpoint TCP yang terkait dengan peristiwa.

OnTCPSendIdleChangedFunct

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

Jenis TCP SendIdle mengubah fungsi penanganan sinyal.

Berikan fungsi jenis ini kepada anggota delegasi OnTCPSendIdleChanged untuk memproses peristiwa saluran kirim TCPEndPoint yang mengubah status antara tidak ada aktivitas dan bukan tidak ada aktivitas.

Detail
Parameter
[in] endPoint
Endpoint TCP yang terkait dengan peristiwa.
[in] isIdle
True jika saluran kirim endpoint TCP Idle, jika tidak, false.

Atribut publik

OnAcceptError

OnAcceptErrorFunct OnAcceptError

Delegasi fungsi penanganan peristiwa penerimaan koneksi endpoint.

OnConnectComplete

OnConnectCompleteFunct OnConnectComplete

Delegasi fungsi penanganan peristiwa pembentukan koneksi endpoint.

OnConnectionClosed

OnConnectionClosedFunct OnConnectionClosed

Delegasi fungsi penanganan peristiwa tutup endpoint.

OnConnectionReceived

OnConnectionReceivedFunct OnConnectionReceived

Koneksi endpoint menerima delegasi fungsi penanganan peristiwa.

OnDataReceived

OnDataReceivedFunct OnDataReceived

Delegasi fungsi penanganan peristiwa penerimaan teks pesan endpoint.

OnDataSent

OnDataSentFunct OnDataSent

Delegasi fungsi penanganan peristiwa transmisi teks pesan endpoint.

OnPeerClose

OnPeerCloseFunct OnPeerClose

Delegasi fungsi penanganan peristiwa penerimaan half-close endpoint.

OnTCPSendIdleChanged

OnTCPSendIdleChangedFunct OnTCPSendIdleChanged

Delegasi fungsi penanganan peristiwa dari pensinyalan endpoint saat kondisi tidak ada aktivitas koneksi TCP berubah.

Hal ini digunakan oleh lapisan atas untuk mengambil tindakan yang tepat berdasarkan apakah data yang dikirim telah dikirimkan dengan andal ke rekan.

ReceiveEnabled

bool ReceiveEnabled

Tombol kontrol yang menunjukkan apakah aplikasi menerima data.

Negara Bagian

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

Status dinamis dasar endpoint yang mendasari.

Objek diinisialisasi dalam status "siap", lanjutkan ke status berikutnya yang sesuai dengan penyederhanaan status mesin status transpor TCP.

Catatan:Enumerasi status kBasisState_Closed dipetakan ke kState_Ready untuk alasan kompatibilitas biner historis. kState_Closed yang ada ada untuk mengidentifikasi secara terpisah perbedaan antara "belum dibuka" dan "sebelumnya dibuka sekarang ditutup" yang ada sebelumnya dalam status kState_Ready dan kState_Closed.

Fungsi publik

Batalkan

void Abort(
  void
)

Menutup endpoint secara dibatalkan, dengan kata lain, mengirim paket RST.

AckReceive

INET_ERROR AckReceive(
  uint16_t len
)

Konfirmasi penerimaan teks pesan.

Gunakan metode ini untuk mengonfirmasi penerimaan semua atau sebagian data yang diterima. Semantik operasional tidak ditentukan jika len lebih besar dari total data yang belum dikonfirmasi dan belum diterima.

Detail
Parameter
[in] len
jumlah byte yang harus diakui.
Nilai Pengembalian
INET_NO_ERROR
berhasil: penerimaan diakui.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak terhubung.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.

Ikat

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

Ikat endpoint ke alamat IP antarmuka.

Mengikat endpoint ke alamat IP antarmuka jaringan yang ditentukan.

Detail
Parameter
[in] addrType
versi protokol alamat IP
[in] addr
alamat IP (harus berupa alamat antarmuka)
[in] port
porta TCP
[in] reuseAddr
opsi untuk membagikan binding ke endpoint lain
Nilai Pengembalian
INET_NO_ERROR
berhasil: endpoint terikat ke alamat
INET_ERROR_INCORRECT_STATE
endpoint telah diikat sebelumnya
INET_NO_MEMORY
memori tidak cukup untuk endpoint
INET_ERROR_WRONG_PROTOCOL_TYPE
addrType tidak cocok dengan IPVer.
INET_ERROR_WRONG_ADDRESS_TYPE
addrType adalah kIPAddressType_Any, atau jenis addr tidak sama dengan addrType.
other
error sistem atau platform lain

Di LwIP, metode ini tidak boleh dipanggil dengan kunci stack LwIP yang sudah diperoleh.

Tutup

INET_ERROR Close(
  void
)

Memulai TCP sepenuhnya, dengan kata lain, diselesaikan dengan mengirim dan menerima.

Detail
Nilai Pengembalian
INET_NO_ERROR
berhasil: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak terhubung.
other
error sistem atau platform lain

Konektivitas

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

Memulai koneksi TCP.

 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.

Detail
Parameter
[in] addr
alamat IP tujuan
[in] port
porta TCP tujuan
[in] intf
indikator antarmuka jaringan opsional
Nilai Pengembalian
INET_NO_ERROR
berhasil: msg dimasukkan ke dalam antrean untuk dikirim.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem tidak selesai.
INET_ERROR_WRONG_ADDRESS_TYPE
alamat tujuan dan alamat antarmuka terikat tidak memiliki versi protokol atau jenis alamat yang cocok, atau alamat tujuannya adalah alamat lokal link IPv6 dan intf tidak ditentukan.
other
error sistem atau platform lain

DisableKeepAlive

INET_ERROR DisableKeepAlive(
  void
)

Menonaktifkan opsi "keep-alive" TCP.

TCPEndPoint::DisableKeepAlive.

Nonaktifkan pemeriksaan keepalive TCP pada koneksi TCP terkait.

Detail
Nilai Pengembalian
INET_NO_ERROR
berhasil: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak terhubung.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem tidak selesai.
other
error sistem atau platform lain

Catatan:Metode ini hanya dapat dipanggil jika endpoint berada dalam salah satu status yang terhubung. Metode ini tidak melakukan apa pun jika keepalive belum diaktifkan di endpoint.

DisableReceive

void DisableReceive(
  void
)

Nonaktifkan penerimaan sinyal.

Menonaktifkan semua pengendali peristiwa. Data yang dikirim ke endpoint yang menonaktifkan penerimaan akan dikonfirmasi hingga jendela penerimaan habis.

EnableKeepAlive

INET_ERROR EnableKeepAlive(
  uint16_t interval,
  uint16_t timeoutCount
)

Mengaktifkan opsi "keep-alive" TCP.

TCPEndPoint::EnableKeepAlive.

Mulai transmisi segmen pemeriksaan "keep-alive" TCP secara otomatis setiap interval detik. Koneksi akan dibatalkan secara otomatis setelah menerima respons negatif, atau setelah mengirimkan segmen pemeriksaan timeoutCount tanpa menerima respons positif.

Detail
Parameter
[in] interval
waktu dalam detik di antara permintaan pemeriksaan.
[in] timeoutCount
jumlah probe yang akan dikirim sebelum waktu tunggu habis.
Nilai Pengembalian
INET_NO_ERROR
berhasil: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak terhubung.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem tidak selesai.
other
error sistem atau platform lain

Lihat RFC 1122, bagian 4.2.3.6 untuk rincian spesifikasi.

Mengaktifkan pemeriksaan TCP keepalive pada koneksi TCP terkait.

Catatan:Metode ini hanya dapat dipanggil jika endpoint berada dalam salah satu status yang terhubung. Metode ini dapat dipanggil beberapa kali untuk menyesuaikan interval keepalive atau jumlah waktu tunggu.

Detail
Parameter
interval
Interval (dalam detik) antara probe keepalive. Nilai ini juga mengontrol waktu antara paket data terakhir yang dikirim dan transmisi probe keepalive pertama.
timeoutCount
Jumlah maksimum pemeriksaan yang tidak dikonfirmasi sebelum koneksi akan dianggap gagal.

EnableNoDelay

INET_ERROR EnableNoDelay(
  void
)

EnableNoDelay.

TCPEndPoint::EnableNoDelay.

Nonaktifkan algoritme buffering nagle di TCP dengan menyetel opsi soket TCP_NONO.

EnableReceive

void EnableReceive(
  void
)

Aktifkan penerimaan.

Mengaktifkan semua pengendali peristiwa. Data yang dikirim ke endpoint yang menonaktifkan penerimaan akan dikonfirmasi hingga jendela penerimaan habis.

Gratis

void Free(
  void
)

Memulai (atau melanjutkan) TCP sepenuhnya, mengabaikan kesalahan.

Objek dikembalikan ke kumpulan gratis, dan semua referensi pengguna yang tersisa kemudian menjadi tidak valid.

GetLocalInfo

INET_ERROR GetLocalInfo(
  IPAddress *retAddr,
  uint16_t *retPort
)

Mengekstrak alamat IP dan port TCP endpoint lokal.

Jangan gunakan nilai pointer NULL untuk kedua argumen.

Detail
Parameter
[out] retAddr
Alamat IP endpoint lokal.
[out] retPort
Port TCP endpoint lokal.
Nilai Pengembalian
INET_NO_ERROR
berhasil: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak terhubung.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.

GetPeerInfo

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

Mengekstrak alamat IP dan port TCP endpoint jarak jauh.

Jangan gunakan nilai pointer NULL untuk kedua argumen.

Detail
Parameter
[out] retAddr
Alamat IP endpoint jarak jauh.
[out] retPort
Port TCP endpoint jarak jauh.
Nilai Pengembalian
INET_NO_ERROR
berhasil: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak terhubung.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.

IsConnected

bool IsConnected(
  void
) const 

Ekstrak apakah koneksi TCP tersambung.

Dengarkan

INET_ERROR Listen(
  uint16_t backlog
)

Menyiapkan endpoint untuk menerima pesan TCP.

Jika State sudah kState_Listening, tidak ada operasi yang akan dilakukan. Jika tidak, State akan disetel ke kState_Listening dan endpoint disiapkan untuk menerima pesan TCP, sesuai dengan semantik platform.

Detail
Parameter
[in] backlog
kedalaman maksimum antrean penerimaan koneksi
Nilai Pengembalian
INET_NO_ERROR
berhasil: endpoint siap menerima pesan.
INET_ERROR_INCORRECT_STATE
endpoint sudah memproses.

Pada beberapa platform, argumen backlog tidak digunakan (kedalaman antrean bersifat tetap; hanya satu koneksi yang dapat diterima pada satu waktu).

Pada sistem LwIP, metode ini tidak boleh dipanggil dengan kunci tumpukan LwIP yang sudah diperoleh

LogId

uint16_t LogId(
  void
)

Dapatkan ID untuk endpoint.

Detail
Hasil
Menampilkan ID unik buram untuk log penggunaan.

MarkActive

void MarkActive(
  void
)

Mencatat aktivitas, dengan kata lain, mereset timer yang tidak ada aktivitas.

Reset timer tidak ada aktivitas ke nol.

PendingReceiveLength

uint32_t PendingReceiveLength(
  void
)

Ekstrak panjang data penerimaan yang tidak dikonfirmasi.

Detail
Hasil
Jumlah byte dalam antrean penerimaan yang belum dikonfirmasi dengan AckReceive(uint16_t len).

PendingSendLength

uint32_t PendingSendLength(
  void
)

Mengekstrak durasi data yang menunggu pengiriman pertama.

Detail
Hasil
Jumlah byte yang tidak ditransmisikan dalam antrean transmisi.

PutBackReceivedData

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

Mendorong teks pesan kembali ke kepala antrean penerimaan.

Metode ini hanya dapat dipanggil oleh pengendali peristiwa penerimaan data untuk menempatkan kembali bagian data yang tidak dikonfirmasi pada antrean penerimaan. Semantik operasional tidak ditentukan jika pemanggil berada di luar cakupan pengendali peristiwa penerimaan data, data bukan Weave::System::PacketBuffer yang diberikan untuk pengendali, atau data tidak berisi bagian yang tidak dikonfirmasi yang tersisa setelah byte yang dikonfirmasi oleh panggilan sebelumnya ke metode AckReceive(uint16_t len).

Detail
Parameter
[out] data
Teks pesan yang akan dikirim.
Nilai Pengembalian
INET_NO_ERROR
berhasil: penerimaan diakui.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak terhubung.

Kirim

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

Mengirim teks pesan di koneksi TCP.

Metode Weave::System::PacketBuffer::Free dipanggil pada argumen data terlepas dari apakah transmisi berhasil atau gagal.

Detail
Parameter
[out] data
Teks pesan yang akan dikirim.
[out] push
Jika true, kirim segera, jika tidak, antrean.
Nilai Pengembalian
INET_NO_ERROR
berhasil: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak terhubung.

SetConnectTimeout

void SetConnectTimeout(
  const uint32_t connTimeoutMsecs
)

Setel waktu tunggu agar Connect berhasil atau menampilkan error.

Detail
Parameter
[in] connTimeoutMsecs

SetUserTimeout

INET_ERROR SetUserTimeout(
  uint32_t userTimeoutMillis
)

Setel opsi soket TCP TCP_USER_TIMEOUT.

TCPEndPoint::SetUserTimeout.

Ketika nilainya lebih besar dari 0, nilai ini akan menentukan jumlah waktu maksimum dalam milidetik saat data yang dikirim mungkin tetap tidak dikonfirmasi sebelum TCP akan menutup koneksi terkait secara paksa. Jika nilai opsi ditetapkan sebagai 0, TCP akan menggunakan default sistem. Lihat RFC 5482 untuk detail lebih lanjut.

Detail
Parameter
[in] userTimeoutMillis
Nilai waktu tunggu pengguna TCP dalam milidetik.
Nilai Pengembalian
INET_NO_ERROR
berhasil: alamat dan porta diekstraksi.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem tidak selesai.
other
error sistem atau platform lain

Menyetel opsi soket waktu tunggu pengguna TCP.

Ketika nilainya lebih besar dari 0, nilai ini akan menentukan jumlah waktu maksimum dalam milidetik saat data yang dikirim mungkin tetap tidak dikonfirmasi sebelum TCP akan menutup koneksi terkait secara paksa. Jika nilai opsi ditetapkan sebagai 0, TCP akan menggunakan default sistem. Lihat RFC 5482 untuk detail lebih lanjut.

Catatan:Metode ini hanya dapat dipanggil jika endpoint berada dalam salah satu status yang terhubung. Metode ini dapat dipanggil beberapa kali untuk menyesuaikan interval keepalive atau jumlah waktu tunggu.

Nonaktif

INET_ERROR Shutdown(
  void
)

Memulai TCP setengah, dengan kata lain, selesai dengan pengiriman.

Detail
Nilai Pengembalian
INET_NO_ERROR
berhasil: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak terhubung.
other
error sistem atau platform lain