nl:: Inet:: InetLayer

#include <src/inet/InetLayer.h>

এটি একটি একক থ্রেডের জন্য টাইমার, ডোমেন নেম সিস্টেম (DNS) রেজোলিউশন, TCP নেটওয়ার্ক পরিবহন, UDP নেটওয়ার্ক পরিবহন এবং কাঁচা নেটওয়ার্ক পরিবহন সহ ইন্টারনেট পরিষেবাগুলিতে অ্যাক্সেস সরবরাহ করে।

সারসংক্ষেপ

BSD/POSIX সকেটের জন্য, ইভেন্ট প্রস্তুতির বিজ্ঞপ্তি ফাইল বর্ণনাকারীর মাধ্যমে পরিচালনা করা হয় এবং প্ল্যাটফর্ম অভিযোজনে একটি ঐতিহ্যগত পোল/নির্বাচন বাস্তবায়ন।

LwIP-এর জন্য, ইভেন্ট/বার্তা এবং প্ল্যাটফর্ম- এবং ইভেন্ট/বার্তা সিস্টেমের জন্য সিস্টেম-নির্দিষ্ট হুকগুলির মাধ্যমে ইভেন্ট প্রস্তুতির বিজ্ঞপ্তিটি পরিচালনা করা হয়।

কনস্ট্রাক্টর এবং ডেস্ট্রাক্টর

InetLayer (void)
এটি হল InetLayer ডিফল্ট কনস্ট্রাক্টর।

পাবলিক প্রকার

@5 {
kState_NotInitialized = 0,
kState_Initialized = 1,
kState_ShutdownInProgress = 2
}
enum
InetLayer অবজেক্টের বর্তমান অবস্থা।
DNSResolveCompleteFunct typedef
DNSResolver::OnResolveCompleteFunct

পাবলিক বৈশিষ্ট্য

State
enum nl::Inet::InetLayer::@5
InetLayer অবজেক্টের বর্তমান অবস্থা।

পাবলিক স্ট্যাটিক বৈশিষ্ট্য

sInetEventHandlerDelegate

পাবলিক ফাংশন

