Share via


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ğerine HARDWARE_ADDRESS_LENGTHeş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 hardwareAddressLengthHARDWARE_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.

Kavramlar ve örnekler