DNS - 플랫폼

이 모듈에는 재귀 DNS 쿼리를 업스트림 DNS 서버로 전송하기 위한 플랫폼 추상화가 포함되어 있습니다.

요약

Typedef

otPlatDnsUpstreamQuery typedef
이 불투명 유형은 업스트림 DNS 쿼리 트랜잭션을 나타냅니다.

함수

otPlatDnsCancelUpstreamQuery(otInstance *aInstance, otPlatDnsUpstreamQuery *aTxn)
void
업스트림 쿼리의 트랜잭션을 취소합니다.
otPlatDnsStartUpstreamQuery(otInstance *aInstance, otPlatDnsUpstreamQuery *aTxn, const otMessage *aQuery)
void
업스트림 쿼리 트랜잭션을 시작합니다.
otPlatDnsUpstreamQueryDone(otInstance *aInstance, otPlatDnsUpstreamQuery *aTxn, otMessage *aResponse)
void
플랫폼은 이 함수를 호출하여 DNS 쿼리를 완료합니다.

Typedef

otPlatDnsUpstreamQuery

struct otPlatDnsUpstreamQuery otPlatDnsUpstreamQuery

이 불투명 유형은 업스트림 DNS 쿼리 트랜잭션을 나타냅니다.

함수

otPlatDnsCancelUpstreamQuery

void otPlatDnsCancelUpstreamQuery(
  otInstance *aInstance,
  otPlatDnsUpstreamQuery *aTxn
)

업스트림 쿼리의 트랜잭션을 취소합니다.

플랫폼은 otPlatDnsUpstreamQueryDone를 호출하여 리소스를 해제해야 합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스 구조
[in] aTxn
불투명한 DNS 쿼리 트랜잭션 객체에 대한 포인터입니다.

otPlatDnsStartUpstreamQuery

void otPlatDnsStartUpstreamQuery(
  otInstance *aInstance,
  otPlatDnsUpstreamQuery *aTxn,
  const otMessage *aQuery
)

업스트림 쿼리 트랜잭션을 시작합니다.

  • 성공 사례 (및 DNS 프로토콜 메시지로 표시되는 오류)는 플랫폼은 otPlatDnsUpstreamQueryDone를 호출해야 합니다.
  • OpenThread 코어는 otPlatDnsCancelUpstreamQuery를 호출하여 쿼리 트랜잭션 (시간 초과될 수 있음)을 취소할 수 있습니다. 플랫폼은 취소된 트랜잭션에서 otPlatDnsUpstreamQueryDone를 호출하면 안 됩니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스 구조
[in] aTxn
불투명한 DNS 쿼리 트랜잭션 객체에 대한 포인터입니다.
[in] aQuery
업스트림 DNS 서버로 전송되어야 하는 DNS 페이로드의 메시지 버퍼입니다.

otPlatDnsUpstreamQueryDone

void otPlatDnsUpstreamQueryDone(
  otInstance *aInstance,
  otPlatDnsUpstreamQuery *aTxn,
  otMessage *aResponse
)

플랫폼은 이 함수를 호출하여 DNS 쿼리를 완료합니다.

트랜잭션이 해제되므로 플랫폼은 동일한 트랜잭션을 두 번 호출해서는 안 됩니다. 이 함수는 aResponse의 소유권을 OpenThread 스택에 전달합니다.

플랫폼은 nullptr을 전달하여 응답 없이 트랜잭션을 종료할 수 있습니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스 구조
[in] aTxn
불투명한 DNS 쿼리 트랜잭션 객체에 대한 포인터입니다.
[in] aResponse
DNS 응답 페이로드의 메시지 버퍼 또는 응답 없이 트랜잭션을 닫는 nullptr.

자료

OpenThread API 참조 주제는 GitHub에서 제공되는 소스 코드에서 비롯됩니다. 자세한 내용을 알아보거나 문서에 참여하려면 리소스를 참고하세요.