CanEnqueueDroppableEvent (void)
bool
CancelResolveHostAddress (DNSResolveCompleteFunct onComplete, void *appState)
void
এখনও সক্রিয় থাকতে পারে এমন কোনও অসামান্য DNS ক্যোয়ারী বাতিল করুন (একটি মিলে যাওয়া কলব্যাক এবং অ্যাপ্লিকেশন অবস্থার জন্য)।
DroppableEventDequeued (void)
void
GetInterfaceFromAddr (const IPAddress & addr, InterfaceId & intfId)
নির্দিষ্ট আইপি ঠিকানার জন্য ইন্টারফেস শনাক্তকারী পান।
GetLinkLocalAddr (InterfaceId link, IPAddress *llAddr)
একটি নির্দিষ্ট লিঙ্ক বা ইন্টারফেসের জন্য লিঙ্ক স্থানীয় IPv6 ঠিকানা পান।
GetPlatformData (void)
void *
এটি কোনো ক্লায়েন্ট-নির্দিষ্ট প্ল্যাটফর্ম তথ্য প্রদান করে, যদি এটি পূর্বে সেট করা থাকে।
HandleSelectResult (int selectRes, fd_set *readfds, fd_set *writefds, fd_set *exceptfds)
void
একটি নির্বাচিত কল থেকে I/O হ্যান্ডেল করুন।
Init ( Weave::System::Layer & aSystemLayer, void *aContext)
এটি হল InetLayer স্পষ্ট ইনিশিয়ালাইজার।
InitQueueLimiter (void)
MatchLocalIPv6Subnet (const IPAddress & addr)
bool
নির্দিষ্ট IPv6 ঠিকানা এবং স্থানীয়ভাবে কনফিগার করা IPv6 ঠিকানাগুলির মধ্যে একটি উপসর্গ মিল আছে কিনা তা পরীক্ষা করুন৷
NewRawEndPoint (IPVersion ipVer, IPProtocol ipProto, RawEndPoint **retEndPoint)
একটি নির্দিষ্ট IP সংস্করণ এবং প্রোটোকলের জন্য একটি নতুন RawEndPoint অবজেক্ট তৈরি করে।
NewTCPEndPoint ( TCPEndPoint **retEndPoint)
একটি নতুন TCPEndPoint অবজেক্ট তৈরি করে।
NewTunEndPoint ( TunEndPoint **retEndPoint)
একটি নতুন TunEndPoint অবজেক্ট তৈরি করে।
NewUDPEndPoint ( UDPEndPoint **retEndPoint)
একটি নতুন UDPEndPoint অবজেক্ট তৈরি করে।
PrepareSelect (int & nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval & sleepTime)
void
select() সাথে কাজ করার জন্য ফাইল বর্ণনাকারীর সেট প্রস্তুত করুন।
ResolveHostAddress (const char *hostName, uint16_t hostNameLen, uint8_t options, uint8_t maxAddrs, IPAddress *addrArray, DNSResolveCompleteFunct onComplete, void *appState)
একটি নির্দিষ্ট হোস্টনামের একটি আইপি ঠিকানা রেজোলিউশন সম্পাদন করুন।
ResolveHostAddress (const char *hostName, uint16_t hostNameLen, uint8_t maxAddrs, IPAddress *addrArray, DNSResolveCompleteFunct onComplete, void *appState)
একটি নির্দিষ্ট হোস্টনামের একটি আইপি ঠিকানা রেজোলিউশন সম্পাদন করুন।
ResolveHostAddress (const char *hostName, uint8_t maxAddrs, IPAddress *addrArray, DNSResolveCompleteFunct onComplete, void *appState)
একটি নির্দিষ্ট হোস্টনামের একটি আইপি ঠিকানা রেজোলিউশন সম্পাদন করুন।
SetPlatformData (void *aPlatformData)
void
এটি নির্দিষ্ট ক্লায়েন্ট-নির্দিষ্ট প্ল্যাটফর্ম ডেটাকে ক্লায়েন্ট প্ল্যাটফর্ম দ্বারা পরবর্তী পুনরুদ্ধারের উদাহরণে সেট করে।
Shutdown (void)
এটি হল InetLayer সুস্পষ্ট deinitializer এবং একটি তাত্ক্ষণিক InetLayer উদাহরণ নিষ্পত্তি করার আগে কল করা উচিত৷
SystemLayer (void) const

পাবলিক স্ট্যাটিক ফাংশন

HandleInetLayerEvent ( Weave::System::Object & aTarget, Weave::System::EventType aEventType, uintptr_t aArgument)
Weave::System::Error
IsDroppableEvent (Weave::System::EventType aType)
bool
UpdateSnapshot ( nl::Weave::System::Stats::Snapshot & aSnapshot)
void

পাবলিক প্রকার

@5

 @5

InetLayer অবজেক্টের বর্তমান অবস্থা।

বৈশিষ্ট্য
kState_Initialized

প্রাথমিক অবস্থা।

kState_NotInitialized

প্রাথমিক অবস্থায় নেই।

kState_ShutdownInProgress

রাজ্য যেখানে শাটডাউন ট্রিগার করা হয়েছে৷

DNSResolveCompleteFunct

DNSResolver::OnResolveCompleteFunct DNSResolveCompleteFunct

পাবলিক বৈশিষ্ট্য

অবস্থা

enum nl::Inet::InetLayer::@5 State

InetLayer অবজেক্টের বর্তমান অবস্থা।

[শুধু পড়ার জন্য] বর্তমান অবস্থা।

পাবলিক স্ট্যাটিক বৈশিষ্ট্য

sInetEventHandlerDelegate

Weave::System::LwIPEventHandlerDelegate sInetEventHandlerDelegate

পাবলিক ফাংশন

CanEnqueueDroppable ইভেন্ট

bool CanEnqueueDroppableEvent(
  void
)

CancelResolveHostAddress

void CancelResolveHostAddress(
  DNSResolveCompleteFunct onComplete,
  void *appState
)

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

