На главную

On-line справка по Win32 API

Написать письмо
БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО!
Список всех статей A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z | Скачать Вниз

SnmpMgrGetTrap



The SnmpMgrGetTrap function returns outstanding trap data that the caller has not received if trap reception is enabled.

BOOL SnmpMgrGetTrap(

AsnObjectIdentifier *enterprise, // generating enterprise
AsnNetworkAddress *IPAddress, // generating IP address
AsnInteger *genericTrap, // generic trap type
AsnInteger *specificTrap, // enterprise-specific type
AsnTimeticks *timeStamp, // time stamp
RFC1157VarBindList *variableBindings // variable bindings
);


Parameters

enterprise

[out] Points to an object identifier that specifies the enterprise that generated the SNMP trap.

IPAddress

[out] Points to the IP address of the enterprise that generated the SNMP trap.

genericTrap

[out] Points to an indicator of the generic trap. This parameter can be one of the following values:

Value Meaning
SNMP_GENERICTRAP_COLDSTART The agent is initializing protocol entities on the managed mode. It may alter objects in its view.
SNMP_GENERICTRAP_WARMSTART The agent is re-initializing itself but it will not alter objects in its view.
SNMP_GENERICTRAP_LINKDOWN An attached interface has changed from the up state to the down state. The first variable in the variable bindings list identifies the interface.
SNMP_GENERICTRAP_LINKUP An attached interface has changed from the down state to the up state. The first variable in the variable bindings list identifies the interface.
SNMP_GENERICTRAP_AUTHFAILURE An SNMP entity has sent an SNMP message, but it has falsely claimed to belong to a known community.
SNMP_GENERICTRAP_EGPNEIGHLOSS An EGP peer has changed to the down state. The first variable in the variable bindings list identifies the IP address of the EGP peer.
SNMP_GENERICTRAP_ENTERSPECIFIC An extraordinary event has occurred and it is identified in the specificTrap parameter with an enterprise-specific value.


specificTrap

[out] Points to an indication of the specific trap generated.

timeStamp

[out] Points to a variable to receive the time stamp.

variableBindings

[out] Points to the variable bindings list.



Return Values

If the function returns a trap, the return value is TRUE.
You should call the SnmpMgrGetTrap function repeatedly until GetLastError returns a value of FALSE. GetLastError may also return the following error codes:

Error Code Meaning
SNMP_MGMTAPI_TRAP_ERRORS Indicates errors were encountered; traps are not accessible.
SNMP_MGMTAPI_NOTRAPS Indicates no traps are available.
SNMP_MEM_ALLOC_ERROR Indicates a memory allocation error.


Remarks

You must allocate memory for the list member of the RFC1157VarBindList structure with the SnmpUtilMemAlloc function but you do not need to free it.
Once an operating system completes a task, it sends a trap signal. An internal SNMP signal checks for the trap signal to notify the SNMP manager of the completed task. The event that the phTrapAvailable parameter of the SnmpMgrTrapListen function points to allows event-driven acquisition of SNMP traps. You can ignore the trap and poll the SnmpMgrGetTrap function for traps at regular intervals instead.

Another method to acquire traps is to create a thread to wait on the event using the WaitForSingleObject function. When the event occurs, the thread should clear the event using the ResetEvent function. Then the thread should repeatedly call SnmpMgrGetTrap until it returns a value of FALSE.
Always call the SnmpMgrTrapListen function before calling SnmpMgrGetTrap to receive traps. If an SNMP manager application calls SnmpMgrGetTrap first to receive traps, it returns a value of FALSE, even if there are traps available. If the application calls GetLastError before calling SnmpMgrTrapListen, GetLastError returns the error code SNMP_MGMTAPI_TRAP_ERRORS.

See Also

SnmpMgrTrapListen, SnmpUtilMemAlloc, WaitForSingleObject, RFC1157VarBindList, ResetEvent


Пригласи друзей и счет твоего мобильника всегда будет положительным!
Предыдущая статья
 
Сайт Народ.Ру Интернет
Следующая статья
Пригласи друзей и счет твоего мобильника всегда будет положительным!

SnmpMgrGetTrap



Функция SnmpMgrGetTrap возвращает выдающиеся данные прерывания, что вызывающий оператор не получил если прием прерывания приспособлен.

