Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.
Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

nl:: Internet:: TCPEndPoint

#include <src/inet/TCPEndPoint.h>

Objek kelas ini mewakili titik akhir transport TCP.

Ringkasan

Nest Inet Layer merangkum metode untuk berinteraksi dengan titik akhir transport TCP (soket SOCK_STREAM pada sistem turunan Linux dan BSD) atau blok kontrol protokol TCP LwIP, karena sistem dikonfigurasikan dengan tepat.

Warisan

Mewarisi dari: nl :: Inet :: EndPointBasis

Tipe 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
Keadaan dinamis dasar dari titik akhir yang mendasarinya.
OnAcceptErrorFunct )(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
Jenis fungsi penanganan peristiwa kesalahan penerimaan koneksi.
OnConnectCompleteFunct )(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
Jenis fungsi penanganan acara pembentukan koneksi.
OnConnectionClosedFunct )(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
Jenis fungsi penanganan acara pembentukan koneksi.
OnConnectionReceivedFunct )(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort) typedef
void(*
Jenis koneksi menerima fungsi penanganan acara.
OnDataReceivedFunct )(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data) typedef
void(*
Jenis fungsi penanganan acara penerimaan data.
OnDataSentFunct )(TCPEndPoint *endPoint, uint16_t len) typedef
void(*
Jenis fungsi penanganan peristiwa transmisi data.
OnPeerCloseFunct )(TCPEndPoint *endPoint) typedef
void(*
Jenis fungsi penanganan acara penerimaan setengah tertutup.
OnTCPSendIdleChangedFunct )(TCPEndPoint *endPoint, bool isIdle) typedef
void(*
Jenis TCP SendIdle mengubah fungsi penanganan sinyal.

Atribut publik

OnAcceptError
Delegasi fungsi penanganan acara penerimaan koneksi titik akhir.
OnConnectComplete
Delegasi fungsi penanganan peristiwa pembentukan koneksi titik akhir.
OnConnectionClosed
Delegasi fungsi penanganan acara dekat titik akhir.
OnConnectionReceived
Koneksi titik akhir menerima delegasi fungsi penanganan acara.
OnDataReceived
Delegasi fungsi penanganan acara penerimaan teks pesan titik akhir.
OnDataSent
Delegasi fungsi penanganan peristiwa transmisi teks pesan titik akhir.
OnPeerClose
Delegasi fungsi penanganan acara penerimaan setengah tutup titik akhir.
OnTCPSendIdleChanged
Delegasi fungsi penanganan peristiwa dari pensinyalan titik akhir ketika kemalasan dari saluran pengiriman koneksi TCP berubah.
ReceiveEnabled
bool
Sakelar kontrol yang menunjukkan apakah aplikasi menerima data.
State
enum nl::Inet::TCPEndPoint::@10
Keadaan dinamis dasar dari titik akhir yang mendasarinya.

Fungsi publik

Abort (void)
void
Tutup titik akhir secara gagal, dengan kata lain, kirim paket RST.
AckReceive (uint16_t len)
Mengakui penerimaan teks pesan.
Bind (IPAddressType addrType, IPAddress addr, uint16_t port, bool reuseAddr)
Ikat titik akhir ke alamat IP antarmuka.
Close (void)
Memulai TCP full close, dengan kata lain, selesai dengan mengirim dan menerima.
Connect ( IPAddress addr, uint16_t port, InterfaceId intf)
Memulai koneksi TCP.
DisableKeepAlive (void)
Nonaktifkan opsi TCP "tetap hidup".
DisableReceive (void)
void
Nonaktifkan penerimaan.
EnableKeepAlive (uint16_t interval, uint16_t timeoutCount)
Aktifkan opsi TCP "tetap hidup".
EnableNoDelay (void)
AktifkanTanpa Penundaan.
EnableReceive (void)
void
Aktifkan penerimaan.
Free (void)
void
Memulai (atau melanjutkan) penutupan penuh TCP, mengabaikan kesalahan.
GetLocalInfo ( IPAddress *retAddr, uint16_t *retPort)
Ekstrak alamat IP dan port TCP dari titik akhir lokal.
GetPeerInfo ( IPAddress *retAddr, uint16_t *retPort) const
Ekstrak alamat IP dan port TCP dari titik akhir jarak jauh.
IsConnected (void) const
bool
Ekstrak apakah koneksi TCP dibuat.
Listen (uint16_t backlog)
Siapkan titik akhir untuk menerima pesan TCP.
LogId (void)
uint16_t
Dapatkan pengidentifikasi untuk titik akhir.
MarkActive (void)
void
Catat aktivitasnya, dengan kata lain, reset timer idle.
PendingReceiveLength (void)
uint32_t
Ekstrak panjang data penerimaan yang tidak diakui.
PendingSendLength (void)
uint32_t
Ekstrak panjang data yang menunggu pengiriman pertama.
PutBackReceivedData ( Weave::System::PacketBuffer *data)
Dorong teks pesan kembali ke kepala antrian terima.
Send ( Weave::System::PacketBuffer *data, bool push)
Kirim teks pesan pada koneksi TCP.
SetConnectTimeout (const uint32_t connTimeoutMsecs)
void
Setel batas waktu untuk Connect agar berhasil atau mengembalikan kesalahan.
SetUserTimeout (uint32_t userTimeoutMillis)
Setel opsi soket TCP TCP_USER_TIMEOUT.
Shutdown (void)
Memulai TCP setengah dekat, dengan kata lain, selesai dengan pengiriman.

Tipe publik

@10

 @10

Keadaan dinamis dasar dari titik akhir yang mendasarinya.

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

Catatan: kBasisState_Closed pencacahan negara dipetakan ke kState_Ready untuk alasan biner-kompatibilitas sejarah. Yang ada kState_Closed ada untuk mengidentifikasi secara terpisah perbedaan antara "belum dibuka" dan "yang sebelumnya dibuka sekarang ditutup" yang ada sebelumnya di kState_Ready dan kState_Closed negara.

Properti
kState_Bound

Endpoint terikat, tetapi tidak mendengarkan.

kState_Closed

Endpoint ditutup, siap dirilis.

kState_Closing

Endpoint menutup dua arah.

kState_Connected

Titik akhir terhubung, siap untuk tx/rx.

kState_Connecting

Titik akhir mencoba menyambung.

kState_Listening

Koneksi penerima titik akhir.

kState_Ready

Titik akhir diinisialisasi, tetapi tidak terikat.

kState_ReceiveShutdown

Endpoint merespon setengah dekat.

kState_SendShutdown

Endpoint memulai setengah penutupannya.

OnAcceptErrorFunct

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

Jenis fungsi penanganan peristiwa kesalahan penerimaan koneksi.

Memberikan fungsi jenis ini ke OnAcceptError anggota delegasi untuk koneksi kesalahan proses penerimaan acara di endPoint . The err Argumen memberikan rincian spesifik tentang jenis kesalahan.

rincian
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan acara.
[in] err
Alasan kesalahan.

AktifTerhubungSelesaiFungsi

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

Jenis fungsi penanganan acara pembentukan koneksi.

Memberikan fungsi jenis ini ke OnConnectComplete anggota delegasi untuk memproses peristiwa pembentukan koneksi pada endPoint . The err Argumen membedakan koneksi sukses dari kegagalan.

rincian
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan acara.
[in] err
INET_NO_ERROR jika sukses, yang lain kode lain.

PadaKoneksiTertutupFungsi

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

Jenis fungsi penanganan acara pembentukan koneksi.

Memberikan fungsi jenis ini ke OnConnectionClosed anggota delegasi untuk koneksi proses kejadian terminasi endPoint . The err Argumen membedakan pengakhiran sukses dari kegagalan.

rincian
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan acara.
[in] err
INET_NO_ERROR jika sukses, yang lain kode lain.

PadaKoneksiDiterimaFungsi

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

Jenis koneksi menerima fungsi penanganan acara.

Memberikan fungsi jenis ini ke OnConnectionReceived anggota delegasi untuk acara resepsi koneksi proses pada listeningEndPoint . Titik akhir yang baru diterima conEndPoint terletak di alamat IP peerAddr dan TCP port peerPort .

rincian
Parameter
[in] listeningEndPoint
Titik akhir TCP mendengarkan.
[in] conEndPoint
Titik akhir TCP yang baru diterima.
[in] peerAddr
Alamat IP rekan jarak jauh.
[in] peerPort
Port TCP dari rekan jarak jauh.

DiDataDiterimaFungsi

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

Jenis fungsi penanganan acara penerimaan data.

Memberikan fungsi jenis ini ke OnDataReceived anggota delegasi untuk proses acara resepsi data pada endPoint di mana data adalah teks pesan yang diterima.

rincian
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan acara.
[in] data
Data yang diterima.

Penerimaan data event handler harus mengakui data yang diolah dengan menggunakan AckReceive metode. The Free metode pada buffer data juga harus dipanggil kecuali PutBackReceivedData digunakan sebagai gantinya.

PadaDataTerkirimFungsi

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

Jenis fungsi penanganan peristiwa transmisi data.

Memberikan fungsi jenis ini ke OnDataSent anggota delegasi untuk proses kejadian transmisi data pada endPoint di mana len adalah panjang teks pesan ditambahkan ke jendela mengirimkan TCP, yang memenuhi syarat untuk mengirimkan oleh tumpukan jaringan yang mendasarinya.

rincian
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan acara.
[in] len
Jumlah byte yang ditambahkan ke jendela transmisi.

OnPeerCloseFunct

void(* OnPeerCloseFunct)(TCPEndPoint *endPoint)

Jenis fungsi penanganan acara penerimaan setengah tertutup.

Memberikan fungsi jenis ini ke OnPeerClose anggota delegasi untuk memproses peristiwa koneksi terminasi endPoint .

rincian
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan acara.

DiTCPSendIdleChangedFunct

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

Jenis TCP SendIdle mengubah fungsi penanganan sinyal.

Memberikan fungsi jenis ini ke OnTCPSendIdleChanged anggota delegasi untuk memproses peristiwa saluran send dari TCPEndPoint mengubah negara antara menganggur dan tidak menganggur.

rincian
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan acara.
[in] isIdle
Benar jika saluran kirim dari titik akhir TCP Idle, jika tidak salah.

Atribut publik

OnAcceptError

OnAcceptErrorFunct OnAcceptError

Delegasi fungsi penanganan acara penerimaan koneksi titik akhir.

DiConnectComplete

OnConnectCompleteFunct OnConnectComplete

Delegasi fungsi penanganan peristiwa pembentukan koneksi titik akhir.

PadaKoneksiDitutup

OnConnectionClosedFunct OnConnectionClosed

Delegasi fungsi penanganan acara dekat titik akhir.

PadaKoneksiDiterima

OnConnectionReceivedFunct OnConnectionReceived

Koneksi titik akhir menerima delegasi fungsi penanganan acara.

PadaDataDiterima

OnDataReceivedFunct OnDataReceived

Delegasi fungsi penanganan acara penerimaan teks pesan titik akhir.

DiDataTerkirim

OnDataSentFunct OnDataSent

Delegasi fungsi penanganan peristiwa transmisi teks pesan titik akhir.

PadaPeerClose

OnPeerCloseFunct OnPeerClose

Delegasi fungsi penanganan acara penerimaan setengah tutup titik akhir.

DiTCPSendIdleChanged

OnTCPSendIdleChangedFunct OnTCPSendIdleChanged

Delegasi fungsi penanganan peristiwa dari pensinyalan titik akhir ketika kemalasan dari saluran pengiriman koneksi TCP berubah.

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

TerimaDiaktifkan

bool ReceiveEnabled

Sakelar kontrol yang menunjukkan apakah aplikasi menerima data.

Negara

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

Keadaan dinamis dasar dari titik akhir yang mendasarinya.

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

Catatan: kBasisState_Closed pencacahan negara dipetakan ke kState_Ready untuk alasan biner-kompatibilitas sejarah. Yang ada kState_Closed ada untuk mengidentifikasi secara terpisah perbedaan antara "belum dibuka" dan "yang sebelumnya dibuka sekarang ditutup" yang ada sebelumnya di kState_Ready dan kState_Closed negara.

Fungsi publik

Menggugurkan

void Abort(
  void
)

Tutup titik akhir secara gagal, dengan kata lain, kirim paket RST.

Terima

INET_ERROR AckReceive(
  uint16_t len
)

Mengakui penerimaan teks pesan.

Gunakan metode ini untuk mengakui penerimaan semua atau sebagian dari data yang diterima. Semantik operasional terdefinisi jika len lebih besar dari total outstanding data yang diterima tidak diakui.

rincian
Parameter
[in] len
jumlah byte yang harus diakui.
Mengembalikan Nilai
INET_NO_ERROR
sukses: penerimaan diakui.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak dibuat.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.

Mengikat

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

Ikat titik akhir ke alamat IP antarmuka.

Mengikat titik akhir ke alamat IP antarmuka jaringan yang ditentukan.

rincian
Parameter
[in] addrType
versi protokol dari alamat IP
[in] addr
alamat IP (harus alamat antarmuka)
[in] port
port TCP
[in] reuseAddr
opsi untuk berbagi pengikatan dengan titik akhir lainnya
Mengembalikan Nilai
INET_NO_ERROR
sukses: titik akhir terikat ke alamat
INET_ERROR_INCORRECT_STATE
titik akhir telah terikat sebelumnya
INET_NO_MEMORY
memori tidak cukup untuk titik akhir
INET_ERROR_WRONG_PROTOCOL_TYPE
addrType tidak cocok IPVer .
INET_ERROR_WRONG_ADDRESS_TYPE
addrType adalah kIPAddressType_Any , atau jenis addr tidak sama dengan addrType .
other
kesalahan sistem atau platform lain

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

Menutup

INET_ERROR Close(
  void
)

Memulai TCP full close, dengan kata lain, selesai dengan mengirim dan menerima.

rincian
Mengembalikan Nilai
INET_NO_ERROR
sukses: alamat dan port diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak dibuat.
other
kesalahan sistem atau platform lain

Menghubung

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.

rincian
Parameter
[in] addr
alamat IP tujuan
[in] port
port TCP tujuan
[in] intf
indikator antarmuka jaringan opsional
Mengembalikan Nilai
INET_NO_ERROR
Keberhasilan: msg antri untuk mengirimkan.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem belum selesai.
INET_ERROR_WRONG_ADDRESS_TYPE
alamat tujuan dan alamat antarmuka terikat tidak memiliki versi protokol yang cocok atau jenis alamat, atau alamat tujuan adalah alamat link-local IPv6 dan intf tidak ditentukan.
other
kesalahan sistem atau platform lain

NonaktifkanKeepAlive

INET_ERROR DisableKeepAlive(
  void
)

Nonaktifkan opsi TCP "tetap hidup".

TCPEndPoint :: DisableKeepAlive .

Nonaktifkan probe keepalive TCP pada koneksi TCP terkait.

rincian
Mengembalikan Nilai
INET_NO_ERROR
sukses: alamat dan port diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak dibuat.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem belum selesai.
other
kesalahan sistem atau platform lain

Catatan: Metode ini hanya bisa dipanggil ketika endpoint adalah di salah satu negara terhubung. Metode ini tidak melakukan apa pun jika keepalives belum diaktifkan pada titik akhir.

NonaktifkanTerima

void DisableReceive(
  void
)

Nonaktifkan penerimaan.

Nonaktifkan semua pengendali acara. Data yang dikirim ke titik akhir yang menonaktifkan penerimaan akan diakui hingga jendela penerimaan habis.

AktifkanKeepAlive

INET_ERROR EnableKeepAlive(
  uint16_t interval,
  uint16_t timeoutCount
)

Aktifkan opsi TCP "tetap hidup".

TCPEndPoint :: EnableKeepAlive .

Mulai otomatis transmisi TCP segmen "tetap-hidup" Probe setiap interval detik. Koneksi akan membatalkan secara otomatis setelah menerima respon negatif, atau setelah mengirim timeoutCount segmen penyelidikan tanpa menerima respon positif.

rincian
Parameter
[in] interval
waktu dalam detik antara permintaan penyelidikan.
[in] timeoutCount
jumlah probe untuk dikirim sebelum batas waktu.
Mengembalikan Nilai
INET_NO_ERROR
sukses: alamat dan port diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak dibuat.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem belum selesai.
other
kesalahan sistem atau platform lain

Lihat RFC 1122, bagian 4.2.3.6 untuk detail spesifikasi.

Aktifkan probe keepalive TCP pada koneksi TCP terkait.

Catatan: Metode ini hanya bisa dipanggil ketika endpoint adalah di salah satu negara terhubung. Metode ini dapat dipanggil beberapa kali untuk menyesuaikan interval keepalive atau hitungan timeout.

rincian
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 probe yang tidak diketahui sebelum koneksi akan dianggap gagal.

AktifkanTanpa Penundaan

INET_ERROR EnableNoDelay(
  void
)

AktifkanTanpa Penundaan.

TCPEndPoint :: EnableNoDelay .

Matikan algoritma buffering nagle di TCP dengan mengatur opsi soket TCP_NODELAY.

AktifkanTerima

void EnableReceive(
  void
)

Aktifkan penerimaan.

Aktifkan semua event handler. Data yang dikirim ke titik akhir yang menonaktifkan penerimaan akan diakui hingga jendela penerimaan habis.

Gratis

void Free(
  void
)

Memulai (atau melanjutkan) penutupan penuh TCP, mengabaikan kesalahan.

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

DapatkanInfo Lokal

INET_ERROR GetLocalInfo(
  IPAddress *retAddr,
  uint16_t *retPort
)

Ekstrak alamat IP dan port TCP dari titik akhir lokal.

Jangan gunakan NULL nilai pointer untuk baik argumen.

rincian
Parameter
[out] retAddr
Alamat IP titik akhir lokal.
[out] retPort
Port TCP titik akhir lokal.
Mengembalikan Nilai
INET_NO_ERROR
sukses: alamat dan port diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak dibuat.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.

DapatkanPeerInfo

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

Ekstrak alamat IP dan port TCP dari titik akhir jarak jauh.

Jangan gunakan NULL nilai pointer untuk baik argumen.

rincian
Parameter
[out] retAddr
Alamat IP titik akhir jarak jauh.
[out] retPort
Port TCP titik akhir jarak jauh.
Mengembalikan Nilai
INET_NO_ERROR
sukses: alamat dan port diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak dibuat.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.

Terhubung

bool IsConnected(
  void
) const 

Ekstrak apakah koneksi TCP dibuat.

Mendengarkan

INET_ERROR Listen(
  uint16_t backlog
)

Siapkan titik akhir untuk menerima pesan TCP.

Jika State sudah kState_Listening , maka tidak ada operasi dilakukan, jika tidak State diatur untuk kState_Listening dan titik akhir siap untuk pesan TCP yang diterima, menurut semantik platform.

rincian
Parameter
[in] backlog
kedalaman maksimum antrian penerimaan koneksi
Mengembalikan Nilai
INET_NO_ERROR
sukses: titik akhir siap menerima pesan.
INET_ERROR_INCORRECT_STATE
titik akhir sudah mendengarkan.

Pada beberapa platform, backlog argumen tidak digunakan (kedalaman antrian adalah tetap, hanya satu koneksi 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 pengidentifikasi untuk titik akhir.

rincian
Kembali
Mengembalikan pengidentifikasi unik buram untuk log penggunaan.

Tandai Aktif

void MarkActive(
  void
)

Catat aktivitasnya, dengan kata lain, reset timer idle.

Setel ulang penghitung waktu idle ke nol.

TertundaMenerimaPanjang

uint32_t PendingReceiveLength(
  void
)

Ekstrak panjang data penerimaan yang tidak diakui.

rincian
Kembali
Jumlah byte dalam menerima antrian yang belum diakui dengan AckReceive(uint16_t len) .

TertundaKirim Panjang

uint32_t PendingSendLength(
  void
)

Ekstrak panjang data yang menunggu pengiriman pertama.

rincian
Kembali
Jumlah byte yang tidak ditransmisikan dalam antrian transmisi.

PutBackReceivedData

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

Dorong teks pesan kembali ke kepala antrian terima.

Metode ini hanya dapat dipanggil oleh event handler penerimaan data untuk mengembalikan bagian data yang tidak diketahui ke antrian penerimaan. Semantik operasional terdefinisi jika pemanggil adalah di luar lingkup dari data penerimaan event handler, data bukan Weave::System::PacketBuffer diberikan kepada handler, atau data tidak mengandung bagian tidak diakui tersisa setelah byte diakui oleh panggilan sebelum AckReceive(uint16_t len) metode.

rincian
Parameter
[out] data
Teks pesan untuk mendorong.
Mengembalikan Nilai
INET_NO_ERROR
sukses: penerimaan diakui.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak dibuat.

Kirim

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

Kirim teks pesan pada koneksi TCP.

The Weave::System::PacketBuffer::Free metode ini disebut pada data argumen terlepas dari apakah transmisi berhasil atau gagal.

rincian
Parameter
[out] data
Teks pesan untuk dikirim.
[out] push
Jika true , kemudian mengirim segera, jika tidak antrian.
Mengembalikan Nilai
INET_NO_ERROR
sukses: alamat dan port diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak dibuat.

Setel Waktu Habis Sambungan

void SetConnectTimeout(
  const uint32_t connTimeoutMsecs
)

Setel batas waktu untuk Connect agar berhasil atau mengembalikan kesalahan.

rincian
Parameter
[in] connTimeoutMsecs

Setel Waktu Habis Pengguna

INET_ERROR SetUserTimeout(
  uint32_t userTimeoutMillis
)

Setel opsi soket TCP TCP_USER_TIMEOUT.

TCPEndPoint :: SetUserTimeout .

Ketika nilainya lebih besar dari 0, itu menentukan jumlah waktu maksimum dalam milidetik bahwa data yang dikirimkan mungkin tetap tidak diketahui sebelum TCP secara paksa menutup koneksi yang sesuai. Jika nilai opsi ditetapkan sebagai 0, TCP akan menggunakan default sistem. Lihat RFC 5482, untuk rincian lebih lanjut.

rincian
Parameter
[in] userTimeoutMillis
Nilai waktu tunggu pengguna TCP dalam milidetik.
Mengembalikan Nilai
INET_NO_ERROR
sukses: alamat dan port diekstraksi.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem belum selesai.
other
kesalahan sistem atau platform lain

Setel opsi soket batas waktu pengguna TCP.

Ketika nilainya lebih besar dari 0, itu menentukan jumlah waktu maksimum dalam milidetik bahwa data yang ditransmisikan mungkin tetap tidak diketahui sebelum TCP secara paksa menutup koneksi yang sesuai. Jika nilai opsi ditetapkan sebagai 0, TCP akan menggunakan default sistem. Lihat RFC 5482, untuk rincian lebih lanjut.

Catatan: Metode ini hanya bisa dipanggil ketika endpoint adalah di salah satu negara terhubung. Metode ini dapat dipanggil beberapa kali untuk menyesuaikan interval keepalive atau hitungan timeout.

Menutup

INET_ERROR Shutdown(
  void
)

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

rincian
Mengembalikan Nilai
INET_NO_ERROR
sukses: alamat dan port diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak dibuat.
other
kesalahan sistem atau platform lain