Delen via


Networking_SetHardwareAddress functie

Header: #include <applibs/networking.h>

Hiermee stelt u het hardwareadres voor een netwerkinterface in. Het hardwareadres blijft behouden bij het opnieuw opstarten en kan alleen worden ingesteld op een Ethernet-interface. Het toepassingsmanifest moet de HardwareAddressConfig mogelijkheid bevatten.

static int Networking_SetHardwareAddress(const char *networkInterfaceName, const uint8_t *hardwareAddress, size_t hardwareAddressLength);

Parameters

  • networkInterfaceName De naam van de netwerkinterface die moet worden bijgewerkt.
  • hardwareAddress Een aanwijzer naar een matrix van bytes die het hardwareadres bevat.
  • hardwareAddressLength De lengte van het hardwareadres. Dit moet altijd gelijk zijn aan HARDWARE_ADDRESS_LENGTH.

Fouten

Retourneert -1 als er een fout optreedt en wordt ingesteld errno op de foutwaarde.

  • ENOINT: de netwerkinterface bestaat niet.

  • EPERM: deze functie is niet toegestaan op de interface.

  • EAGAIN: de netwerkstack is niet gereed.

  • ERANGE: de hardwareAddressLength is groter dan HARDWARE_ADDRESS_LENGTH.

  • EINVAL: de hardwareAddressLength is ongeldig.

    Voorbeelden:

    • Een hardwareadres met alle nullen (00:00:00:00:00:00). -
    • Hardwareadressen groepeer (een hardwareadres waarbij de minst significante bit van het eerste octet is ingesteld op 1).

Alle andere errno kunnen worden opgegeven; dergelijke fouten zijn niet deterministisch en er is geen garantie dat de waarden consistent zijn in releases van het besturingssysteem.

Retourwaarde

Retourneert 0 voor geslaagd, of -1 voor fout, in welk geval errno is ingesteld op de foutwaarde.

Concepten en voorbeelden