Networking_SetHardwareAddress 函数

标头: #include <applibs/networking.h>

设置网络接口的硬件地址。 硬件地址在重新启动后保留,并且只能在 以太网接口上设置。 应用程序清单必须包含 HardwareAddressConfig 功能。

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

参数

  • networkInterfaceName 要更新的网络接口的名称。
  • hardwareAddress 指向包含硬件地址的字节数组的指针。
  • hardwareAddressLength 硬件地址的长度。 这应始终等于 HARDWARE_ADDRESS_LENGTH

错误

如果遇到错误并设置为 errno 错误值,则返回 -1。

  • ENOINT:网络接口不存在。

  • EPERM:接口上不允许使用此函数。

  • EAGAIN:网络堆栈未准备就绪。

  • ERANGE: hardwareAddressLength 大于 HARDWARE_ADDRESS_LENGTH

  • EINVAL: hardwareAddressLength 无效。

    示例

    • 全零硬件地址 (00:00:00:00:00) 。 -
    • 组硬件地址 (硬件地址,其第一个八位字节的最小有效位设置为 1) 。

可以指定任何其他 errno 错误;此类错误不是确定性的,并且无法保证这些值在 OS 版本中保持一致。

返回值

如果成功,则返回 0,如果失败,则返回 -1,在这种情况下 errno ,将 设置为错误值。

概念和示例