diff options
author | Rosen Penev <rosenp@gmail.com> | 2020-03-26 16:07:12 -0700 |
---|---|---|
committer | Hans Dedecker <dedeckeh@gmail.com> | 2020-03-28 09:19:37 +0100 |
commit | fbf14aee4ad321ac3702b60ff8193d82812c2270 (patch) | |
tree | 660a0268d89f1fc436d3a6ab0a54864752e134db | |
parent | 6594c6b182a9065570316cf3a7a6a72a7afda150 (diff) |
odhcpd: fix compilation with musl 1.2.0
SYS_clock_gettime is gone with musl 1.2.0. Switched to the function.
Also fixed two format strings that fail as time_t is 64-bit with 1.2.0.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
-rw-r--r-- | src/dhcpv6-ia.c | 8 | ||||
-rw-r--r-- | src/odhcpd.c | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/dhcpv6-ia.c b/src/dhcpv6-ia.c index 1a13945..b51649c 100644 --- a/src/dhcpv6-ia.c +++ b/src/dhcpv6-ia.c @@ -338,12 +338,12 @@ void dhcpv6_ia_write_statefile(void) odhcpd_hexlify(duidbuf, ctxt.c->clid_data, ctxt.c->clid_len); /* iface DUID iaid hostname lifetime assigned length [addrs...] */ - ctxt.buf_idx = snprintf(ctxt.buf, ctxt.buf_len, "# %s %s %x %s%s %ld %x %u ", + ctxt.buf_idx = snprintf(ctxt.buf, ctxt.buf_len, "# %s %s %x %s%s %"PRId64" %x %u ", ctxt.iface->ifname, duidbuf, ntohl(ctxt.c->iaid), (ctxt.c->flags & OAF_BROKEN_HOSTNAME) ? "broken\\x20" : "", (ctxt.c->hostname ? ctxt.c->hostname : "-"), (ctxt.c->valid_until > now ? - (ctxt.c->valid_until - now + wall_time) : + (int64_t)(ctxt.c->valid_until - now + wall_time) : (INFINITE_VALID(ctxt.c->valid_until) ? -1 : 0)), ctxt.c->assigned, (unsigned)ctxt.c->length); @@ -368,12 +368,12 @@ void dhcpv6_ia_write_statefile(void) odhcpd_hexlify(duidbuf, c->hwaddr, sizeof(c->hwaddr)); /* iface DUID iaid hostname lifetime assigned length [addrs...] */ - ctxt.buf_idx = snprintf(ctxt.buf, ctxt.buf_len, "# %s %s ipv4 %s%s %ld %x 32 ", + ctxt.buf_idx = snprintf(ctxt.buf, ctxt.buf_len, "# %s %s ipv4 %s%s %"PRId64" %x 32 ", ctxt.iface->ifname, duidbuf, (c->flags & OAF_BROKEN_HOSTNAME) ? "broken\\x20" : "", (c->hostname ? c->hostname : "-"), (c->valid_until > now ? - (c->valid_until - now + wall_time) : + (int64_t)(c->valid_until - now + wall_time) : (INFINITE_VALID(c->valid_until) ? -1 : 0)), ntohl(c->addr)); diff --git a/src/odhcpd.c b/src/odhcpd.c index 4b8e589..26094b1 100644 --- a/src/odhcpd.c +++ b/src/odhcpd.c @@ -440,7 +440,7 @@ int odhcpd_urandom(void *data, size_t len) time_t odhcpd_time(void) { struct timespec ts; - syscall(SYS_clock_gettime, CLOCK_MONOTONIC, &ts); + clock_gettime(CLOCK_MONOTONIC, &ts); return ts.tv_sec; } |