diff options
Diffstat (limited to 'src/network/networkd-address.h')
-rw-r--r-- | src/network/networkd-address.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/network/networkd-address.h b/src/network/networkd-address.h index ff3d46abdd..1569b588a0 100644 --- a/src/network/networkd-address.h +++ b/src/network/networkd-address.h @@ -50,6 +50,13 @@ typedef struct Address { address_ready_callback_t callback; } Address; +char *format_lifetime(char *buf, size_t l, uint32_t lifetime) _warn_unused_result_; +/* Note: the lifetime of the compound literal is the immediately surrounding block, + * see C11 ยง6.5.2.5, and + * https://stackoverflow.com/questions/34880638/compound-literal-lifetime-and-if-blocks */ +#define FORMAT_LIFETIME(lifetime) \ + format_lifetime((char[FORMAT_TIMESPAN_MAX+STRLEN("for ")]){}, FORMAT_TIMESPAN_MAX+STRLEN("for "), lifetime) + int address_new(Address **ret); Address *address_free(Address *address); int address_get(Link *link, const Address *in, Address **ret); |