state->reason = "DELEGATED6";
}
- if (sla == NULL || sla->sla_set == 0) {
+ if (sla == NULL || !sla->sla_set) {
/* No SLA set, so make an assumption of
* desired SLA and prefix length. */
asla.sla = ifp->index;
asla.prefix_len = 0;
- asla.sla_set = 0;
+ asla.sla_set = false;
sla = &asla;
} else if (sla->prefix_len == 0) {
/* An SLA was given, but prefix length was not.
* potentially more than one interface. */
asla.sla = sla->sla;
asla.prefix_len = 0;
- asla.sla_set = 0;
+ asla.sla_set = sla->sla_set;
sla = &asla;
}
uint32_t sla_max;
int bits;
- if (ia->sla_max == 0) {
+ sla_max = ia->sla_max;
+ if (sla_max == 0 && (sla == NULL || !sla->sla_set)) {
const struct interface *ifi;
- sla_max = 0;
TAILQ_FOREACH(ifi, ifp->ctx->ifaces, next) {
if (ifi->index > sla_max)
sla_max = ifi->index;
}
- } else
- sla_max = ia->sla_max;
+ }
bits = fls32(sla_max);
logerrx("%s: interface name too long", arg);
goto err_sla;
}
- sla->sla_set = 0;
+ sla->sla_set = false;
sla->prefix_len = 0;
sla->suffix = 1;
p = np;
if (*p != '\0') {
sla->sla = (uint32_t)strtou(p, NULL,
0, 0, UINT32_MAX, &e);
- sla->sla_set = 1;
+ sla->sla_set = true;
if (e) {
logerrx("%s: failed to convert "
"sla",
sla->ifname);
goto err_sla;
}
- if (sla->sla_set == 0 &&
+ if (!sla->sla_set &&
strcmp(slap->ifname, sla->ifname) == 0)
{
logwarnx("%s: cannot specify the "