nl:: اینت:: AsyncDNSResolverSockets

#include <src/inet/AsyncDNSResolverSockets.h>

این یک کلاس داخلی برای InetLayer است که API های کمکی را برای وضوح سیستم نام دامنه ناهمزمان (DNS) در InetLayer ارائه می دهد.

خلاصه

هیچ رابط عمومی برای لایه برنامه موجود نیست.

توابع عمومی

Cancel ( DNSResolver & resolver)
یک جستار DNS برجسته را که ممکن است هنوز فعال باشد لغو کنید.
EnqueueRequest ( DNSResolver & resolver)
یک شی DNSResolver را برای وضوح آدرس IP ناهمزمان نام میزبان مشخص شده در صف قرار دهید.
Init ( InetLayer *inet)
مقداردهی اولیه صریح برای کلاس AsynchronousDNSResolverSockets.
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 است و از بستن رشته ها و از بین بردن متغیرهای mutex و semaphore مراقبت می کند.

توابع عمومی

لغو کنید

INET_ERROR Cancel(
  DNSResolver & resolver
)

یک جستار DNS برجسته را که ممکن است هنوز فعال باشد لغو کنید.

جزئیات
مولفه های
[in] resolver
ارجاع به شی DNSResolver .

EnqueueRequest

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
)

مقداردهی اولیه صریح برای کلاس AsynchronousDNSResolverSockets.

این متغیرهای mutex و semaphore را مقداردهی اولیه می‌کند و رشته‌هایی را برای مدیریت وضوح DNS ناهمزمان ایجاد می‌کند.

جزئیات
مولفه های
[in] aInet
یک اشاره گر به شی InetLayer .
ارزش های بازگشتی
INET_NO_ERROR
در صورت موفقیت آمیز بودن مقداردهی اولیه
other
خطای مناسب شبکه POSIX یا سیستم عامل.

آماده DNSResolver

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 است و از بستن رشته ها و از بین بردن متغیرهای mutex و semaphore مراقبت می کند.

جزئیات
ارزش های بازگشتی
INET_NO_ERROR
در صورت موفقیت آمیز بودن خاموش شدن
other
خطای مناسب شبکه POSIX یا سیستم عامل.