Compartilhar via


Função Networking_SetHardwareAddress

Cabeçalho: #include <applibs/networking.h>

Define o endereço de hardware para uma interface de rede. O endereço de hardware é persistente entre reinicializações e só pode ser definido em uma interface Ethernet. O manifesto do aplicativo deve incluir a HardwareAddressConfig funcionalidade.

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

Parâmetros

  • networkInterfaceName O nome da interface de rede a ser atualizada.
  • hardwareAddress Um ponteiro para uma matriz de bytes que contém o endereço de hardware.
  • hardwareAddressLength O comprimento do endereço de hardware. Isso deve ser sempre igual a HARDWARE_ADDRESS_LENGTH.

Erros

Retorna -1 se um erro for encontrado e definir errno como o valor do erro.

  • ENOINT: a interface de rede não existe.

  • EPERM: essa função não é permitida na interface.

  • EAGAIN: a pilha de rede não está pronta.

  • ERANGE: o hardwareAddressLength é maior que HARDWARE_ADDRESS_LENGTH.

  • EINVAL: o hardwareAddressLength é inválido.

    Exemplos:

    • Um endereço de hardware zeros (00:00:00:00:00:00). -
    • Endereços de hardware de grupo (um endereço de hardware com o bit menos significativo do primeiro octeto definido como 1).

Qualquer outro errno pode ser especificado; esses erros não são determinísticos e não há garantia de que os valores serão consistentes entre as versões do sistema operacional.

Valor retornado

Retorna 0 para êxito ou -1 para falha, nesse caso errno é definido como o valor do erro.

Conceitos e exemplos