nl:: Inet:: ইন্টারফেস ঠিকানা আইটারেটর
#include <src/inet/InetInterface.h>
সিস্টেম নেটওয়ার্ক ইন্টারফেস আইপি ঠিকানাগুলির তালিকার জন্য পুনরাবৃত্তিকারী।
সারাংশ
সিস্টেম নেটওয়ার্ক ইন্টারফেস ইন্টারফেস আইপি ঠিকানাগুলির তালিকা পুনরাবৃত্তি করতে এই শ্রেণীর বস্তুগুলি ব্যবহার করুন।
এই শ্রেণীর একটি পৃথক উদাহরণের পদ্ধতিগুলি থ্রেড-নিরাপদ নয় ; তবে পৃথক দৃষ্টান্ত একাধিক থ্রেড দ্বারা একযোগে ব্যবহার করা যেতে পারে।
মাল্টি-থ্রেডেড LwIP সিস্টেমে, গ্লোবাল এলডব্লিউআইপি স্টেটে অ্যাক্সেস করা অন্যান্য থ্রেডের তুলনায় দৃষ্টান্তগুলি থ্রেড-নিরাপদ হয়: 1) অন্যান্য থ্রেড নেটিফের তালিকা পরিবর্তন করার সময় LwIP কোর লক ধরে রাখে; এবং 2) netif অবজেক্ট নিজেই ধ্বংস হয় না।
সকেট-ভিত্তিক সিস্টেমে, অন্তর্নিহিত সিস্টেমের ইন্টারফেস এবং/অথবা ঠিকানাগুলির পরিবর্তনের মুখে পুনরাবৃত্তি সবসময় স্থিতিশীল থাকে।
LwIP সিস্টেমে, যে ক্ষেত্রে বর্তমান ঠিকানার সাথে যুক্ত ইন্টারফেসটি সরানো হয় সেক্ষেত্রে পুনরাবৃত্তি স্থিতিশীল থাকে, যে ক্ষেত্রে পুনরাবৃত্তি অকালে শেষ হতে পারে।
কনস্ট্রাক্টর এবং ডেস্ট্রাক্টর | |
---|---|
InterfaceAddressIterator (void) একটি InterfaceAddressIterator অবজেক্ট তৈরি করে। | |
~InterfaceAddressIterator (void) একটি InterfaceAddressIterator অবজেক্ট ধ্বংস করে। |
পাবলিক ফাংশন | |
---|---|
GetAddress (void) | বর্তমান ইন্টারফেস ঠিকানা পান. |
GetAddressWithPrefix ( IPPrefix & addrWithPrefix) | void বর্তমান ঠিকানার ঠিকানা এবং উপসর্গের দৈর্ঘ্য ধারণকারী একটি IPPrefix প্রদান করে। |
GetIPv6PrefixLength (void) | uint8_t GetPrefixLength(void) এর জন্য অবচিত উপনাম |
GetInterface (void) | InterfaceId GetInterfaceId(void) এর জন্য অবচিত উপনাম |
GetInterfaceId (void) | InterfaceId বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক ইন্টারফেস আইডি প্রদান করে। |
GetInterfaceName (char *nameBuf, size_t nameBufSize) | বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক ইন্টারফেসের নাম পান। |
GetPrefixLength (void) | uint8_t বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক উপসর্গ পায়। |
HasBroadcastAddress (void) | bool বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক ইন্টারফেসের একটি IPv4 সম্প্রচার ঠিকানা আছে কিনা তা প্রদান করে। |
HasCurrent (void) | bool |
IsUp (void) | bool বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক ইন্টারফেস আপ আছে কিনা তা প্রদান করে। |
Next (void) | bool পরবর্তী ইন্টারফেস ঠিকানায় পুনরাবৃত্তিকারীকে অগ্রসর করুন। |
SupportsMulticast (void) | bool বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক ইন্টারফেস মাল্টিকাস্ট সমর্থন করে কিনা তা প্রদান করে। |
পাবলিক ফাংশন
GetAddress
IPAddress GetAddress( void )
বর্তমান ইন্টারফেস ঠিকানা পান.
বিস্তারিত | |
---|---|
রিটার্নস | বর্তমান ইন্টারফেস ঠিকানা বা IPAddress::Any যদি ইটারেটর ঠিকানা তালিকার শেষের বাইরে থাকে। |
GetAddressWithPrefix
void GetAddressWithPrefix( IPPrefix & addrWithPrefix )
বর্তমান ঠিকানার ঠিকানা এবং উপসর্গের দৈর্ঘ্য ধারণকারী একটি IPPrefix প্রদান করে।
GetIPv6 প্রিফিক্স দৈর্ঘ্য
uint8_t GetIPv6PrefixLength( void )
GetPrefixLength(void)
এর জন্য অবচিত উপনাম
GetInterfaceId
InterfaceId GetInterfaceId( void )
বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক ইন্টারফেস আইডি প্রদান করে।
বিস্তারিত | |
---|---|
রিটার্নস | ইন্টারফেস আইডি বা INET_NULL_INTERFACEID যদি ইটারেটর ঠিকানা তালিকার শেষের বাইরে থাকে। |
GetInterfaceName
INET_ERROR GetInterfaceName( char *nameBuf, size_t nameBufSize )
বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক ইন্টারফেসের নাম পান।
Writes the name of the network interface as \c NUL terminated text string at \c nameBuf.
বিস্তারিত | |||||||||
---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||
রিটার্ন মান |
|
GetPrefixLength
uint8_t GetPrefixLength( void )
বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক উপসর্গ পায়।
On LwIP, this method simply returns the hard-coded constant 64. Note Well: the standard subnet prefix on all links other than PPP links is 64 bits. On PPP links and some non-broadcast multipoint access links, the convention is either 127 bits or 128 bits, but it might be something else. On most platforms, the system's interface address structure can represent arbitrary prefix lengths between 0 and 128.
বিস্তারিত | |
---|---|
রিটার্নস | নেটওয়ার্ক উপসর্গ (বিটে) বা 0 যদি ইটারেটর ঠিকানা তালিকার শেষের বাইরে থাকে। |
সম্প্রচার ঠিকানা
bool HasBroadcastAddress( void )
বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক ইন্টারফেসের একটি IPv4 সম্প্রচার ঠিকানা আছে কিনা তা প্রদান করে।
বিস্তারিত | |
---|---|
রিটার্নস | ইন্টারফেসের সম্প্রচার ঠিকানা থাকলে true , না থাকলে false , অথবা যদি ইন্টারফেসের ঠিকানায় পুনরাবৃত্তিকারী অবস্থান না করে থাকে। |
হ্যাসকারেন্ট
bool HasCurrent( void )
ইন্টারফেস ঠিকানা আইটারেটর
InterfaceAddressIterator( void )
একটি InterfaceAddressIterator অবজেক্ট তৈরি করে।
প্রথম নেটওয়ার্ক ঠিকানায় পুনরাবৃত্তিকারী শুরু করে। কিছু প্ল্যাটফর্মে, এই কনস্ট্রাক্টর ধ্বংসকারী দ্বারা পুনর্ব্যবহৃত সম্পদ বরাদ্দ করতে পারে।
IsUp
bool IsUp( void )
বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক ইন্টারফেস আপ আছে কিনা তা প্রদান করে।
বিস্তারিত | |
---|---|
রিটার্নস | বর্তমান নেটওয়ার্ক ইন্টারফেস আপ থাকলে true , না থাকলে false , অথবা যদি ইন্টারফেস ঠিকানায় ইটারেটর অবস্থান না করে থাকে। |
পরবর্তী
bool Next( void )
পরবর্তী ইন্টারফেস ঠিকানায় পুনরাবৃত্তিকারীকে অগ্রসর করুন।
Advances the iterator to the next interface address or to a position beyond the end of the address list. On LwIP, this method is thread-safe provided that: 1) other threads hold the LwIP core lock while mutating the netif list; and 2) netif objects themselves are never destroyed. Additionally, iteration on LwIP systems will terminate early if the current interface is removed from the list.
বিস্তারিত | |
---|---|
রিটার্নস | false যদি শেষের বাইরে অগ্রসর হয়, অন্যথায় true । |
মাল্টিকাস্ট সমর্থন করে
bool SupportsMulticast( void )
বর্তমান ইন্টারফেস ঠিকানার সাথে যুক্ত নেটওয়ার্ক ইন্টারফেস মাল্টিকাস্ট সমর্থন করে কিনা তা প্রদান করে।
বিস্তারিত | |
---|---|
রিটার্নস | মাল্টিকাস্ট সমর্থিত হলে true , না থাকলে false , অথবা যদি ইন্টারফেস ঠিকানায় ইটারেটর অবস্থান না করে থাকে। |
~ ইন্টারফেস এড্রেস ইটারেটর
~InterfaceAddressIterator( void )
একটি InterfaceAddressIterator অবজেক্ট ধ্বংস করে।
কনস্ট্রাক্টর দ্বারা বরাদ্দ করা কোনো সম্পদ পুনর্ব্যবহার করে।