CryptGetOIDFunctionAddress 함수(wincrypt.h)

CryptGetOIDFunctionAddress 함수는 등록된 함수 및 설치된 함수 목록에서 인코딩 형식 및 OID(개체 식별자) 일치 항목을 검색합니다. 일치 항목이 발견되면 함수를 포함하는 DLL이 필요한 경우 로드됩니다. 일치 항목이 발견되면 함수 주소에 대한 포인터와 함수 핸들에 대한 포인터도 반환됩니다. 함수 핸들의 참조 수가 증가합니다.

구문

BOOL CryptGetOIDFunctionAddress(
  [in]  HCRYPTOIDFUNCSET  hFuncSet,
  [in]  DWORD             dwEncodingType,
  [in]  LPCSTR            pszOID,
  [in]  DWORD             dwFlags,
  [out] void              **ppvFuncAddr,
  [out] HCRYPTOIDFUNCADDR *phFuncAddr
);

매개 변수

[in] hFuncSet

이전에 CryptInitOIDFunctionSet 함수 호출에서 가져온 함수 집합 핸들입니다.

[in] dwEncodingType

일치시킬 인코딩 형식을 지정합니다. 현재는 X509_ASN_ENCODING 및 PKCS_7_ASN_ENCODING만 사용됩니다. 그러나 나중에 추가 인코딩 형식을 추가할 수 있습니다. 두 현재 인코딩 형식을 모두 일치하려면 다음을 사용합니다.

X509_ASN_ENCODING | PKCS_7_ASN_ENCODING

인코딩 형식을 사용하지 않는 함수의 경우 이 매개 변수를 0으로 설정합니다.

[in] pszOID

OID의 상위 단어가 0이 아닌 경우 pszOID 는 "2.5.29.1"과 같은 OID 문자열 또는 "file"과 같은 ASCII 문자열에 대한 포인터입니다. OID의 상위 단어가 0이면 하위 단어는 개체 식별자로 사용할 숫자 식별자를 지정합니다. 이 결과 OID는 동일한 OID에 설치되거나 등록된 함수에 매핑됩니다.

[in] dwFlags

이 매개 변수는 다음 값일 수 있습니다.

의미
CRYPT_GET_INSTALLED_OID_FUNC_FLAG
설치된 함수 목록만 검색합니다.

[out] ppvFuncAddr

함수 주소에 대한 포인터에 대한 포인터입니다. 일치하는 항목이 발견되면 ppvFuncAddr는 함수 주소를 가리킵니다.

[out] phFuncAddr

일치 항목이 발견되면 phFuncAddr 는 함수 핸들을 가리킵니다. 핸들에 대한 참조 수가 증가합니다. 핸들 사용을 마쳤으면 CryptFreeOIDFunctionAddress 함수를 호출하여 핸들을 해제합니다.

참고 기본적으로 등록된 함수 목록과 설치된 함수 목록이 모두 검색됩니다. 설치된 함수 목록만 검색하려면 CRYPT_GET_INSTALLED_OID_FUNC_FLAG 설정합니다. 이 플래그는 등록된 함수에 의해 설정되어 교체된 미리 설치된 함수의 주소를 가져옵니다. 예를 들어 등록된 함수는 새 특수 사례를 처리하고 사전 설치된 함수를 호출하여 나머지 사례를 처리할 수 있습니다.
 

반환 값

함수가 성공하고 일치 항목이 발견되면 함수는 0이 아닌 값(TRUE)을 반환합니다.

함수가 실패하거나 일치하는 항목이 없으면 0(FALSE)을 반환합니다. 확장 오류 정보는 GetLastError를 호출합니다.

설명

pszOID 인수가 CMSG_DEFAULT_INSTALLABLE_FUNC_OID 설정된 CryptGetOIDFunctionAddress를 호출하여 다음 콜백 함수에 대한 기본 설치 가능 함수를 가져올 수 있습니다.

기본 함수를 검색하려면 dwEncodingType을 다음 인코딩 형식의 비트 OR 조합으로 설정합니다.

CRYPT_ASN_ENCODINGX509_ASN_ENCODING

요구 사항

   
지원되는 최소 클라이언트 Windows XP [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 wincrypt.h
라이브러리 Crypt32.lib
DLL Crypt32.dll

추가 정보

OID 지원 함수