Bagikan melalui


fungsi getsourcefilter (ws2tcpip.h)

Fungsi getsourcefilter sebaris mengambil status filter multicast untuk soket IPv4 atau IPv6.

Sintaks

int getsourcefilter(
  [in]      SOCKET              Socket,
  [in]      ULONG               Interface,
  [in]      const SOCKADDR      *Group,
  [in]      int                 GroupLength,
  [out]     MULTICAST_MODE_TYPE *FilterMode,
  [in, out] ULONG               *SourceCount,
  [out]     SOCKADDR_STORAGE    *SourceList
);

Parameter

[in] Socket

Deskriptor yang mengidentifikasi soket multicast.

[in] Interface

Indeks antarmuka antarmuka multicast.

[in] Group

Penunjuk ke alamat soket grup multicast.

[in] GroupLength

Panjang, dalam byte, dari alamat soket yang ditujukan oleh parameter Grup .

[out] FilterMode

Penunjuk ke nilai untuk menerima mode filter multicast untuk alamat grup multicast saat fungsi kembali.

[in, out] SourceCount

Pada input, pointer ke nilai yang menunjukkan jumlah maksimum alamat sumber yang akan pas di buffer yang ditunjukkan oleh parameter SourceList .

Pada output, pointer ke nilai yang menunjukkan jumlah total alamat sumber yang terkait dengan filter multicast.

[out] SourceList

Penunjuk ke buffer untuk menerima daftar alamat IP yang terkait dengan filter multicast.

Jika SourceCount nol pada input, pointer NULL dapat disediakan.

Mengembalikan nilai

Jika berhasil, getsourcefilter mengembalikan NO_ERROR (0). Setiap nilai pengembalian bukan nol menunjukkan kegagalan dan kode kesalahan tertentu dapat diambil dengan memanggil WSAGetLastError.

Kode kesalahan Makna
WSAENOBUFS
Ruang buffer tidak cukup tersedia.
WSAENOTSOCK
Deskriptor bukan soket.

Keterangan

Fungsi getsourcefilter sebaris digunakan untuk mengambil status filter multicast untuk soket IPv4 atau IPv6.

Jika aplikasi tidak tahu ukuran daftar sumber sebelumnya, aplikasi dapat membuat tebakan (nol, misalnya). Jika setelah selesai, parameter SourceCount memegang nilai yang lebih besar, operasi dapat diulang dengan buffer yang cukup besar.

Saat dikembalikan, parameter SourceCount selalu diperbarui menjadi jumlah total sumber dalam filter, sementara buffer yang ditunjukkan oleh parameter SourceList akan menyimpan alamat sumber sebanyak yang pas, hingga minimum ukuran array yang diteruskan sebagai nilai SourceCount asli dan jumlah total sumber dalam filter.

Fungsi ini adalah bagian dari ekstensi antarmuka soket untuk filter sumber multicast yang ditentukan dalam RFC 3678. Aplikasi dapat menggunakan fungsi ini untuk mengambil dan mengatur filter alamat sumber multicast yang terkait dengan 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 ws2tcpip.h
Pustaka Ws2_32.lib
DLL Ws2_32.dll

Lihat juga

MULTICAST_MODE_TYPE

SOCKADDR_STORAGE

getipv4sourcefilter

setipv4sourcefilter

setsourcefilter