다음을 통해 공유


PROTOCOL_CM_DEREGISTER_SAP 콜백 함수(ndis.h)

ProtocolCmDeregisterSap 함수가 필요합니다. 이 함수는 NDIS에서 호출하여 호출 관리자가 연결 지향 클라이언트를 대신하여 SAP 등록을 취소하도록 요청합니다.

참고PROTOCOL_CM_DEREGISTER_SAP 형식을 사용하여 함수를 선언해야 합니다. 자세한 내용은 다음 예제 섹션을 참조하세요.
 

통사론

PROTOCOL_CM_DEREGISTER_SAP ProtocolCmDeregisterSap;

NDIS_STATUS ProtocolCmDeregisterSap(
  [in] NDIS_HANDLE CallMgrSapContext
)
{...}

매개 변수

[in] CallMgrSapContext

호출 관리자가 SAP별 상태 정보를 유지하는 호출 관리자 할당 컨텍스트 영역에 대한 핸들을 지정합니다. 호출 관리자는 이 핸들을 해당 핸들에서 NDIS에 제공했습니다. ProtocolCmRegisterSap 함수입니다.

반환 값

ProtocolCmDeregisterSap 작업 상태를 다음 중 하나로 반환합니다.

반환 코드 묘사
NDIS_STATUS_SUCCESS
호출 관리자가 SAP 등록을 성공적으로 제거하고 SAP별 정보를 유지하기 위해 할당된 리소스를 해제했음을 나타냅니다.
NDIS_STATUS_PENDING
호출 관리자가 SAP를 비동기적으로 등록 취소하는 요청을 완료했음을 나타냅니다. 호출 관리자가 호출해야 합니다. NdisCmDeregisterSapComplete는 작업이 완료되면 NDIS에 신호를 보낼.

발언

ProtocolCmDeregisterSap 필요에 따라 네트워크 제어 디바이스 또는 기타 미디어 관련 에이전트와 통신하여 네트워크에서 SAP를 등록 취소합니다. 이러한 작업에는 다음이 포함될 수 있지만 이에 국한되지는 않습니다.

  • 전환 하드웨어와 통신
  • 네트워크 제어 스테이션과 통신
  • 다른 미디어 관련 네트워크 에이전트와 통신
호출 관리자가 네트워크 스위치와 같은 네트워킹 제어 에이전트와 통신해야 하는 경우 ProtocolBindAdapterEx 함수에서 설정한 네트워크 제어 에이전트에 대한 가상 연결을 사용해야 합니다. 독립 실행형 통화 관리자는 NdisCoSendNetBufferLists호출하여 기본 미니포트 드라이버를 통해 통신합니다. 통합 통화 관리 지원을 제공하는 미니포트 드라이버는 NdisCoSendNetBufferLists호출하지 않습니다. 대신 네트워크를 통해 직접 데이터를 전송합니다.

또한 ProtocolCmDeregisterSapCallMgrSapContext제공된 SAP별 영역에서 동적으로 할당된 리소스를 해제하고 NDIS로 제어를 반환하기 전에 상태 영역 자체를 해제해야 합니다.

예제

ProtocolCmDeregisterSap 함수를 정의하려면 먼저 정의하는 함수의 형식을 식별하는 함수 선언을 제공해야 합니다. Windows는 드라이버에 대한 함수 형식 집합을 제공합니다. 함수 형식을 사용하여 함수를 선언하면 드라이버 , SDV(정적 드라이버 검증 도구) 및 기타 확인 도구에 대한 코드 분석을데 도움이 되며 Windows 운영 체제용 드라이버를 작성하기 위한 요구 사항입니다.

예를 들어 "MyCmDeregisterSap"라는 ProtocolCmDeregisterSap 함수를 정의하려면 이 코드 예제와 같이 PROTOCOL_CM_DEREGISTER_SAP 형식을 사용합니다.

PROTOCOL_CM_DEREGISTER_SAP MyCmDeregisterSap;

그런 다음 다음과 같이 함수를 구현합니다.

_Use_decl_annotations_
NDIS_STATUS
 MyCmDeregisterSap(
    NDIS_HANDLE  CallMgrSapContext
    )
  {...}

PROTOCOL_CM_DEREGISTER_SAP 함수 형식은 Ndis.h 헤더 파일에 정의됩니다. 코드 분석 도구를 실행할 때 오류를 보다 정확하게 식별하려면 함수 정의에 Use_decl_annotations 주석을 추가해야 합니다. Use_decl_annotations 주석은 헤더 파일의 PROTOCOL_CM_DEREGISTER_SAP 함수 형식에 적용되는 주석이 사용되는지 확인합니다. 함수 선언 요구 사항에 대한 자세한 내용은 NDIS 드라이버함수 역할 형식을 사용하여 함수 선언을 참조하세요.

Use_decl_annotations대한 자세한 내용은 함수 동작 주석참조하세요.

요구 사항

요구
지원되는 최소 클라이언트 Windows Vista에서 NDIS 6.0 및 NDIS 5.1 드라이버(ProtocolCmDeregisterSap(NDIS 5.1) 참조)에 대해 지원됩니다. Windows XP에서 NDIS 5.1 드라이버(ProtocolCmDeregisterSap(NDIS 5.1) 참조)에 대해 지원됩니다.
대상 플랫폼 Windows
헤더 ndis.h(Ndis.h 포함)
IRQL <= DISPATCH_LEVEL

참고 항목

NdisCmDeregisterSapComplete

NdisCoSendNetBufferLists

ProtocolBindAdapterEx

ProtocolCmRegisterSap