বিস্তারিত
পরামিতি
[in] onComplete
একটি DNS অনুরোধ সম্পূর্ণ হলে কলব্যাক ফাংশনের একটি পয়েন্টার৷
[in] appState
আর্গুমেন্ট হিসাবে কলব্যাক ফাংশনে পাস করার জন্য একটি অ্যাপ্লিকেশন স্টেট অবজেক্টের একটি পয়েন্টার।

DroppableEventDequeued

void DroppableEventDequeued(
  void
)

GetInterfaceFromAddr

INET_ERROR GetInterfaceFromAddr(
  const IPAddress & addr,
  InterfaceId & intfId
)

নির্দিষ্ট আইপি ঠিকানার জন্য ইন্টারফেস শনাক্তকারী পান।

যদি ইন্টারফেস শনাক্তকারী প্রাপ্ত করা না যায় তবে এটি INET_NULL_INTERFACEID এ সেট করা হয়।

বিস্তারিত
পরামিতি
[in] addr
আইপিএড্রেস অবজেক্টের একটি রেফারেন্স।
[out] intfId
ইন্টারফেসআইডি অবজেক্টের একটি রেফারেন্স।
রিটার্নস
INET_NO_ERROR নিঃশর্তভাবে।

GetLinkLocalAddr

INET_ERROR GetLinkLocalAddr(
  InterfaceId link,
  IPAddress *llAddr
)

একটি নির্দিষ্ট লিঙ্ক বা ইন্টারফেসের জন্য লিঙ্ক স্থানীয় IPv6 ঠিকানা পান।

বিস্তারিত
পরামিতি
[in] link
যে ইন্টারফেসের জন্য লিঙ্ক স্থানীয় IPv6 ঠিকানা চাওয়া হচ্ছে।
[out] llAddr
লিঙ্কের জন্য স্থানীয় IPv6 ঠিকানা।
রিটার্ন মান
INET_ERROR_NOT_IMPLEMENTED
যদি IPv6 সমর্থিত না হয়।
INET_ERROR_BAD_ARGS
লিঙ্ক স্থানীয় ঠিকানা NULL হলে.
INET_ERROR_ADDRESS_NOT_FOUND
যদি লিঙ্কে কোন ঠিকানা কনফিগার করা না থাকে।
INET_NO_ERROR
সাফল্যের উপর।

GetPlatformData

void * GetPlatformData(
  void
)

এটি কোনো ক্লায়েন্ট-নির্দিষ্ট প্ল্যাটফর্ম তথ্য প্রদান করে, যদি এটি পূর্বে সেট করা থাকে।

বিস্তারিত
রিটার্নস
ক্লায়েন্ট-নির্দিষ্ট প্ল্যাটফর্ম ডেটা, যদি আগে সেট করা থাকে; অন্যথায়, NULL.

হ্যান্ডেল সিলেক্ট রেজাল্ট

void HandleSelectResult(
  int selectRes,
  fd_set *readfds,
  fd_set *writefds,
  fd_set *exceptfds
)

একটি নির্বাচিত কল থেকে I/O হ্যান্ডেল করুন।

এই পদ্ধতিটি প্রতিটি সক্রিয় এন্ডপয়েন্টে মুলতুবি I/O ইভেন্ট নিবন্ধন করে এবং তারপর সেই শেষ পয়েন্টগুলির জন্য সংশ্লিষ্ট I/O হ্যান্ডলিং ফাংশনগুলিকে আহ্বান করে।

বিস্তারিত
পরামিতি
[in] selectRes
সিলেক্ট কলের রিটার্ন মান।
[in] readfds
পঠিত ফাইল বর্ণনাকারীর সেটের একটি পয়েন্টার।
[in] writefds
লেখার ফাইল বর্ণনাকারীর সেটের একটি পয়েন্টার।
[in] exceptfds
ত্রুটি সহ ফাইল বর্ণনাকারীর সেটের একটি পয়েন্টার।

InetLayer

 InetLayer(
  void
)

এটি হল InetLayer ডিফল্ট কনস্ট্রাক্টর।

