1
0
mirror of https://github.com/systemd/systemd.git synced 2025-01-10 05:18:17 +03:00

resolve: initialize 'current' when SD_RESOLVED_NO_STALE is set

Otherwise, the check below is always fail.
```
if (FLAGS_SET(query_flags, SD_RESOLVED_NO_STALE) && j->until_valid < current)
```

Follow-up for 5ed91481ab.
This commit is contained in:
Yu Watanabe 2023-07-31 22:11:51 +09:00
parent 4da252c59a
commit 6756b61626

View File

@ -1030,9 +1030,10 @@ int dns_cache_lookup(
goto miss;
}
if (FLAGS_SET(query_flags, SD_RESOLVED_CLAMP_TTL)) {
if ((query_flags & (SD_RESOLVED_CLAMP_TTL | SD_RESOLVED_NO_STALE)) != 0) {
/* 'current' is always passed to answer_add_clamp_ttl(), but is only used conditionally.
* We'll do the same assert there to make sure that it was initialized properly. */
* We'll do the same assert there to make sure that it was initialized properly.
* 'current' is also used below when SD_RESOLVED_NO_STALE is set. */
current = now(CLOCK_BOOTTIME);
assert(current > 0);
}