NdisClMakeCall 함수(ndis.h)
NdisClMakeCall 은 클라이언트에서 만든 VC에서 나가는 호출을 설정합니다.
구문
NDIS_STATUS NdisClMakeCall(
[in] NDIS_HANDLE NdisVcHandle,
[in, out] PCO_CALL_PARAMETERS CallParameters,
[in, optional] NDIS_HANDLE ProtocolPartyContext,
[out, optional] PNDIS_HANDLE NdisPartyHandle
);
매개 변수
[in] NdisVcHandle
NdisCoCreateVc에 대한 이전 호출에서 반환된 핸들을 지정합니다.
[in, out] CallParameters
호출 관리자가 지원하는 네트워크 중간 및 주소 패밀리가 QoS 사양을 허용하는 경우 호출자가 이 연결에 대한 특성(예: 호출 대상의 주소, 대기 시간, 대역폭 및 서비스 품질)을 지정한 CO_CALL_PARAMETERS 형식 구조에 대한 포인터입니다.
[in, optional] ProtocolPartyContext
필요에 따라 클라이언트가 해당 다중 포인트 VC에서 초기 파티의 파티별 상태를 유지 관리하는 상주 컨텍스트 영역에 대한 호출자 제공 핸들을 지정합니다. 지정된 VC가 다중 포인트 연결을 나타내지 않는 경우 이 매개 변수는 NULL 입니다. 다중 포인트 VC의 경우 NDIS는 이 특정 당사자에 영향을 주는 모든 후속 호출에서 클라이언트의 ProtocolClXxx 함수에 이 핸들을 다시 전달합니다.
[out, optional] NdisPartyHandle
발신자가 제공한 변수에 대한 포인터로, 일반적으로 발신자가 할당한 파티 컨텍스트 영역에서 NDIS는 나가는 호출을 설정하는 요청이 성공한 경우 초기 파티를 나타내는 핸들을 다중 포인트 연결에 반환합니다. ProtocolPartyContext가 NULL인 경우 이 변수는 일반적으로 클라이언트의 VC 컨텍스트 영역에서 발신 호출 설정이 완료될 때 NULL로 설정됩니다.
반환 값
NdisClMakeCall이 NDIS_STATUS_PENDING 이외의 항목을 반환하는 경우 클라이언트는 ProtocolClMakeCallComplete 함수에 대한 내부 호출을 수행해야 합니다. 그렇지 않으면 이 작업이 완료되면 NDIS에서 클라이언트의 ProtocolClMakeCallComplete 함수를 호출합니다.
설명
NdisClMakeCall 은 클라이언트에서 시작한 발신 호출에 대해 클라이언트에서 만든 VC의 특성을 설정합니다. 클라이언트는 나가는 호출을 시도하기 전에 NdisCoCreateVc 를 사용하여 VC를 설정해야 합니다.
NdisClMakeCall을 호출하면 NDIS가 이 요청을 클라이언트가 지정된 NdisVcHandle을 공유하는 호출 관리자의 ProtocolCmMakeCall 함수로 전달합니다. CM은 CallParameters 에서 지정된 데이터의 유효성을 검사합니다. 관련 네트워크 구성 요소와 협상하는 동안 이 클라이언트 제공 데이터를 수정할 수 있으며, 클라이언트가 원래 NdisClMakeCall에 제공한 것과 다른 트래픽 매개 변수를 반환할 수 있습니다. 이 경우 클라이언트의 ProtocolClMakeCallComplete 함수는 수정된 호출 매개 변수를 수락하거나 CM의 제안된 호출 매개 변수가 허용되지 않는 경우 호출을 중단해야 합니다.
따라서 CallParameters 의 데이터는 적어도 통화 설정 기간 동안 호출 관리자가 사용할 수 있어야 합니다. NdisClMakeCall이 NDIS_STATUS_PENDING 반환하는 경우 클라이언트는 이 버퍼를 해제할 수 없습니다. ProtocolClMakeCallComplete 함수가 호출될 때까지 이 클라이언트 할당 리소스의 해제를 연기해야 합니다.
NdisClMakeCall이 멀티포인트 연결을 설정하는 경우 기본 네트워크 매체가 파티별 트래픽 매개 변수를 지원하지 않는 한 클라이언트는 지정된 VC에 대해 전역적으로 트래픽 매개 변수를 설정합니다.
클라이언트의 ProtocolClMakeCallComplete 함수는 NdisPartyHandle에서 반환된 핸들을 사용하기 전에 NDIS_STATUS_SUCCESS 대한 입력 상태를 확인해야 합니다. 호출 관리자가 다중 포인트 연결에 대한 호출을 설정하라는 요청에 실패하면 클라이언트에서 제공하는 이 변수의 값이 잘못됩니다.
요구 사항
| 지원되는 최소 클라이언트 | Windows Vista에서 NDIS 6.0 및 NDIS 5.1 드라이버(NdisClMakeCall(NDIS 5.1 참조))에 대해 지원됩니다. Windows XP에서 NDIS 5.1 드라이버(NdisClMakeCall(NDIS 5.1 참조))에 대해 지원됩니다. |
| 대상 플랫폼 | 데스크톱 |
| 머리글 | ndis.h(Ndis.h 포함) |
| 라이브러리 | Ndis.lib |
| IRQL | <= DISPATCH_LEVEL |
| DDI 규정 준수 규칙 | Irql_Protocol_Driver_Function(ndis) |
참고 항목
피드백
다음에 대한 사용자 의견 제출 및 보기