এটি কিছু মৌলিক ডেটা সদস্য প্রাথমিককরণ সঞ্চালন করে; যাইহোক, যেহেতু InetLayer একটি সুস্পষ্ট ইনিশিয়ালাইজার ডিজাইন প্যাটার্ন অনুসরণ করে, তাই অবজেক্ট ব্যবহার করার আগে InetLayer::Init পদ্ধতিটি সফলভাবে কল করা আবশ্যক।

এটা

INET_ERROR Init(
  Weave::System::Layer & aSystemLayer,
  void *aContext
)

এটি হল InetLayer স্পষ্ট ইনিশিয়ালাইজার।

InetLayer ব্যবহার করার আগে এটিকে অবশ্যই কল করতে হবে এবং সফলভাবে সম্পূর্ণ করতে হবে।

কলকারী একটি ঐচ্ছিক প্রসঙ্গ যুক্তি প্রদান করতে পারে যা যেকোনো প্ল্যাটফর্ম-নির্দিষ্ট হুক ফাংশনের মাধ্যমে ফেরত পাঠানো হবে। LwIP-ভিত্তিক অভিযোজনগুলির জন্য, এটি সাধারণত InetLayer উদাহরণের সাথে যুক্ত ইভেন্ট সারির একটি নির্দেশক হবে।

প্ল্যাটফর্মগুলি তাদের প্ল্যাটফর্ম-নির্দিষ্ট কনফিগারেশন শিরোনামে INET_CONFIG_WILL_OVERRIDE_PLATFORM_XTOR_FUNCS জাহির করতে এবং প্ল্যাটফর্ম::InetLayer::WillInit এবং Platform::InetLayer::DidInit হুকগুলিকে প্ল্যাটফর্ম-নির্দিষ্ট ডেটা লেয়ারে কাস্টমাইজেশন বা কাস্টমাইজেশনকে প্রভাবিত করতে সক্ষম করতে বেছে নিতে পারে।

বিস্তারিত
পরামিতি
[in] aSystemLayer
ওয়েভ সিস্টেম লেয়ারের একটি প্রয়োজনীয় দৃষ্টান্ত ইতিমধ্যেই সফলভাবে শুরু হয়েছে।
[in] aContext
একটি ঐচ্ছিক প্রসঙ্গ আর্গুমেন্ট যা যে কোনো প্ল্যাটফর্ম-নির্দিষ্ট হুক ফাংশনের মাধ্যমে কলারের কাছে ফেরত পাঠানো হবে।
রিটার্ন মান
INET_ERROR_INCORRECT_STATE
যদি InetLayer একটি ভুল অবস্থায় থাকে।
INET_ERROR_NO_MEMORY
যদি একটি নতুন টাইমারের জন্য এই অনুরোধের জন্য InetLayer- এর রিসোর্স ফুরিয়ে যায়।
other
প্ল্যাটফর্ম-নির্দিষ্ট ত্রুটি সূচনা ব্যর্থতার কারণ নির্দেশ করে।
INET_NO_ERROR
সাফল্যের উপর।

InitQueueLimeter

INET_ERROR InitQueueLimiter(
  void
)

MatchLocalIPv6Subnet

bool MatchLocalIPv6Subnet(
  const IPAddress & addr
)

নির্দিষ্ট IPv6 ঠিকানা এবং স্থানীয়ভাবে কনফিগার করা IPv6 ঠিকানাগুলির মধ্যে একটি উপসর্গ মিল আছে কিনা তা পরীক্ষা করুন৷

বিস্তারিত
পরামিতি
[in] addr
প্রিফিক্স-ম্যাচ চেক করার জন্য IPv6 ঠিকানা।
রিটার্নস
সত্য যদি একটি সফল মিল পাওয়া যায়, অন্যথায় মিথ্যা।

NewRawEndPoint

INET_ERROR NewRawEndPoint(
  IPVersion ipVer,
  IPProtocol ipProto,
  RawEndPoint **retEndPoint
)

একটি নির্দিষ্ট IP সংস্করণ এবং প্রোটোকলের জন্য একটি নতুন RawEndPoint অবজেক্ট তৈরি করে।

