Partilhar via


Função Networking_SetHardwareAddress

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

Define o endereço de hardware de uma interface de rede. O endereço de hardware é mantido entre reinícios e só pode ser definido numa interface Ethernet. O manifesto da aplicação tem de incluir a HardwareAddressConfig capacidade.

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

Parâmetros

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

Erros

Devolve -1 se for encontrado um erro e define errno para o valor de erro.

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

  • EPERM: esta 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 com zeros (00: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; tais erros não são deterministas e não há garantias de que os valores serão consistentes entre as versões do SO.

Valor devolvido

Devolve 0 para êxito ou -1 para falha, caso errno em que está definido como o valor de erro.

Conceitos e exemplos