nl:: İnternet:: ArayüzYineleyici

#include <src/inet/InetInterface.h>

Sistem ağ arabirimlerinin listesi için yineleyici.

Özet

Sistem ağ arabirimlerinin listesini yinelemek için bu sınıfın nesnelerini kullanın.

Bu sınıfın bireysel bir örneği Yöntemleri evreli değildir; ancak ayrı örnekler birden çok iş parçacığı tarafından aynı anda kullanılabilir.

Çok iş parçacıklı LwIP sistemlerinde, diğer iş parçacıklarının netif listesini değiştirirken LwIP çekirdek kilidini tutması ve netif nesnesinin kendilerinin asla yok edilmemesi koşuluyla, örnekler küresel LwIP durumuna erişen diğer iş parçacıklarına göre iş parçacığı açısından güvenlidir.

Soket tabanlı sistemlerde, temel sistemin arabirimlerinde yapılan değişiklikler karşısında yineleme her zaman kararlıdır.

LwIP sistemlerinde, yineleme, o anda seçili arayüzün listeden kaldırıldığı ve yinelemenin hemen sona erdiği durum dışında kararlıdır.

Yapıcılar ve Yıkıcılar

InterfaceIterator (void)
Bir oluşturur InterfaceIterator nesnesi.
~InterfaceIterator (void)
Bir yok eder InterfaceIterator nesnesi.

Korunan özellikler

mCurIntf
size_t
mCurNetif
struct netif *
mIntfArray
struct if_nameindex *
mIntfFlags
short
mIntfFlagsCached
bool

Kamu işlevleri

GetInterface (void)
InterfaceId
İçin Kullanımdan kaldırılan takma GetInterfaceId(void)
GetInterfaceId (void)
InterfaceId
Geçerli yineleyici konumunda ağ arabirimi kimliğini döndürür.
GetInterfaceName (char *nameBuf, size_t nameBufSize)
Geçerli ağ arabiriminin adını alın.
HasBroadcastAddress (void)
bool
Geçerli ağ arabiriminin bir yayın adresine sahip olup olmadığını döndürür.
HasCurrent (void)
bool
Yineleyicinin bir arabirimde konumlanıp konumlanmadığını test edin.
IsUp (void)
bool
Geçerli ağ arabiriminin çalışıp çalışmadığını döndürür.
Next (void)
bool
Yineleyiciyi bir sonraki ağ arayüzüne ilerletin.
SupportsMulticast (void)
bool
Geçerli ağ arabiriminin çok noktaya yayını destekleyip desteklemediğini döndürür.

Korumalı fonksiyonlar

GetFlags (void)
short
Geçerli arabirim için ifr_flags değerini döndürür.

Korunan özellikler

mCurIntf

size_t mCurIntf

mCurNetif

struct netif * mCurNetif

mIntfArray

struct if_nameindex * mIntfArray

mIntfFlag'lar

short mIntfFlags

mIntfFlagsÖnbelleğe Alınmış

bool mIntfFlagsCached

Kamu işlevleri

GetInterface

InterfaceId GetInterface(
  void
)

İçin Kullanımdan kaldırılan takma GetInterfaceId(void)

GetInterfaceId

InterfaceId GetInterfaceId(
  void
)

Geçerli yineleyici konumunda ağ arabirimi kimliğini döndürür.

Ayrıntılar
Dönüş Değerleri
INET_NULL_INTERFACEID
listenin sonunun ötesine geçtiyse.
id
geçerli ağ arayüzü kimliği.

GetInterfaceName

INET_ERROR GetInterfaceName(
  char *nameBuf,
  size_t nameBufSize
)

Geçerli ağ arabiriminin adını alın.

Writes the name of the network interface as \c NUL terminated text string
at \c nameBuf.

Ayrıntılar
parametreler
[in] nameBuf
arayüz adını yazmak için bellek bölgesi
[in] nameBufSize
ile gösterilen bölgenin boyutu nameBuf
Dönüş Değerleri
INET_NO_ERROR
başarılı sonuç, arayüz adı yazıldı
INET_ERROR_INCORRECT_STATE
yineleyici, listenin sonunun ötesine yerleştirildi
INET_ERROR_NO_MEMORY
ad arabelleğe yazılamayacak kadar büyük
other
başka bir sistem veya platform hatası

Yayın Adresi

bool HasBroadcastAddress(
  void
)

Geçerli ağ arabiriminin bir yayın adresine sahip olup olmadığını döndürür.

Ayrıntılar
İadeler
true geçerli ağ arabirimi bir yayın adresi, varsa false değilse veya yineleyici listenin sonuna ötesinde konumlandırılmış eğer.

HasCurrent

bool HasCurrent(
  void
)

Yineleyicinin bir arabirimde konumlanıp konumlanmadığını test edin.

Yineleyicinin bir arabirim adresinde konumlanıp konumlanmadığını test edin.

Ayrıntılar
İadeler
true yineleyici bir ara yüz üzerinde konumlandırılmış ise; false arayüz listenin sonuna ötesinde konumlandırılmış eğer.
İadeler
true yineleyici bir arayüz adresi üzerinde konumlandırılmış ise; false adres listesinin sonunda ötesine yerleştirilmiş eğer.

ArayüzYineleyici

 InterfaceIterator(
  void
)

Bir oluşturur InterfaceIterator nesnesi.

Yineleyiciyi ilk ağ arabiriminde başlatır. Bazı platformlarda, bu kurucu, yıkıcı tarafından geri dönüştürülen kaynakları tahsis edebilir.

IsUp

bool IsUp(
  void
)

Geçerli ağ arabiriminin çalışıp çalışmadığını döndürür.

Ayrıntılar
İadeler
true şu anki ağ arayüzü, yukarı ise false yineleyici listenin sonuna ötesine konumlandırılmış değil ya eğer.

Sonraki

bool Next(
  void
)

Yineleyiciyi bir sonraki ağ arayüzüne ilerletin.

Advances the internal iterator to the next network interface or to a position
beyond the end of the interface list.

On multi-threaded LwIP systems, this method is thread-safe relative to other
threads accessing the global LwIP state provided that: 1) the other threads
hold the LwIP core lock while mutating the list of netifs; and 2) netif objects
themselves are never destroyed.

Iteration is stable in the face of changes to the underlying system's
interfaces, *except* in the case of LwIP systems when the currently selected
interface is removed from the list, which causes iteration to end immediately.

Ayrıntılar
İadeler
false sonuna ötesinde gelişmiş, else if true .

DesteklerMulticast

bool SupportsMulticast(
  void
)

Geçerli ağ arabiriminin çok noktaya yayını destekleyip desteklemediğini döndürür.

Ayrıntılar
İadeler
true ise geçerli ağ arabirimi çok noktaya destekler, false değilse veya yineleyici listenin sonuna ötesinde konumlandırılmış eğer.

~Arayüz Yineleyici

 ~InterfaceIterator(
  void
)

Bir yok eder InterfaceIterator nesnesi.

Yapıcı tarafından tahsis edilen tüm kaynakları geri dönüştürür.

Korumalı fonksiyonlar

GetFlags

short GetFlags(
  void
)

Geçerli arabirim için ifr_flags değerini döndürür.