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
,将 设置为错误值。