1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2 #pragma once
3 
4 #include <inttypes.h>
5 #include <stdbool.h>
6 
7 #include "sd-device.h"
8 #include "sd-id128.h"
9 
10 #include "ether-addr-util.h"
11 
12 bool netif_has_carrier(uint8_t operstate, unsigned flags);
13 int net_get_type_string(sd_device *device, uint16_t iftype, char **ret);
14 const char *net_get_persistent_name(sd_device *device);
15 int net_get_unique_predictable_data(sd_device *device, bool use_sysname, uint64_t *ret);
16 int net_get_unique_predictable_data_from_name(const char *name, const sd_id128_t *key, uint64_t *ret);
17 int net_verify_hardware_address(
18                 const char *ifname,
19                 bool is_static,
20                 uint16_t iftype,
21                 const struct hw_addr_data *ib_hw_addr,
22                 struct hw_addr_data *new_hw_addr);
23