বিস্তারিত
পরামিতি
[in] ipVer
IPv4 বা IPv6।
[in] ipProto
IP পরিবারের মধ্যে একটি প্রোটোকল (যেমন, ICMPv4 বা ICMPv6)।
[in,out] retEndPoint
RawEndPoint অবজেক্টের একটি পয়েন্টারের একটি পয়েন্টার যা অবজেক্ট তৈরির সমাপ্তির পর একটি রিটার্ন প্যারামিটার। *সৃষ্টি ব্যর্থ হলে retEndPoint NULL হয়।
রিটার্ন মান
INET_ERROR_INCORRECT_STATE
যদি InetLayer অবজেক্টটি আরম্ভ করা না হয়।
INET_ERROR_NO_ENDPOINTS
যদি InetLayer RawEndPoint পুল পূর্ণ হয় এবং কোন নতুন এন্ডপয়েন্ট তৈরি করা যাবে না।
INET_NO_ERROR
সাফল্যের উপর।

নিউটিসিপিএন্ডপয়েন্ট

INET_ERROR NewTCPEndPoint(
  TCPEndPoint **retEndPoint
)

একটি নতুন TCPEndPoint অবজেক্ট তৈরি করে।

বিস্তারিত
পরামিতি
[in,out] retEndPoint
TCPEndPoint অবজেক্টের একটি পয়েন্টারের একটি পয়েন্টার যা অবজেক্ট তৈরির সমাপ্তির পর একটি রিটার্ন প্যারামিটার। *সৃষ্টি ব্যর্থ হলে retEndPoint NULL হয়।
রিটার্ন মান
INET_ERROR_INCORRECT_STATE
যদি InetLayer অবজেক্টটি আরম্ভ করা না হয়।
INET_ERROR_NO_ENDPOINTS
যদি InetLayer TCPEndPoint পুল পূর্ণ হয় এবং কোন নতুন এন্ডপয়েন্ট তৈরি করা যাবে না।
INET_NO_ERROR
সাফল্যের উপর।

নিউটিউনএন্ডপয়েন্ট

INET_ERROR NewTunEndPoint(
  TunEndPoint **retEndPoint
)

একটি নতুন TunEndPoint অবজেক্ট তৈরি করে।

বিস্তারিত
পরামিতি
[in,out] retEndPoint
TunEndPoint অবজেক্টের একটি পয়েন্টারের একটি পয়েন্টার যা অবজেক্ট তৈরির সমাপ্তির পর একটি রিটার্ন প্যারামিটার। *সৃষ্টি ব্যর্থ হলে retEndPoint NULL হয়।
রিটার্ন মান
INET_ERROR_INCORRECT_STATE
যদি InetLayer অবজেক্টটি আরম্ভ করা না হয়।
INET_ERROR_NO_ENDPOINTS
যদি InetLayer TunEndPoint পুল পূর্ণ হয় এবং কোন নতুন তৈরি করা যাবে না।
INET_NO_ERROR
সাফল্যের উপর।

নিউইউডিপিএন্ডপয়েন্ট

INET_ERROR NewUDPEndPoint(
  UDPEndPoint **retEndPoint
)

একটি নতুন UDPEndPoint অবজেক্ট তৈরি করে।

বিস্তারিত
পরামিতি
[in,out] retEndPoint
UDPEndPoint অবজেক্টের একটি পয়েন্টার যা অবজেক্ট তৈরির সমাপ্তির পর একটি রিটার্ন প্যারামিটার। *সৃষ্টি ব্যর্থ হলে retEndPoint NULL হয়।
রিটার্ন মান
INET_ERROR_INCORRECT_STATE
যদি InetLayer অবজেক্টটি আরম্ভ করা না হয়।
INET_ERROR_NO_ENDPOINTS
যদি InetLayer UDPEndPoint পুল পূর্ণ হয় এবং কোন নতুন এন্ডপয়েন্ট তৈরি করা যাবে না।
INET_NO_ERROR
সাফল্যের উপর।

