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 aanHARDWARE_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 danHARDWARE_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.