Networking_SetHardwareAddress İşlevi
Üst bilgi: applibs/networking.h #include <>
Ağ arabirimi için donanım adresini ayarlar. Donanım adresi yeniden başlatmalar arasında kalıcıdır ve yalnızca bir Ethernet arabiriminde ayarlanabilir. Uygulama bildirimi özelliği içermelidirHardwareAddressConfig
.
static int Networking_SetHardwareAddress(const char *networkInterfaceName, const uint8_t *hardwareAddress, size_t hardwareAddressLength);
Parametre
networkInterfaceName
Güncelleştirilecek ağ arabiriminin adı.hardwareAddress
Donanım adresini içeren bayt dizisinin işaretçisi.hardwareAddressLength
Donanım adresinin uzunluğu. Bu her zaman değerineHARDWARE_ADDRESS_LENGTH
eşit olmalıdır.
Hata
Hatayla karşılaşılırsa ve hata değerine ayarlanırsa errno
-1 döndürür.
ENOINT: Ağ arabirimi yok.
EPERM: Arabirimde bu işleve izin verilmez.
EAGAIN: Ağ yığını hazır değil.
ERANGE: büyüktür
hardwareAddressLength
HARDWARE_ADDRESS_LENGTH
.EINVAL:
hardwareAddressLength
geçersiz.Örnekler:
- All-zeroes donanım adresi (00:00:00:00:00:00). -
- Donanım adreslerini gruplandırın (ilk sekizlinin en az önemli bit değeri 1 olarak ayarlanmış bir donanım adresi).
Diğer errno
hatalar belirtilebilir; bu tür hatalar belirleyici değildir ve değerlerin işletim sistemi sürümleri arasında tutarlı olacağının garantisi yoktur.
Dönüş değeri
Başarı için 0 veya hata için -1 döndürür; bu durumda errno
hata değerine ayarlanır.