다음을 통해 공유


SnmpMgrGetTrap 함수(mgmtapi.h)

[SNMP는 요구 사항 섹션에 지정된 운영 체제에서 사용할 수 있습니다. 이후 버전에서는 변경되거나 제공되지 않을 수 있습니다. 대신 WS-Man의 Microsoft 구현인 Windows 원격 관리를 사용합니다.]

SnmpMgrGetTrap 함수는 트랩 수신이 사용하도록 설정된 경우 호출자가 받지 못한 미해결 트랩 데이터를 반환합니다. 이 함수는 SNMP Management API의 요소입니다.

SnmpMgrGetTrapEx 함수는 이 함수에서 반환하는 정보 외에도 전송 원본의 주소와 트랩의 커뮤니티 문자열을 반환합니다.

구문

BOOL SNMP_FUNC_TYPE SnmpMgrGetTrap(
  [out] AsnObjectIdentifier *enterprise,
  [out] AsnNetworkAddress   *IPAddress,
  [out] AsnInteger          *genericTrap,
  [out] AsnInteger          *specificTrap,
  [out] AsnTimeticks        *timeStamp,
  [out] RFC1157VarBindList  *variableBindings
);

매개 변수

[out] enterprise

SNMP 트랩을 생성한 엔터프라이즈를 수신하기 위한 AsnObjectIdentifier 구조체에 대한 포인터입니다.

[out] IPAddress

SNMP 트랩을 생성한 에이전트의 주소를 수신하는 변수에 대한 포인터입니다.

[out] genericTrap

제네릭 트랩의 표시기를 받을 변수에 대한 포인터입니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.

의미
SNMP_GENERICTRAP_COLDSTART
에이전트가 관리 모드에서 프로토콜 엔터티를 초기화하고 있습니다. 뷰에서 개체를 변경할 수 있습니다.
SNMP_GENERICTRAP_WARMSTART
에이전트가 자체적으로 다시 초기화되지만 뷰의 개체는 변경되지 않습니다.
SNMP_GENERICTRAP_LINKDOWN
연결된 인터페이스가 "위쪽" 상태에서 "down" 상태로 변경되었습니다. 변수 바인딩 목록의 첫 번째 변수는 인터페이스를 식별합니다.
SNMP_GENERICTRAP_LINKUP
연결된 인터페이스가 "down" 상태에서 "up" 상태로 변경되었습니다. 변수 바인딩 목록의 첫 번째 변수는 인터페이스를 식별합니다.
SNMP_GENERICTRAP_AUTHFAILURE
SNMP 엔터티는 SNMP 메시지를 보냈지만 알려진 커뮤니티에 속한다고 거짓 주장했습니다.
SNMP_GENERICTRAP_EGPNEIGHLOSS
EGP 피어가 "down" 상태로 변경되었습니다. 변수 바인딩 목록의 첫 번째 변수는 EGP 피어의 IP 주소를 식별합니다.
SNMP_GENERICTRAP_ENTERSPECIFIC
특별한 이벤트가 발생했으며 특정 Trap 매개 변수에서 엔터프라이즈별 값으로 식별됩니다.

[out] specificTrap

생성된 특정 트랩의 표시를 수신할 변수에 대한 포인터입니다.

[out] timeStamp

타임스탬프를 받을 변수에 대한 포인터입니다.

[out] variableBindings

변수 바인딩 목록을 수신하기 위한 SnmpVarBindList 구조체에 대한 포인터입니다.

반환 값

함수가 트랩을 반환하는 경우 반환 값은 TRUE입니다. 오류에 대한 코드는 호출 직후 SnmpGetLastError 를 호출하여 검색할 수 있습니다.

FALSE(0)를 반환할 때까지 SnmpMgrGetTrap 함수를 반복적으로 호출해야 합니다. 함수는 다음 오류 코드를 반환할 수도 있습니다.

반환 코드 설명
SNMP_MGMTAPI_TRAP_ERRORS
오류가 발생했음을 나타냅니다. 트랩에 액세스할 수 없습니다.
SNMP_MGMTAPI_NOTRAPS
사용할 수 있는 트랩이 없음을 나타냅니다.
SNMP_MEM_ALLOC_ERROR
메모리 할당 오류를 나타냅니다.

설명

애플리케이션은 SnmpMgrGetTrap 함수를 호출하기 전에 항상 SnmpMgrTrapListen 함수를 호출해야 합니다. 이는 SnmpMgrTrapListen 함수의 phTrapAvailable 매개 변수가 가리키는 이벤트 핸들을 사용하여 SNMP 트랩을 이벤트 구동으로 획득할 수 있기 때문입니다. SNMP 관리 API는 SNMP 트랩 서비스가 트랩을 제공할 때 애플리케이션의 이벤트를 알릴 수 있습니다.

또한 애플리케이션은 정기적으로 트랩에 대해 SnmpMgrGetTrap 함수를 폴링할 수 있습니다. 이 경우 애플리케이션은 함수가 0을 반환할 때까지 SnmpMgrGetTrap 을 반복적으로 호출해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 mgmtapi.h
라이브러리 Mgmtapi.lib
DLL Mgmtapi.dll

추가 정보

AsnObjectIdentifier

SNMP 함수

SNMP(Simple Network Management Protocol) 개요

SnmpMgrTrapListen

SnmpVarBindList