fungsi getsockname (winsock2.h)
Fungsi getsockname mengambil nama lokal untuk soket.
Sintaks
int WSAAPI getsockname(
[in] SOCKET s,
[out] sockaddr *name,
[in, out] int *namelen
);
Parameter
[in] s
Deskriptor mengidentifikasi soket.
[out] name
Penunjuk ke struktur SOCKADDR yang menerima alamat (nama) soket.
[in, out] namelen
Ukuran buffer nama , dalam byte.
Mengembalikan nilai
Jika tidak ada kesalahan yang terjadi, getsockname mengembalikan nol. Jika tidak, nilai SOCKET_ERROR dikembalikan, dan kode kesalahan tertentu dapat diambil dengan memanggil WSAGetLastError.
Kode kesalahan | Makna |
---|---|
Panggilan WSAStartup yang berhasil harus terjadi sebelum menggunakan API ini. | |
Subsistem jaringan gagal. | |
Nama atau parameter namelen bukan bagian yang valid dari ruang alamat pengguna, atau parameter namelen terlalu kecil. | |
Panggilan Windows Sockets 1.1 yang diblokir sedang berlangsung, atau penyedia layanan masih memproses fungsi panggilan balik. | |
Deskriptor bukan soket. | |
Soket belum terikat ke alamat dengan ikatan, atau ADDR_ANY ditentukan dalam ikatan tetapi koneksi belum terjadi. |
Keterangan
Fungsi getsockname mengambil nama saat ini untuk deskriptor soket yang ditentukan dalam nama. Ini digunakan pada soket terikat atau terhubung yang ditentukan oleh parameter s . Asosiasi lokal dikembalikan. Panggilan ini sangat berguna ketika panggilan koneksi telah dilakukan tanpa melakukan ikatan terlebih dahulu; fungsi getsockname menyediakan satu-satunya cara untuk menentukan asosiasi lokal yang telah ditetapkan oleh sistem.
Saat panggilan, parameter namelen berisi ukuran buffer nama , dalam byte. Saat dikembalikan, parameter namelen berisi ukuran aktual dalam byte parameter nama .
Fungsi getsockname tidak selalu mengembalikan informasi tentang alamat host ketika soket telah terikat ke alamat yang tidak ditentukan, kecuali soket telah terhubung dengan sambungkan atau terima (misalnya, menggunakan ADDR_ANY). Aplikasi Windows Sockets tidak boleh berasumsi bahwa alamat akan ditentukan kecuali soket tersambung. Alamat yang akan digunakan untuk soket tidak diketahui kecuali soket terhubung saat digunakan dalam host multihomed. Jika soket menggunakan protokol tanpa koneksi, alamat mungkin tidak tersedia sampai I/O terjadi pada soket.
Windows Phone 8: Fungsi ini didukung untuk aplikasi Windows Phone Store di Windows Phone 8 dan yang lebih baru.
Windows 8.1 dan Windows Server 2012 R2: Fungsi ini didukung untuk aplikasi Windows Store di Windows 8.1, Windows Server 2012 R2, dan yang lebih baru.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 8.1, Windows Vista [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2003 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | winsock2.h (termasuk Winsock2.h) |
Pustaka | Ws2_32.lib |
DLL | Ws2_32.dll |