Fungsi SnmpExtensionTrap (snmp.h)
[SNMP tersedia untuk digunakan dalam sistem operasi yang ditentukan di bagian Persyaratan. Ini mungkin diubah atau tidak tersedia dalam versi berikutnya. Sebagai gantinya, gunakan Manajemen Jarak Jauh Windows, yang merupakan implementasi Microsoft dari WS-Man.]
Layanan Microsoft SNMP memanggil fungsi SnmpExtensionTrap untuk mengambil informasi yang dibutuhkan layanan untuk menghasilkan perangkap untuk agen ekstensi SNMP. Layanan memanggil fungsi ini hanya setelah agen ekstensi mengatur handel peristiwa trap ke status yang disinyalkan selama panggilan ke fungsi SnmpExtensionInit . Fungsi SnmpExtensionTrap adalah elemen dari API Agen Ekstensi SNMP.
Sintaks
BOOL SNMP_FUNC_TYPE SnmpExtensionTrap(
[out] AsnObjectIdentifier *pEnterpriseOid,
[out] AsnInteger32 *pGenericTrapId,
[out] AsnInteger32 *pSpecificTrapId,
[out] AsnTimeticks *pTimeStamp,
[out] SnmpVarBindList *pVarBindList
);
Parameter
[out] pEnterpriseOid
Arahkan ke struktur AsnObjectIdentifier untuk menerima pengidentifikasi objek perusahaan yang menghasilkan perangkap. Layanan SNMP tidak membebaskan memori untuk variabel ini.
[out] pGenericTrapId
Penunjuk ke variabel untuk menerima indikasi perangkap generik. Parameter ini bisa menjadi salah satu nilai berikut.
[out] pSpecificTrapId
Penunjuk ke variabel untuk menerima indikasi perangkap tertentu yang dihasilkan.
[out] pTimeStamp
Arahkan ke variabel untuk menerima stempel waktu. Disarankan agar Anda menginisialisasi parameter ini dengan nilai yang dikembalikan oleh panggilan ke fungsi SnmpSvcGetUptime .
[out] pVarBindList
Arahkan ke daftar pengikatan variabel. Agen ekstensi harus mengalokasikan memori untuk parameter ini. Layanan SNMP membebaskan memori dengan panggilan ke fungsi SnmpUtilVarBindListFree .
Mengembalikan nilai
Jika fungsi SnmpExtensionTrap mengembalikan trap, nilai yang dikembalikan adalah TRUE. Layanan SNMP berulang kali memanggil fungsi hingga mengembalikan nilai FALSE. Untuk informasi tambahan, lihat bagian Keterangan berikut ini.
Keterangan
Layanan SNMP berulang kali memanggil fungsi SnmpExtensionTrap ketika handel peristiwa phSubagentTrapEvent diatur ke status yang disinyalkan. Handel ini diteruskan kembali selama panggilan ke fungsi titik masuk SnmpExtensionInit . Fungsi SnmpExtensionTrap harus mengembalikan TRUE untuk menunjukkan bahwa parameter berisi data yang valid untuk satu trap. Fungsi harus mengembalikan FALSE untuk menunjukkan bahwa parameter tidak mewakili data trap yang valid, dan untuk menghentikan panggilan berulang layanan.
Perhatikan bahwa setelah layanan SNMP mengirim perangkap, layanan ini membebaskan memori yang terkait dengan daftar pengikatan variabel.
Penting untuk dicatat bahwa dokumentasi sebelumnya menyatakan bahwa agen ekstensi harus secara dinamis mengalokasikan memori untuk pengidentifikasi objek perusahaan karena layanan SNMP akan mencoba melepaskan memori setelah mengirim perangkap. Layanan tidak akan merilis memori yang terkait dengan pengidentifikasi objek perusahaan. Disarankan agar Anda mengembalikan penunjuk ke struktur AsnObjectIdentifier statis sebagai gantinya.
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 | snmp.h |