chiark / gitweb /
sd-dhcp6-client: fix free before use
[elogind.git] / src / libsystemd-network / network-internal.h
index 65cd0d72a04b521d4b214859c3293de0c9f2446a..4bde14641e368ef88376a62e3eab898b8f9cd277 100644 (file)
@@ -37,7 +37,7 @@ bool net_match_config(const struct ether_addr *match_mac,
                       Condition *match_virt,
                       Condition *match_kernel,
                       Condition *match_arch,
-                      const char *dev_mac,
+                      const struct ether_addr *dev_mac,
                       const char *dev_path,
                       const char *dev_parent_driver,
                       const char *dev_driver,
@@ -65,3 +65,15 @@ int config_parse_ifalias(const char *unit, const char *filename, unsigned line,
 int net_parse_inaddr(const char *address, unsigned char *family, void *dst);
 
 int net_get_unique_predictable_data(struct udev_device *device, uint8_t result[8]);
+const char *net_get_name(struct udev_device *device);
+
+void serialize_in_addrs(FILE *f, const char *key, struct in_addr *addresses, size_t size);
+int deserialize_in_addrs(struct in_addr **addresses, size_t *size, const char *string);
+int deserialize_in6_addrs(struct in6_addr **addresses, size_t *size, const char *string);
+
+
+/* don't include "dhcp-lease-internal.h" as it causes conflicts between netinet/ip.h and linux/ip.h */
+struct sd_dhcp_route;
+
+void serialize_dhcp_routes(FILE *f, const char *key, struct sd_dhcp_route *routes, size_t size);
+int deserialize_dhcp_routes(struct sd_dhcp_route **ret, size_t *ret_size, size_t *ret_allocated, const char *string);