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 antarmuka jaringan sistem.
Metode pada instance individual class ini tidak aman untuk thread; namun {i>instance<i} terpisah dapat digunakan secara bersamaan oleh beberapa {i>thread<i}.
Pada sistem LwIP multi-thread, instance relatif aman untuk thread lain yang mengakses status LwIP global asalkan: 1) thread lain menahan kunci inti LwIP saat mengubah daftar netif; dan 2) objek netif itu sendiri tidak pernah dihancurkan.
Pada sistem berbasis soket, iterasi selalu stabil meskipun terjadi perubahan pada antarmuka dan/atau alamat sistem yang mendasarinya.
Pada sistem LwIP, iterasi bersifat stabil kecuali dalam kasus ketika 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)
Menghancurkan 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)
|
Dapatkan 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
Maju 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 | |
---|---|
Hasil |
alamat antarmuka saat ini atau
IPAddress::Any jika iterator diposisikan di luar akhir 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 | |
---|---|
Hasil |
ID antarmuka atau
INET_NULL_INTERFACEID jika iterator diposisikan di luar akhir daftar alamat. |
GetInterfaceName
INET_ERROR GetInterfaceName( char *nameBuf, size_t nameBufSize )
Dapatkan 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 | |
---|---|
Hasil |
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 | |
---|---|
Hasil |
true jika antarmuka memiliki alamat broadcast, false jika tidak, atau jika iterator tidak diposisikan pada alamat antarmuka. |
HasCurrent
bool HasCurrent( void )
InterfaceAddressIterator
InterfaceAddressIterator( void )
Membuat objek InterfaceAddressIterator.
Memulai iterator pada alamat jaringan pertama. Pada beberapa platform, konstruktor ini dapat mengalokasikan sumber daya yang didaur ulang oleh destruktor.
IsUp
bool IsUp( void )
Menampilkan apakah antarmuka jaringan yang terkait dengan alamat antarmuka saat ini aktif.
Detail | |
---|---|
Hasil |
true jika antarmuka jaringan saat ini naik, false jika tidak, atau jika iterator tidak diposisikan pada alamat antarmuka. |
Berikutnya
bool Next( void )
Maju 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 | |
---|---|
Hasil |
false jika maju setelah melewati bagian akhir, atau true . |
SupportsMulticast
bool SupportsMulticast( void )
Menampilkan apakah antarmuka jaringan yang terkait dengan alamat antarmuka saat ini mendukung multicast.
Detail | |
---|---|
Hasil |
true jika multicast didukung, false jika tidak, atau jika iterator tidak diposisikan pada alamat antarmuka. |
~InterfaceAddressIterator
~InterfaceAddressIterator( void )
Menghancurkan objek InterfaceAddressIterator.
Mendaur ulang resource apa pun yang dialokasikan oleh konstruktor.