PFN_WSK_GET_LOCAL_ADDRESS fungsi panggilan balik (wsk.h)
Fungsi WskGetLocalAddress mengambil alamat transportasi lokal soket.
Sintaks
PFN_WSK_GET_LOCAL_ADDRESS PfnWskGetLocalAddress;
NTSTATUS PfnWskGetLocalAddress(
[in] PWSK_SOCKET Socket,
[out] PSOCKADDR LocalAddress,
[in, out] PIRP Irp
)
{...}
Parameter
[in] Socket
Penunjuk ke struktur WSK_SOCKET yang menentukan objek soket untuk soket yang sedang dikueri.
[out] LocalAddress
Penunjuk ke buffer yang dialokasikan penelepon yang menerima alamat transportasi lokal untuk soket. Buffer harus terletak di memori non-halaman. Buffer juga harus cukup besar untuk berisi jenis struktur SOCKADDR tertentu yang sesuai dengan keluarga alamat yang ditentukan aplikasi WSK saat membuat soket.
Untuk soket berorientasi koneksi yang diterima aplikasi WSK pada soket mendengarkan, keluarga alamat sama dengan keluarga alamat yang ditentukan aplikasi WSK saat membuat soket mendengarkan.
[in, out] Irp
Penunjuk ke IRP yang dialokasikan penelepon yang digunakan subsistem WSK untuk menyelesaikan operasi pengambilan secara asinkron. Untuk informasi selengkapnya tentang menggunakan runtime integrasi dengan fungsi WSK, lihat Menggunakan IRP dengan Fungsi Kernel Winsock.
Nilai kembali
WskGetLocalAddress mengembalikan salah satu kode NTSTATUS berikut:
Menampilkan kode | Deskripsi |
---|---|
|
Alamat transportasi lokal untuk soket berhasil diambil. IRP akan diselesaikan dengan status keberhasilan. |
|
Subsistem WSK tidak dapat segera mengambil alamat transportasi lokal untuk soket. Subsistem WSK akan menyelesaikan IRP setelah mengambil alamat transportasi lokal untuk soket. Status operasi pengambilan akan dikembalikan di bidang IoStatus.Status dari IRP. |
|
Soket tidak terikat ke alamat transportasi lokal. IRP akan diselesaikan dengan status kegagalan. |
|
Soket tidak lagi berfungsi. IRP akan diselesaikan dengan status kegagalan. Aplikasi WSK harus memanggil fungsi WskCloseSocket untuk menutup soket sesegera mungkin. |
|
Terjadi kesalahan. IRP akan diselesaikan dengan status kegagalan. |
Keterangan
Aplikasi WSK dapat memanggil fungsi WskGetLocalAddress hanya pada soket yang telah terikat ke alamat transportasi lokal.
Soket mendengarkan, datagram, atau aliran terikat ke alamat transportasi lokal saat aplikasi WSK memanggil fungsi WskBind .
Soket berorientasi koneksi terikat ke alamat transportasi lokal dengan salah satu cara berikut:
- Aplikasi WSK memanggil fungsi WskBind .
- Aplikasi WSK membuat, mengikat, dan menyambungkan soket dengan memanggil fungsi WskSocketConnect .
- Subsistem WSK mengikat soket ketika aplikasi WSK menerima permintaan koneksi masuk pada soket mendengarkan.
Jika fungsi WskGetLocalAddress mengembalikan STATUS_PENDING, buffer yang ditunjukkan oleh parameter LocalAddress harus tetap valid sampai IRP selesai. Jika aplikasi WSK mengalokasikan buffer dengan salah satu fungsi ExAllocateXxx , aplikasi tidak dapat membebaskan memori dengan fungsi ExFreeXxx yang sesuai sampai setelah IRP selesai. Jika aplikasi WSK mengalokasikan buffer pada tumpukan, aplikasi tidak dapat kembali dari fungsi yang memanggil fungsi WskGetLocalAddress hingga setelah IRP selesai.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia di Windows Vista dan versi yang lebih baru dari sistem operasi Windows. |
Target Platform | Universal |
Header | wsk.h (termasuk Wsk.h) |
IRQL | <= DISPATCH_LEVEL |
Lihat juga
WSK_PROVIDER_DATAGRAM_DISPATCH WSK_PROVIDER_CONNECTION_DISPATCHSaran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk