Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

net/ipv6: Pass ifa6_config struct to inet6_addr_modify

Update inet6_addr_modify to take ifa6_config argument versus a parameter
list. This is an argument move only; no functional change intended.

Signed-off-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

David Ahern and committed by
David S. Miller
d169a1f8 19b1518c

+23 -21
+23 -21
net/ipv6/addrconf.c
··· 4527 4527 ifm->ifa_prefixlen); 4528 4528 } 4529 4529 4530 - static int inet6_addr_modify(struct inet6_ifaddr *ifp, u32 ifa_flags, 4531 - u32 prefered_lft, u32 valid_lft) 4530 + static int inet6_addr_modify(struct inet6_ifaddr *ifp, struct ifa6_config *cfg) 4532 4531 { 4533 4532 u32 flags; 4534 4533 clock_t expires; ··· 4537 4538 4538 4539 ASSERT_RTNL(); 4539 4540 4540 - if (!valid_lft || (prefered_lft > valid_lft)) 4541 + if (!cfg->valid_lft || cfg->preferred_lft > cfg->valid_lft) 4541 4542 return -EINVAL; 4542 4543 4543 - if (ifa_flags & IFA_F_MANAGETEMPADDR && 4544 + if (cfg->ifa_flags & IFA_F_MANAGETEMPADDR && 4544 4545 (ifp->flags & IFA_F_TEMPORARY || ifp->prefix_len != 64)) 4545 4546 return -EINVAL; 4546 4547 4547 4548 if (!(ifp->flags & IFA_F_TENTATIVE) || ifp->flags & IFA_F_DADFAILED) 4548 - ifa_flags &= ~IFA_F_OPTIMISTIC; 4549 + cfg->ifa_flags &= ~IFA_F_OPTIMISTIC; 4549 4550 4550 - timeout = addrconf_timeout_fixup(valid_lft, HZ); 4551 + timeout = addrconf_timeout_fixup(cfg->valid_lft, HZ); 4551 4552 if (addrconf_finite_timeout(timeout)) { 4552 4553 expires = jiffies_to_clock_t(timeout * HZ); 4553 - valid_lft = timeout; 4554 + cfg->valid_lft = timeout; 4554 4555 flags = RTF_EXPIRES; 4555 4556 } else { 4556 4557 expires = 0; 4557 4558 flags = 0; 4558 - ifa_flags |= IFA_F_PERMANENT; 4559 + cfg->ifa_flags |= IFA_F_PERMANENT; 4559 4560 } 4560 4561 4561 - timeout = addrconf_timeout_fixup(prefered_lft, HZ); 4562 + timeout = addrconf_timeout_fixup(cfg->preferred_lft, HZ); 4562 4563 if (addrconf_finite_timeout(timeout)) { 4563 4564 if (timeout == 0) 4564 - ifa_flags |= IFA_F_DEPRECATED; 4565 - prefered_lft = timeout; 4565 + cfg->ifa_flags |= IFA_F_DEPRECATED; 4566 + cfg->preferred_lft = timeout; 4566 4567 } 4567 4568 4568 4569 spin_lock_bh(&ifp->lock); ··· 4572 4573 ifp->flags &= ~(IFA_F_DEPRECATED | IFA_F_PERMANENT | IFA_F_NODAD | 4573 4574 IFA_F_HOMEADDRESS | IFA_F_MANAGETEMPADDR | 4574 4575 IFA_F_NOPREFIXROUTE); 4575 - ifp->flags |= ifa_flags; 4576 + ifp->flags |= cfg->ifa_flags; 4576 4577 ifp->tstamp = jiffies; 4577 - ifp->valid_lft = valid_lft; 4578 - ifp->prefered_lft = prefered_lft; 4578 + ifp->valid_lft = cfg->valid_lft; 4579 + ifp->prefered_lft = cfg->preferred_lft; 4579 4580 4580 4581 spin_unlock_bh(&ifp->lock); 4581 4582 if (!(ifp->flags&IFA_F_TENTATIVE)) 4582 4583 ipv6_ifa_notify(0, ifp); 4583 4584 4584 - if (!(ifa_flags & IFA_F_NOPREFIXROUTE)) { 4585 + if (!(cfg->ifa_flags & IFA_F_NOPREFIXROUTE)) { 4585 4586 addrconf_prefix_route(&ifp->addr, ifp->prefix_len, 4586 4587 ifp->idev->dev, expires, flags, 4587 4588 GFP_KERNEL); ··· 4600 4601 } 4601 4602 4602 4603 if (was_managetempaddr || ifp->flags & IFA_F_MANAGETEMPADDR) { 4603 - if (was_managetempaddr && !(ifp->flags & IFA_F_MANAGETEMPADDR)) 4604 - valid_lft = prefered_lft = 0; 4605 - manage_tempaddrs(ifp->idev, ifp, valid_lft, prefered_lft, 4606 - !was_managetempaddr, jiffies); 4604 + if (was_managetempaddr && 4605 + !(ifp->flags & IFA_F_MANAGETEMPADDR)) { 4606 + cfg->valid_lft = 0; 4607 + cfg->preferred_lft = 0; 4608 + } 4609 + manage_tempaddrs(ifp->idev, ifp, cfg->valid_lft, 4610 + cfg->preferred_lft, !was_managetempaddr, 4611 + jiffies); 4607 4612 } 4608 4613 4609 4614 addrconf_verify_rtnl(); ··· 4694 4691 !(nlh->nlmsg_flags & NLM_F_REPLACE)) 4695 4692 err = -EEXIST; 4696 4693 else 4697 - err = inet6_addr_modify(ifa, cfg.ifa_flags, cfg.preferred_lft, 4698 - cfg.valid_lft); 4694 + err = inet6_addr_modify(ifa, &cfg); 4699 4695 4700 4696 in6_ifa_put(ifa); 4701 4697