PrepareSelect

void PrepareSelect(
  int & nfds,
  fd_set *readfds,
  fd_set *writefds,
  fd_set *exceptfds,
  struct timeval & sleepTime
)

select() সাথে কাজ করার জন্য ফাইল বর্ণনাকারীর সেট প্রস্তুত করুন।

বিস্তারিত
পরামিতি
[out] nfds
ফাইল বর্ণনাকারী সেটে ফাইল বর্ণনাকারীর পরিসর।
[in] readfds
পঠনযোগ্য ফাইল বর্ণনাকারীর সেটের একটি পয়েন্টার।
[in] writefds
লিখনযোগ্য ফাইল বর্ণনাকারীর সেটের একটি পয়েন্টার।
[in] exceptfds
ত্রুটি সহ ফাইল বর্ণনাকারীর সেটের একটি পয়েন্টার।
[in] sleepTimeTV
নির্বাচন কতক্ষণ ঘুমানো উচিত তা নির্দিষ্ট করে একটি কাঠামোর একটি পয়েন্টার৷

ResolveHostAddress

INET_ERROR ResolveHostAddress(
  const char *hostName,
  uint16_t hostNameLen,
  uint8_t options,
  uint8_t maxAddrs,
  IPAddress *addrArray,
  DNSResolveCompleteFunct onComplete,
  void *appState
)

একটি নির্দিষ্ট হোস্টনামের একটি আইপি ঠিকানা রেজোলিউশন সম্পাদন করুন।

বিস্তারিত
পরামিতি
[in] hostName
একটি অ NULL-টার্মিনেটেড C স্ট্রিং-এর একটি পয়েন্টার যা অনুসন্ধান করার জন্য হোস্টের নাম উপস্থাপন করে।
[in] hostNameLen
হোস্ট নামের স্ট্রিং দৈর্ঘ্য।
[in] options
হোস্টের নামের রেজোলিউশন কীভাবে সঞ্চালিত হয় তা নিয়ন্ত্রণ করে একটি পূর্ণসংখ্যা মান।
                    Value should be one of the address family values from the
                    #DNSOptions enumeration:

                    #kDNSOption_AddrFamily_Any
                    #kDNSOption_AddrFamily_IPv4Only
                    #kDNSOption_AddrFamily_IPv6Only
                    #kDNSOption_AddrFamily_IPv4Preferred
                    #kDNSOption_AddrFamily_IPv6Preferred
[in] maxAddrs
DNS সারণিতে সংরক্ষণ করার জন্য সর্বাধিক সংখ্যক ঠিকানা।
[in] addrArray
DNS টেবিলের একটি পয়েন্টার।
[in] onComplete
একটি DNS অনুরোধ সম্পূর্ণ হলে কলব্যাক ফাংশনের একটি পয়েন্টার৷
[in] appState
একটি DNS অনুরোধ সম্পূর্ণ হলে onComplete-এ পাস করার জন্য আবেদনের অবস্থার একটি পয়েন্টার।
রিটার্ন মান
INET_NO_ERROR
যদি একটি DNS অনুরোধ সফলভাবে পরিচালনা করা হয়।
INET_ERROR_NO_MEMORY
যদি Inet স্তর সমাধানকারী পুল পূর্ণ হয়।
INET_ERROR_HOST_NAME_TOO_LONG
যদি একটি অনুরোধ করা হোস্ট নাম খুব দীর্ঘ হয়.
INET_ERROR_HOST_NOT_FOUND
যদি একটি অনুরোধ হোস্ট নাম একটি ঠিকানা সমাধান করা যাবে না.
INET_ERROR_DNS_TRY_AGAIN
যদি একটি নাম সার্ভার একটি অস্থায়ী ব্যর্থতার ইঙ্গিত ফেরত দেয়; পরে আবার চেষ্টা করুন
INET_ERROR_DNS_NO_RECOVERY
যদি একটি নাম সার্ভার একটি অপুনরুদ্ধারযোগ্য ত্রুটি ফিরিয়ে দেয়।
INET_ERROR_NOT_IMPLEMENTED
যদি অন্তর্নিহিত প্ল্যাটফর্মে DNS রেজোলিউশন সক্রিয় না থাকে।
other
POSIX নেটওয়ার্ক বা OS ত্রুটি অন্তর্নিহিত DNS সমাধানকারী বাস্তবায়ন দ্বারা ফিরে এসেছে৷

