SnmpExtensionTrap 함수(snmp.h)
[SNMP는 요구 사항 섹션에 지정된 운영 체제에서 사용할 수 있습니다. 이후 버전에서는 변경되거나 제공되지 않을 수 있습니다. 대신 WS-Man의 Microsoft 구현인 Windows 원격 관리를 사용합니다.]
Microsoft SNMP 서비스는 SnmpExtensionTrap 함수를 호출하여 서비스가 SNMP 확장 에이전트에 대한 트랩을 생성하는 데 필요한 정보를 검색합니다. 서비스는 확장 에이전트가 SnmpExtensionInit 함수를 호출하는 동안 트랩 이벤트 핸들을 신호 상태로 설정한 후에만 이 함수를 호출합니다. SnmpExtensionTrap 함수는 SNMP 확장 에이전트 API의 요소입니다.
구문
BOOL SNMP_FUNC_TYPE SnmpExtensionTrap(
[out] AsnObjectIdentifier *pEnterpriseOid,
[out] AsnInteger32 *pGenericTrapId,
[out] AsnInteger32 *pSpecificTrapId,
[out] AsnTimeticks *pTimeStamp,
[out] SnmpVarBindList *pVarBindList
);
매개 변수
[out] pEnterpriseOid
트랩을 생성한 엔터프라이즈의 개체 식별자를 수신하기 위한 AsnObjectIdentifier 구조체에 대한 포인터입니다. SNMP 서비스는 이 변수에 대한 메모리를 해제하지 않습니다.
[out] pGenericTrapId
제네릭 트랩의 표시를 받을 변수에 대한 포인터입니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.
[out] pSpecificTrapId
생성된 특정 트랩의 표시를 수신할 변수에 대한 포인터입니다.
[out] pTimeStamp
타임스탬프를 받을 변수에 대한 포인터입니다. SnmpSvcGetUptime 함수에 대한 호출에서 반환된 값으로 이 매개 변수를 초기화하는 것이 좋습니다.
[out] pVarBindList
변수 바인딩 목록에 대한 포인터입니다. 확장 에이전트는 이 매개 변수에 대한 메모리를 할당해야 합니다. SNMP 서비스는 SnmpUtilVarBindListFree 함수를 호출하여 메모리를 해제합니다.
반환 값
SnmpExtensionTrap 함수가 트랩을 반환하는 경우 반환 값은 TRUE입니다. SNMP 서비스는 FALSE 값을 반환할 때까지 함수를 반복적으로 호출 합니다. 자세한 내용은 다음 설명 섹션을 참조하세요.
설명
sNMP 서비스는 phSubagentTrapEvent 이벤트 핸들이 신호된 상태로 설정된 경우 SnmpExtensionTrap 함수를 반복적으로 호출합니다. 이 핸들은 SnmpExtensionInit 진입점 함수를 호출하는 동안 다시 전달됩니다. SnmpExtensionTrap 함수는 매개 변수에 단일 트랩에 대한 유효한 데이터가 포함되어 있음을 나타내기 위해 TRUE를 반환해야 합니다. 매개 변수가 유효한 트랩 데이터를 나타내지 않음을 나타내고 서비스의 반복 호출을 중지하려면 함수가 FALSE 를 반환해야 합니다.
SNMP 서비스가 트랩을 보낸 후 변수 바인딩 목록과 연결된 메모리를 해제합니다.
이전 설명서에서는 SNMP 서비스가 트랩을 보낸 후 메모리를 해제하려고 하므로 확장 에이전트가 엔터프라이즈 개체 식별자에 대한 메모리를 동적으로 할당해야 한다고 명시했습니다. 서비스는 엔터프라이즈 개체 식별자와 연결된 메모리를 해제하지 않습니다. 대신 정적 AsnObjectIdentifier 구조체에 대한 포인터를 반환하는 것이 좋습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | snmp.h |