IComponentAuthenticate::SACAuth 메서드(mswmdm.h)
SACAuth 메서드는 구성 요소 간에 보안 인증 채널을 설정합니다.
구문
HRESULT SACAuth(
[in] DWORD dwProtocolID,
[in] DWORD dwPass,
[in] BYTE *pbDataIn,
[in] DWORD dwDataInLen,
[out] BYTE **ppbDataOut,
[out] DWORD *pdwDataOutLen
);
매개 변수
[in] dwProtocolID
프로토콜 식별자를 포함하는 DWORD입니다. 이 버전의 Windows Media 장치 관리자 항상 이 매개 변수를 SAC_PROTOCOL_V1 설정합니다.
[in] dwPass
현재 통신 패스의 수를 포함하는 DWORD입니다. 패스는 각 방향에 하나씩 두 개의 메시지로 구성됩니다. SAC_PROTOCOL_V1 2패스 프로토콜이며 패스 번호는 0과 1입니다.
[in] pbDataIn
입력 데이터에 대한 포인터입니다.
[in] dwDataInLen
pbDataIn이 가리키는 데이터의 길이를 포함하는 DWORD입니다.
[out] ppbDataOut
출력 데이터에 대한 포인터에 대한 포인터입니다.
[out] pdwDataOutLen
ppbDataOut이 가리키는 데이터의 길이를 포함하는 DWORD에 대한 포인터입니다.
반환 값
이 메서드는 HRESULT를 반환합니다. Windows Media 장치 관리자 모든 인터페이스 메서드는 다음 오류 코드 클래스 중 어느 것을 반환할 수 있습니다.
- 표준 COM 오류 코드
- HRESULT 값으로 변환된 Windows 오류 코드
- Windows Media 장치 관리자 오류 코드
설명
이 메서드는 서비스 공급자에 의해서만 호출됩니다. 프로토콜 식별자가 지시한 대로 한 번 이상 호출됩니다.
pbDataIn 및 ppbDataOut의 데이터 구조는 dwProtocolID 및 dwPass 값에 따라 결정됩니다.
예제
다음 C++ 코드는 서비스 공급자의 SACAuth 구현을 보여 줍니다. 이전에 만든 프라이빗 CSecureChannelServer 멤버에서 CSecureChannelServer::SACAuth를 호출합니다.
HRESULT CMyServiceProvider::SACAuth(
DWORD dwProtocolID,
DWORD dwPass,
BYTE *pbDataIn,
DWORD dwDataInLen,
BYTE **ppbDataOut,
DWORD *pdwDataOutLen)
{
HRESULT hr = S_OK;
// Verify that the global CSecureChannelServer member is valid.
if(g_pAppSCServer == NULL)
return E_FAIL;
hr = g_pAppSCServer->SACAuth(
dwProtocolID,
dwPass,
pbDataIn, dwDataInLen,
ppbDataOut, pdwDataOutLen
);
return hr;
}
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | mswmdm.h |
라이브러리 | Mssachlp.lib |