ResolveHostAddress

INET_ERROR ResolveHostAddress(
  const char *hostName,
  uint16_t hostNameLen,
  uint8_t maxAddrs,
  IPAddress *addrArray,
  DNSResolveCompleteFunct onComplete,
  void *appState
)

একটি নির্দিষ্ট হোস্টনামের একটি আইপি ঠিকানা রেজোলিউশন সম্পাদন করুন।

বিস্তারিত
পরামিতি
[in] hostName
একটি অ NULL-টার্মিনেটেড C স্ট্রিং-এর একটি পয়েন্টার যা অনুসন্ধান করার জন্য হোস্টের নাম উপস্থাপন করে।
[in] hostNameLen
হোস্ট নামের স্ট্রিং দৈর্ঘ্য।
[in] maxAddrs
DNS সারণিতে সংরক্ষণ করার জন্য সর্বাধিক সংখ্যক ঠিকানা।
[in] addrArray
DNS টেবিলের একটি পয়েন্টার।
[in] onComplete
একটি DNS অনুরোধ সম্পূর্ণ হলে কলব্যাক ফাংশনের একটি পয়েন্টার৷
[in] appState
একটি DNS অনুরোধ সম্পূর্ণ হলে onComplete-এ পাস করার জন্য আবেদনের অবস্থার একটি পয়েন্টার।
রিটার্ন মান
INET_NO_ERROR
যদি একটি DNS অনুরোধ সফলভাবে পরিচালনা করা হয়।
INET_ERROR_NO_MEMORY
যদি Inet স্তর সমাধানকারী পুল পূর্ণ হয়।
INET_ERROR_HOST_NAME_TOO_LONG
যদি একটি অনুরোধ করা হোস্ট নাম খুব দীর্ঘ হয়.
INET_ERROR_HOST_NOT_FOUND
যদি একটি অনুরোধ হোস্ট নাম একটি ঠিকানা সমাধান করা যাবে না.
INET_ERROR_DNS_TRY_AGAIN
যদি একটি নাম সার্ভার একটি অস্থায়ী ব্যর্থতার ইঙ্গিত ফেরত দেয়; পরে আবার চেষ্টা করুন
INET_ERROR_DNS_NO_RECOVERY
যদি একটি নাম সার্ভার একটি অপুনরুদ্ধারযোগ্য ত্রুটি ফিরিয়ে দেয়।
INET_ERROR_NOT_IMPLEMENTED
যদি অন্তর্নিহিত প্ল্যাটফর্মে DNS রেজোলিউশন সক্রিয় না থাকে।
other
POSIX নেটওয়ার্ক বা OS ত্রুটি অন্তর্নিহিত DNS সমাধানকারী বাস্তবায়ন দ্বারা ফিরে এসেছে৷

ResolveHostAddress

INET_ERROR ResolveHostAddress(
  const char *hostName,
  uint8_t maxAddrs,
  IPAddress *addrArray,
  DNSResolveCompleteFunct onComplete,
  void *appState
)

একটি নির্দিষ্ট হোস্টনামের একটি আইপি ঠিকানা রেজোলিউশন সম্পাদন করুন।

