diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2021-07-15 18:48:56 +0900 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2021-07-15 19:17:32 +0900 |
commit | 0fd97a253379a4e6713a588a49f25c64f062a34e (patch) | |
tree | 4b02dbc3875bb9e71e6a7f8e55abdd8ba82b35e0 /src/network/networkd-address.h | |
parent | 6c39b39aa8216f831c44a2fbdce1b98b4cbfb5a6 (diff) | |
download | systemd-0fd97a253379a4e6713a588a49f25c64f062a34e.tar.gz |
network: introduce FORMAT_LIFETIME()
Fixes a bug introduced by 5291f26d4a6450d1fbf3656640ef20c5e78aa6a5.
Fixes #20227.
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); |