if (new->valid > 0) {
if (x) {
- if (new->valid >= x->valid && new->valid - x->valid < 60 &&
+ if (new->valid >= x->valid && new->valid != UINT32_MAX &&
+ new->valid - x->valid < 60 &&
new->preferred >= x->preferred &&
+ new->preferred != UINT32_MAX &&
new->preferred - x->preferred < 60 &&
x->class == new->class)
return false;