Bagikan melalui


Fungsi panggilan balik CBGETRSVPOBJECTS (lpmapi.h)

Fungsi cbGetRsvpObjects adalah fungsi panggilan balik bagi LPM untuk mengembalikan hasil secara asinkron untuk permintaan LPM_GetRsvpObjects . LPM memanggil fungsi cbGetRsvpObjects untuk mengembalikan objek data kebijakan secara asinkron ke PCM untuk permintaan LPM_GetRsvpObjects . LPM hanya boleh menggunakan fungsi cbGetRsvpObjects jika dikembalikan LPM_RESULTS_DEFER ke permintaan LPM_GetRsvpObjects PCM.

Sintaks

CBGETRSVPOBJECTS Cbgetrsvpobjects;

ULONG * Cbgetrsvpobjects(
  [in] LPM_HANDLE LpmHandle,
  [in] RHANDLE RequestHandle,
  [in] int LpmError,
  [in] int RsvpObjectsCount,
  [in] RsvpObjHdr **ppRsvpObjects
)
{...}

Parameter

[in] LpmHandle

Handel unik untuk LPM, seperti yang disediakan dalam LPM_Initialize. PCM akan mengabaikan hasil apa pun yang tidak disertai dengan handel yang valid.

[in] RequestHandle

Handel unik yang membedakan permintaan ini dari semua permintaan lain, disediakan dari permintaan LPM_GetRsvpObjects yang sesuai.

[in] LpmError

Nilai kesalahan, digunakan oleh PCM untuk menentukan apakah objek data kebijakan yang dikembalikan dengan fungsi ini harus digunakan. Nilai apa pun selain LPM_OK akan mengakibatkan PCM mengabaikan konten *RsvpObjects.

Perhatikan bahwa jika LPM mengembalikan kesalahan, buffer gratis harus dialokasikan selama pemrosesan permintaan LPM_GetRsvpObjects ; buffer ini seharusnya dialokasikan menggunakan fungsi MemoryAllocator , yang disediakan dalam fungsi LPM_Initialize sebagai parameter FreeMemory-nya .

Jika tidak ada objek data kebijakan yang dikembalikan, LpmError harus diatur ke LPM_OK, RsvpObjectsCount harus diatur ke nol, dan *RsvpObjects harus diatur ke null. LPM dapat memaksa SBM berhenti mengirim pesan RSVP dengan mengatur nilai LpmError ke LPV_DROP_MSG.

[in] RsvpObjectsCount

Jumlah objek data kebijakan yang dikembalikan. Jika tidak ada objek data kebijakan yang dikembalikan, parameter LpmError harus diatur ke LPM_OK, parameter RsvpObjectsCount harus diatur ke nol, dan parameter *RsvpObjects harus diatur ke null.

[in] ppRsvpObjects

Array pointer ke objek data kebijakan. Buffer yang berisi objek data kebijakan harus dialokasikan menggunakan fungsi MemoryAllocator yang disediakan dalam fungsi LPM_Initialize . Subnet Bandwidth Manager (SBM) akan membebaskan objek data kebijakan ketika tidak lagi diperlukan.

Jika tidak ada objek data kebijakan yang dikembalikan, LpmError harus diatur ke LPM_OK, RsvpObjectsCount harus diatur ke nol, dan *RsvpObjects harus diatur ke null.

Nilai kembali

Nilai yang dikembalikan ditentukan oleh aplikasi yang menyediakan panggilan balik.

Keterangan

LPM tidak perlu mengirim opsi data kebijakan jika hanya opsi default yang diperlukan. Karena konten objek data kebijakan buram ke PCM, tidak ada konversi urutan host-ke-jaringan header dan konten elemen kebijakan yang akan dilakukan oleh PCM; PCM mengharapkan LPM menghasilkan elemen kebijakan dalam urutan jaringan sehingga penerima elemen kebijakan dapat mengurainya dengan benar. Namun, header objek data kebijakan harus dalam urutan host untuk memungkinkan PCM menggabungkan elemen kebijakan (jika memungkinkan atau berlaku).

Dari LPM yang mendukung semua jenis PE, PCM mengharapkan objek data kebijakan lengkap dan opsi data kebijakan yang diperlukan. Selain itu, PCM mengharapkan header objek data kebijakan berada dalam urutan host; LPM bertanggung jawab untuk memproses konversi urutan host-ke-jaringan dari opsi kebijakan dan elemen kebijakan.

Jika ada LPM yang mengembalikan LPV_DROP_MSG, SBM tidak akan mengirimkan pesan refresh RSVP, tetapi akan membebaskan objek data kebijakan yang dikembalikan oleh LPM lain (yang tidak mengembalikan LPV_DROP_MSG, jika ada). Dengan tidak mengirimkan pesan refresh RSVP, status RSVP alur baik upstram maupun hilir akan mulai menua, dan akhirnya dihapus.

Catatan SBM akan mengirimkan pesan refresh RSVP meskipun beberapa atau semua LPM gagal mengembalikan objek data kebijakan secara tepat waktu, meskipun pesan RSVP keluar seperti itu mungkin tidak berisi semua objek data kebijakan yang seharusnya.
 

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header lpmapi.h

Lihat juga

LPM_GetRsvpObjects

LPM_Initialize