nl:: Inet:: AsyncDNSResolverSockets

#include <src/inet/AsyncDNSResolverSockets.h>

এটি InetLayer- এর একটি অভ্যন্তরীণ শ্রেণী যা InetLayer- এ অ্যাসিঙ্ক্রোনাস ডোমেন নেম সিস্টেম (DNS) রেজোলিউশনের জন্য সহায়ক API প্রদান করে।

সারাংশ

অ্যাপ্লিকেশন স্তরের জন্য কোন পাবলিক ইন্টারফেস উপলব্ধ নেই।

পাবলিক ফাংশন

Cancel ( DNSResolver & resolver)
একটি অসামান্য DNS ক্যোয়ারী বাতিল করুন যা এখনও সক্রিয় থাকতে পারে।
EnqueueRequest ( DNSResolver & resolver)
একটি নির্দিষ্ট হোস্টনামের অ্যাসিঙ্ক্রোনাস আইপি অ্যাড্রেস রেজোলিউশনের জন্য একটি DNSResolver অবজেক্ট সারিবদ্ধ করুন।
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 ক্লাসের সুস্পষ্ট ডিনিটিয়ালাইজার এবং এটি থ্রেডগুলি বন্ধ করার এবং মিউটেক্স এবং সেমাফোর ভেরিয়েবলগুলিকে ধ্বংস করার যত্ন নেয়।

পাবলিক ফাংশন

বাতিল করুন

INET_ERROR Cancel(
  DNSResolver & resolver
)

একটি অসামান্য DNS ক্যোয়ারী বাতিল করুন যা এখনও সক্রিয় থাকতে পারে।

বিস্তারিত
পরামিতি
[in] resolver
DNSResolver অবজেক্টের একটি রেফারেন্স।

EnqueueRequest

INET_ERROR EnqueueRequest(
  DNSResolver & resolver
)

একটি নির্দিষ্ট হোস্টনামের অ্যাসিঙ্ক্রোনাস আইপি অ্যাড্রেস রেজোলিউশনের জন্য একটি DNSResolver অবজেক্ট সারিবদ্ধ করুন।

বিস্তারিত
পরামিতি
[in] resolver
DNSResolver অবজেক্টের একটি রেফারেন্স।
রিটার্ন মান
INET_NO_ERROR
যদি একটি DNS অনুরোধ সফলভাবে সারিবদ্ধ হয়।
INET_ERROR_NO_MEMORY
যদি Inet স্তর সমাধানকারী পুল পূর্ণ হয়।
other
উপযুক্ত POSIX নেটওয়ার্ক বা OS ত্রুটি।

ইনিট

INET_ERROR Init(
  InetLayer *inet
)

AsynchronousDNSResolverSockets ক্লাসের জন্য সুস্পষ্ট ইনিশিয়ালাইজার।

এটি মিউটেক্স এবং সেমাফোর ভেরিয়েবল শুরু করে এবং অ্যাসিঙ্ক্রোনাস ডিএনএস রেজোলিউশন পরিচালনার জন্য থ্রেড তৈরি করে।

বিস্তারিত
পরামিতি
[in] aInet
InetLayer অবজেক্টের একটি পয়েন্টার।
রিটার্ন মান
INET_NO_ERROR
যদি সূচনা সফল হয়।
other
উপযুক্ত POSIX নেটওয়ার্ক বা OS ত্রুটি।

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
একটি সি স্ট্রিং-এর একটি পয়েন্টার যা হোস্টের নামের প্রতিনিধিত্ব করে।
[in] hostNameLen
হোস্ট নামের স্ট্রিং দৈর্ঘ্য।
[in] options
হোস্ট নাম ঠিকানা রেজোলিউশন কিভাবে সঞ্চালিত হয় তা নিয়ন্ত্রণ করে একটি পূর্ণসংখ্যা মান। মানগুলি #DNSOptions গণনা থেকে নেওয়া হয়েছে।
[in] maxAddrs
DNS সারণিতে সংরক্ষণ করার জন্য সর্বাধিক সংখ্যক ঠিকানা।
[in] addrArray
DNS টেবিলের একটি পয়েন্টার।
[in] onComplete
একটি DNS অনুরোধ সম্পূর্ণ হলে কলব্যাক ফাংশনের একটি পয়েন্টার৷
[in] appState
একটি DNS অনুরোধ সম্পূর্ণ হলে onComplete-এ পাস করার জন্য আবেদনের অবস্থার একটি পয়েন্টার।
রিটার্ন মান
INET_NO_ERROR
যদি একটি DNS অনুরোধ সফলভাবে পরিচালনা করা হয়।

শাটডাউন

INET_ERROR Shutdown(
  void
)

এটি AsyncDNSResolverSockets ক্লাসের সুস্পষ্ট ডিনিটিয়ালাইজার এবং এটি থ্রেডগুলি বন্ধ করার এবং মিউটেক্স এবং সেমাফোর ভেরিয়েবলগুলিকে ধ্বংস করার যত্ন নেয়।

বিস্তারিত
রিটার্ন মান
INET_NO_ERROR
যদি শাটডাউন সফল হয়।
other
উপযুক্ত POSIX নেটওয়ার্ক বা OS ত্রুটি।