X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flibsystemd-network%2Fnetwork-internal.c;h=7f744215cc14569f7c238fd37c27efe6c8ae79d8;hb=3a6fb33c54bc64398e0af1c9d7c74a6b614a849d;hp=7a7a4eac9d505cb0605b6c9f64e16cbfe8a10a0c;hpb=69f08c8338560d5d8192e7d49d21cfe93656385e;p=elogind.git diff --git a/src/libsystemd-network/network-internal.c b/src/libsystemd-network/network-internal.c index 7a7a4eac9..7f744215c 100644 --- a/src/libsystemd-network/network-internal.c +++ b/src/libsystemd-network/network-internal.c @@ -304,7 +304,7 @@ int config_parse_hwaddr(const char *unit, return 0; } -int net_parse_inaddr(const char *address, unsigned char *family, void *dst) { +int net_parse_inaddr(const char *address, int *family, void *dst) { int r; assert(address); @@ -339,31 +339,25 @@ int net_parse_inaddr(const char *address, unsigned char *family, void *dst) { return 0; } -void serialize_in_addrs(FILE *f, const char *key, struct in_addr *addresses, size_t size) { +void serialize_in_addrs(FILE *f, const struct in_addr *addresses, size_t size) { unsigned i; assert(f); - assert(key); assert(addresses); assert(size); - fprintf(f, "%s=", key); - for (i = 0; i < size; i++) fprintf(f, "%s%s", inet_ntoa(addresses[i]), (i < (size - 1)) ? " ": ""); - - fputs("\n", f); } -int deserialize_in_addrs(struct in_addr **ret, size_t *ret_size, const char *string) { +int deserialize_in_addrs(struct in_addr **ret, const char *string) { _cleanup_free_ struct in_addr *addresses = NULL; - size_t size = 0; - char *word, *state; + int size = 0; + const char *word, *state; size_t len; assert(ret); - assert(ret_size); assert(string); FOREACH_WORD(word, len, string, state) { @@ -388,21 +382,19 @@ int deserialize_in_addrs(struct in_addr **ret, size_t *ret_size, const char *str size ++; } - *ret_size = size; *ret = addresses; addresses = NULL; - return 0; + return size; } -int deserialize_in6_addrs(struct in6_addr **ret, size_t *ret_size, const char *string) { +int deserialize_in6_addrs(struct in6_addr **ret, const char *string) { _cleanup_free_ struct in6_addr *addresses = NULL; - size_t size = 0; - char *word, *state; + int size = 0; + const char *word, *state; size_t len; assert(ret); - assert(ret_size); assert(string); FOREACH_WORD(word, len, string, state) { @@ -427,11 +419,10 @@ int deserialize_in6_addrs(struct in6_addr **ret, size_t *ret_size, const char *s size++; } - *ret_size = size; *ret = addresses; addresses = NULL; - return 0; + return size; } void serialize_dhcp_routes(FILE *f, const char *key, struct sd_dhcp_route *routes, size_t size) { @@ -455,7 +446,7 @@ void serialize_dhcp_routes(FILE *f, const char *key, struct sd_dhcp_route *route int deserialize_dhcp_routes(struct sd_dhcp_route **ret, size_t *ret_size, size_t *ret_allocated, const char *string) { _cleanup_free_ struct sd_dhcp_route *routes = NULL; size_t size = 0, allocated = 0; - char *word, *state; + const char *word, *state; size_t len; assert(ret);