nl::Inet::AsyncDNSResolverSockets

#include <src/inet/AsyncDNSResolverSockets.h>

นี่คือคลาสภายในไปยัง InetLayer ที่มี API ตัวช่วยสําหรับความละเอียดของระบบชื่อโดเมนแบบอะซิงโครนัส (DNS) ใน InetLayer

สรุป

ไม่มีอินเทอร์เฟซสาธารณะสําหรับเลเยอร์แอปพลิเคชัน

ฟังก์ชันสาธารณะ

Cancel(DNSResolver & resolver)
ยกเลิกคําขอ DNS คงค้างซึ่งอาจจะยังใช้งานได้
EnqueueRequest(DNSResolver & resolver)
เพิ่มออบเจ็กต์ DNSResolver ให้กับความละเอียดของที่อยู่ IP แบบอะซิงโครนัสของชื่อโฮสต์ที่ระบุ
Init(InetLayer *inet)
เงื่อนไขเริ่มต้นที่ชัดเจนสําหรับคลาส AsแบบอะซิงโครนัสDNSResolverSockets
PrepareDNSResolver(DNSResolver & resolver, const char *hostName, uint16_t hostNameLen, uint8_t options, uint8_t maxAddrs, IPAddress *addrArray, DNSResolver::OnResolveCompleteFunct onComplete, void *appState)
วิธีนี้เตรียมออบเจ็กต์ DNSResolver ก่อนความละเอียดแบบอะซิงโครนัส
Shutdown(void)
นี่คือตัวฆ่าเชื้อโรคที่ชัดเจนของคลาส AsyncDNSResolverSockets และมีหน้าที่ปิดเทรดและทําลายตัวแปร Slatex และ Sesehore

ฟังก์ชันสาธารณะ

ยกเลิก

INET_ERROR Cancel(
  DNSResolver & resolver
)

ยกเลิกคําขอ DNS คงค้างซึ่งอาจจะยังใช้งานได้

รายละเอียด
พารามิเตอร์
[in] resolver
การอ้างอิงถึงออบเจ็กต์ DNSResolver

ส่งคําขอ

INET_ERROR EnqueueRequest(
  DNSResolver & resolver
)

เพิ่มออบเจ็กต์ DNSResolver ให้กับความละเอียดของที่อยู่ IP แบบอะซิงโครนัสของชื่อโฮสต์ที่ระบุ

รายละเอียด
พารามิเตอร์
[in] resolver
การอ้างอิงถึงออบเจ็กต์ DNSResolver
แสดงผลค่า
INET_NO_ERROR
หากคําขอ DNS อยู่ในคิวเรียบร้อยแล้ว
INET_ERROR_NO_MEMORY
หากพูลตัวแก้ไขเลเยอร์ Inet เต็ม
other
ข้อผิดพลาดเกี่ยวกับเครือข่าย POSIX หรือระบบปฏิบัติการที่เหมาะสม

เริ่ม

INET_ERROR Init(
  InetLayer *inet
)

เงื่อนไขเริ่มต้นที่ชัดเจนสําหรับคลาส AsแบบอะซิงโครนัสDNSResolverSockets

การทําเช่นนี้จะเป็นการเริ่มต้นตัวแปร Slatex และ Sesehore และสร้างชุดข้อความเพื่อจัดการการแปลง DNS แบบอะซิงโครนัส

รายละเอียด
พารามิเตอร์
[in] aInet
ตัวชี้ไปยังออบเจ็กต์ InetLayer
แสดงผลค่า
INET_NO_ERROR
หากการเริ่มต้นสําเร็จ
other
ข้อผิดพลาดเกี่ยวกับเครือข่าย POSIX หรือระบบปฏิบัติการที่เหมาะสม

ResolveDNSResolver

INET_ERROR PrepareDNSResolver(
  DNSResolver & resolver,
  const char *hostName,
  uint16_t hostNameLen,
  uint8_t options,
  uint8_t maxAddrs,
  IPAddress *addrArray,
  DNSResolver::OnResolveCompleteFunct onComplete,
  void *appState
)

วิธีนี้เตรียมออบเจ็กต์ DNSResolver ก่อนความละเอียดแบบอะซิงโครนัส

รายละเอียด
พารามิเตอร์
[in] resolver
การอ้างอิงออบเจ็กต์ DNSResolver ที่จัดสรร
[in] hostName
ตัวชี้ไปยังสตริง C ที่แสดงถึงชื่อโฮสต์ที่จะค้นหา
[in] hostNameLen
ความยาวของสตริงในชื่อโฮสต์
[in] options
ค่าที่เป็นจํานวนเต็มที่ควบคุมประสิทธิภาพการทํางานของที่อยู่ชื่อโฮสต์ ค่ามาจากการแจกแจง #DNSOptions
[in] maxAddrs
จํานวนที่อยู่สูงสุดที่จะจัดเก็บในตาราง DNS
[in] addrArray
ตัวชี้ไปยังตาราง DNS
[in] onComplete
ตัวชี้ไปยังฟังก์ชันเรียกกลับเมื่อคําขอ DNS เสร็จสมบูรณ์
[in] appState
ตัวชี้ไปยังสถานะแอปพลิเคชันเพื่อส่งไปยัง onComplete เมื่อคําขอ DNS เสร็จสมบูรณ์
แสดงผลค่า
INET_NO_ERROR
หากจัดการคําขอ DNS สําเร็จ

ปิดการทำงาน

INET_ERROR Shutdown(
  void
)

นี่คือตัวฆ่าเชื้อโรคที่ชัดเจนของคลาส AsyncDNSResolverSockets และมีหน้าที่ปิดเทรดและทําลายตัวแปร Slatex และ Sesehore

รายละเอียด
แสดงผลค่า
INET_NO_ERROR
หากปิดสําเร็จ
other
ข้อผิดพลาดเกี่ยวกับเครือข่าย POSIX หรือระบบปฏิบัติการที่เหมาะสม