nl:: Inet:: InterfaceAddressIterator
#include <src/inet/InetInterface.h>
Iterator untuk daftar alamat IP antarmuka jaringan sistem.
Ringkasan
Gunakan objek class ini untuk melakukan iterasi daftar alamat IP antarmuka jaringan jaringan sistem.
Metode pada instance individual class ini tidak aman untuk thread; tetapi instance terpisah dapat digunakan secara bersamaan oleh beberapa thread.
Pada sistem LwIP multi-thread, instance aman terhadap thread dibandingkan dengan thread lain yang mengakses status LwIP global dengan ketentuan bahwa: 1) thread lain memegang kunci inti LwIP saat mengubah daftar netif; dan 2) objek netif itu sendiri tidak pernah dihancurkan.
Pada sistem berbasis soket, iterasi selalu stabil dalam menghadapi perubahan pada antarmuka dan/atau alamat sistem yang mendasarinya.
Pada sistem LwIP, iterasi stabil kecuali dalam kasus di mana antarmuka yang terkait dengan alamat saat ini dihapus, dalam hal ini iterasi dapat berakhir sebelum waktunya.
Konstruktor dan Destruktor |
|
---|---|
InterfaceAddressIterator(void)
Membuat objek InterfaceAddressIterator.
|
|
~InterfaceAddressIterator(void)
Menghapus objek InterfaceAddressIterator.
|
Fungsi publik |
|
---|---|
GetAddress(void)
|
Mendapatkan alamat antarmuka saat ini.
|
GetAddressWithPrefix(IPPrefix & addrWithPrefix)
|
void
Menampilkan IPPrefix yang berisi alamat dan panjang awalan untuk alamat saat ini.
|
GetIPv6PrefixLength(void)
|
uint8_t
Alias yang tidak digunakan lagi untuk
GetPrefixLength(void) |
GetInterface(void)
|
InterfaceId
Alias yang tidak digunakan lagi untuk
GetInterfaceId(void) |
GetInterfaceId(void)
|
InterfaceId
Menampilkan ID antarmuka jaringan yang terkait dengan alamat antarmuka saat ini.
|
GetInterfaceName(char *nameBuf, size_t nameBufSize)
|
Mendapatkan nama antarmuka jaringan yang dikaitkan dengan alamat antarmuka saat ini.
|
GetPrefixLength(void)
|
uint8_t
Mendapatkan awalan jaringan yang terkait dengan alamat antarmuka saat ini.
|
HasBroadcastAddress(void)
|
bool
Menampilkan apakah antarmuka jaringan yang terkait dengan alamat antarmuka saat ini memiliki alamat siaran IPv4.
|
HasCurrent(void)
|
bool
|
IsUp(void)
|
bool
Menampilkan apakah antarmuka jaringan yang terkait dengan alamat antarmuka saat ini aktif.
|
Next(void)
|
bool
Meneruskan iterator ke alamat antarmuka berikutnya.
|
SupportsMulticast(void)
|
bool
Menampilkan apakah antarmuka jaringan yang terkait dengan alamat antarmuka saat ini mendukung multicast.
|
Fungsi publik
GetAddress
IPAddress GetAddress( void )
Mendapatkan alamat antarmuka saat ini.
Detail | |
---|---|
Menampilkan |
alamat antarmuka saat ini atau
IPAddress::Any jika iterator diposisikan di luar daftar alamat. |
GetAddressWithPrefix
void GetAddressWithPrefix( IPPrefix & addrWithPrefix )
Menampilkan IPPrefix yang berisi alamat dan panjang awalan untuk alamat saat ini.
GetIPv6PrefixLength
uint8_t GetIPv6PrefixLength( void )
Alias yang tidak digunakan lagi untuk GetPrefixLength(void)
GetInterface
InterfaceId GetInterface( void )
Alias yang tidak digunakan lagi untuk GetInterfaceId(void)
GetInterfaceId
InterfaceId GetInterfaceId( void )
Menampilkan ID antarmuka jaringan yang terkait dengan alamat antarmuka saat ini.
Detail | |
---|---|
Menampilkan |
ID antarmuka atau
INET_NULL_INTERFACEID jika iterator diposisikan di luar daftar alamat. |
GetInterfaceName
INET_ERROR GetInterfaceName( char *nameBuf, size_t nameBufSize )
Mendapatkan nama antarmuka jaringan yang dikaitkan dengan alamat antarmuka saat ini.
Writes the name of the network interface as \c NUL terminated text string at \c nameBuf.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Nilai yang Ditampilkan |
|
GetPrefixLength
uint8_t GetPrefixLength( void )
Mendapatkan awalan jaringan yang terkait dengan alamat antarmuka saat ini.
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.
Detail | |
---|---|
Menampilkan |
awalan jaringan (dalam bit) atau 0 jika iterator diposisikan di luar akhir daftar alamat.
|
HasBroadcastAddress
bool HasBroadcastAddress( void )
Menampilkan apakah antarmuka jaringan yang terkait dengan alamat antarmuka saat ini memiliki alamat siaran IPv4.
Detail | |
---|---|
Menampilkan |
true jika antarmuka memiliki alamat siaran, false jika tidak, atau jika iterator tidak diposisikan pada alamat antarmuka. |
Saat Ini
bool HasCurrent( void )
AntarmukaAddressIterator
InterfaceAddressIterator( void )
Membuat objek InterfaceAddressIterator.
Memulai iterator pada alamat jaringan pertama. Pada beberapa platform, konstruktor ini dapat mengalokasikan resource yang didaur ulang oleh destruktor.
IsUp
bool IsUp( void )
Menampilkan apakah antarmuka jaringan yang terkait dengan alamat antarmuka saat ini aktif.
Detail | |
---|---|
Menampilkan |
true jika antarmuka jaringan saat ini aktif, false jika tidak, atau jika iterator tidak diposisikan pada alamat antarmuka. |
Berikutnya
bool Next( void )
Meneruskan iterator ke alamat antarmuka berikutnya.
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.
Detail | |
---|---|
Menampilkan |
false jika maju di akhir, jika tidak true . |
Mendukung Multicast
bool SupportsMulticast( void )
Menampilkan apakah antarmuka jaringan yang terkait dengan alamat antarmuka saat ini mendukung multicast.
Detail | |
---|---|
Menampilkan |
true jika multicast didukung, false jika tidak, atau jika iterator tidak diposisikan pada alamat antarmuka. |
~InterfaceAddressIterator
~InterfaceAddressIterator( void )
Menghapus objek InterfaceAddressIterator.
Mendaur ulang semua resource yang dialokasikan oleh konstruktor.