BOOL SnmpMgrGetTrap(

AsnObjectIdentifier *ПРЕДПРИЯТИЕ, // генерация предприятия AsnNetworkAddress *IPAddress, // генерация адреса IP AsnInteger *genericTrap, // общий тип прерывания AsnInteger *specificTrap, // предприятие-специфический тип AsnTimeticks *отметка времени, // марка времени RFC1157VarBindList *переменные связи variableBindings //
);


Параметры

предприятие

[out] Указывает на объектный идентификатор, который определяет предприятие, которое генерировало прерывание SNMP.

IPAddress

[out] Указывает на адрес IP предприятия, который генерировал прерывание SNMP.

genericTrap

[out] Указывает на указатель общего прерывания. Этот параметр может быть одним из следующего величин:

Значение Величины
SNMP_GENERICTRAP_COLDSTART агент инициализирует объекты протокола в управляющем режиме. Это может изменить объекты со своей точки зрения.
SNMP_GENERICTRAP_WARMSTART агент см.- инициализирующий сам но он не изменит объекты со своей точки зрения.
SNMP_GENERICTRAP_LINKDOWN прилагаемый интерфейс заменил с up состояния в вниз состояние. Первая переменная в переменном списке связей идентифицирует интерфейс.
SNMP_GENERICTRAP_LINKUP прилагаемый интерфейс заменил с вниз состояния в up состояние. Первая переменная в переменном списке связей идентифицирует интерфейс.
SNMP_GENERICTRAP_AUTHFAILURE объект SNMP послал сообщение SNMP, но это ложно предъявилось, чтобы принадлежать известному обществу.
SNMP_GENERICTRAP_EGPNEIGHLOSS сверстник EGP изменился в вниз состояние. Первая переменная в переменном списке связей идентифицирует адрес IP сверстника EGP.
SNMP_GENERICTRAP_ENTERSPECIFIC чрезвычайное событие произошло и оно называется в параметре specificTrap с предприятие-специфической величиной.


specificTrap

[out] Указывает на указание сгенерированного специфического прерывания.

Отметка времени

[out] Указывает на переменную, чтобы получать марку времени.

variableBindings

[out] Указывает на переменный список связей.



Обратные Величины

Если функция возвращает прерывание, обратная величина является ИСТИНОЙ.
Вы должны вызывать функцию SnmpMgrGetTrap многократно пока GetLastError не возвращает величину ЛЖИ. GetLastError МОЖЕТ также возвращать следующую ошибку кодировать:

Кодовое Значение Ошибки
SNMP_MGMTAPI_TRAP_ERRORS Указывается, ошибки столкнулись; прерывания не доступны.
SNMP_MGMTAPI_NOTRAPS Указывает что никакие прерывания не доступны.
SNMP_MEM_ALLOC_ERROR Указывает ошибку распределения памяти.


Замечания

Вы должны распределить память для элемента списка структуры RFC1157VarBindList с функцией SnmpUtilMemAlloc но Вам не нужно освобождать это.
Как только операционная система завершит задачу, она посылает прерыванию сигнал. Внутренний сигнал SNMP проверяет на наличие сигнала прерывания, чтобы уведомлять менеджер SNMP о завершенной задаче. Событие, что параметр phTrapAvailable функции SnmpMgrTrapListen указывает, чтобы допускать управляемое приобретение события прерываний SNMP. Вы можете проигнорировать прерывание и опрашивать функцию SnmpMgrGetTrap для прерываний в регулярных интервалах взамен.

Другой метод, чтобы приобретать прерывания - создавать резьбу, чтобы ожидаться в событии, использовавшем функцию WaitForSingleObject. Когда событие происходит, резьба должна очищать событие, использовавшее функцию ResetEvent. Затем резьба должна многократно вызывать SnmpMgrGetTrap пока она не возвращает величину ЛЖИ.
Всегда вызовите функцию SnmpMgrTrapListen перед разговором SnmpMgrGetTrap, чтобы получать прерывания. Если приложение менеджера SNMP вызывает SnmpMgrGetTrap сначала, чтобы получать прерывания, оно возвращает величину ЛЖИ, даже если бы есть прерывания доступные. Если приложение вызывает GetLastError перед разговором SnmpMgrTrapListen, GetLastError возвращает код ошибки SNMP_MGMTAPI_TRAP_ERRORS.

Смотри Также

SnmpMgrTrapListen, SnmpUtilMemAlloc, WaitForSingleObject, RFC1157VarBindList, ResetEvent


Вверх Version 1.3, Oct 26 2010 © 2007, 2010, mrhx Вверх
 mrhx software  Русский перевод OpenGL  Русский перевод Win32 API
 
Используются технологии uCoz