বিস্তারিত
পরামিতি
[in] hostName
একটি NULL-টার্মিনেটেড C স্ট্রিং-এর একটি পয়েন্টার যা অনুসন্ধান করার জন্য হোস্ট নামের প্রতিনিধিত্ব করে।
[in] maxAddrs
DNS সারণিতে সংরক্ষণ করার জন্য সর্বাধিক সংখ্যক ঠিকানা।
[in] addrArray
DNS টেবিলের একটি পয়েন্টার।
[in] onComplete
একটি DNS অনুরোধ সম্পূর্ণ হলে কলব্যাক ফাংশনের একটি পয়েন্টার৷
[in] appState
একটি DNS অনুরোধ সম্পূর্ণ হলে onComplete-এ পাস করার জন্য আবেদনের অবস্থার একটি পয়েন্টার।
রিটার্ন মান
INET_NO_ERROR
যদি একটি DNS অনুরোধ সফলভাবে পরিচালনা করা হয়।
INET_ERROR_NO_MEMORY
যদি Inet স্তর সমাধানকারী পুল পূর্ণ হয়।
INET_ERROR_HOST_NAME_TOO_LONG
যদি একটি অনুরোধ করা হোস্ট নাম খুব দীর্ঘ হয়.
INET_ERROR_HOST_NOT_FOUND
যদি একটি অনুরোধ হোস্ট নাম একটি ঠিকানা সমাধান করা যাবে না.
INET_ERROR_DNS_TRY_AGAIN
যদি একটি নাম সার্ভার একটি অস্থায়ী ব্যর্থতার ইঙ্গিত ফেরত দেয়; পরে আবার চেষ্টা করুন
INET_ERROR_DNS_NO_RECOVERY
যদি একটি নাম সার্ভার একটি অপুনরুদ্ধারযোগ্য ত্রুটি ফিরিয়ে দেয়।
INET_ERROR_NOT_IMPLEMENTED
যদি অন্তর্নিহিত প্ল্যাটফর্মে DNS রেজোলিউশন সক্রিয় না থাকে।
other
POSIX নেটওয়ার্ক বা OS ত্রুটি অন্তর্নিহিত DNS সমাধানকারী বাস্তবায়ন দ্বারা ফিরে এসেছে৷

প্ল্যাটফর্ম ডেটা সেট করুন

void SetPlatformData(
  void *aPlatformData
)

এটি নির্দিষ্ট ক্লায়েন্ট-নির্দিষ্ট প্ল্যাটফর্ম ডেটাকে ক্লায়েন্ট প্ল্যাটফর্ম দ্বারা পরবর্তী পুনরুদ্ধারের উদাহরণে সেট করে।

বিস্তারিত
পরামিতি
[in] aPlatformData
সেট করার জন্য ক্লায়েন্ট-নির্দিষ্ট প্ল্যাটফর্ম ডেটা।

শাটডাউন

INET_ERROR Shutdown(
  void
)

এটি হল InetLayer সুস্পষ্ট deinitializer এবং একটি তাত্ক্ষণিক InetLayer উদাহরণ নিষ্পত্তি করার আগে কল করা উচিত৷

প্ল্যাটফর্মগুলি তাদের প্ল্যাটফর্ম-নির্দিষ্ট কনফিগারেশন শিরোনামে INET_CONFIG_WILL_OVERRIDE_PLATFORM_XTOR_FUNCS জাহির করতে এবং প্ল্যাটফর্ম::InetLayer::WillShutdown এবং Platform::InetLayer::DidShutdown হুকগুলিকে সক্ষম করতে বেছে নিতে পারে যাতে প্ল্যাটফর্ম -এর কাস্টম-আপ ক্লিন-আপ প্ল্যাটফর্ম ক্লিন-আপ-কে প্রভাবিত করতে পারে।

বিস্তারিত
রিটার্নস
সাফল্যে INET_NO_ERROR ; অন্যথায়, শাটডাউন ব্যর্থতার কারণ নির্দেশ করে একটি নির্দিষ্ট ত্রুটি।

সিস্টেম লেয়ার

Weave::System::Layer * SystemLayer(
  void
) const 

পাবলিক স্ট্যাটিক ফাংশন

HandleInetLayerEvent

Weave::System::Error HandleInetLayerEvent(
  Weave::System::Object & aTarget,
  Weave::System::EventType aEventType,
  uintptr_t aArgument
)

IsDroppableEvent

bool IsDroppableEvent(
  Weave::System::EventType aType
)

আপডেট স্ন্যাপশট

void UpdateSnapshot(
  nl::Weave::System::Stats::Snapshot & aSnapshot
)