diff options
| author | Tony Luck <tony.luck@intel.com> | 2005-06-29 18:21:41 -0400 |
|---|---|---|
| committer | Tony Luck <tony.luck@intel.com> | 2005-06-29 18:21:41 -0400 |
| commit | d18bfacff20f08aecf01bb971b110ca108eef3c7 (patch) | |
| tree | 255f862839c593c796e609328575b611e3f56cf3 /net/ipv6/addrconf.c | |
| parent | a68db763af9b676590c3fe9ec3f17bf18015eb2f (diff) | |
| parent | fd782a4a99d2d3e818b9465c427b10f7f027d7da (diff) | |
Auto merge with /home/aegl/GIT/linus
Diffstat (limited to 'net/ipv6/addrconf.c')
| -rw-r--r-- | net/ipv6/addrconf.c | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index a54d4ef3fd35..77004b9456c0 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
| @@ -2777,7 +2777,7 @@ static int inet6_dump_addr(struct sk_buff *skb, struct netlink_callback *cb, | |||
| 2777 | read_lock_bh(&idev->lock); | 2777 | read_lock_bh(&idev->lock); |
| 2778 | switch (type) { | 2778 | switch (type) { |
| 2779 | case UNICAST_ADDR: | 2779 | case UNICAST_ADDR: |
| 2780 | /* unicast address */ | 2780 | /* unicast address incl. temp addr */ |
| 2781 | for (ifa = idev->addr_list; ifa; | 2781 | for (ifa = idev->addr_list; ifa; |
| 2782 | ifa = ifa->if_next, ip_idx++) { | 2782 | ifa = ifa->if_next, ip_idx++) { |
| 2783 | if (ip_idx < s_ip_idx) | 2783 | if (ip_idx < s_ip_idx) |
| @@ -2788,19 +2788,6 @@ static int inet6_dump_addr(struct sk_buff *skb, struct netlink_callback *cb, | |||
| 2788 | NLM_F_MULTI)) <= 0) | 2788 | NLM_F_MULTI)) <= 0) |
| 2789 | goto done; | 2789 | goto done; |
| 2790 | } | 2790 | } |
| 2791 | /* temp addr */ | ||
| 2792 | #ifdef CONFIG_IPV6_PRIVACY | ||
| 2793 | for (ifa = idev->tempaddr_list; ifa; | ||
| 2794 | ifa = ifa->tmp_next, ip_idx++) { | ||
| 2795 | if (ip_idx < s_ip_idx) | ||
| 2796 | continue; | ||
| 2797 | if ((err = inet6_fill_ifaddr(skb, ifa, | ||
| 2798 | NETLINK_CB(cb->skb).pid, | ||
| 2799 | cb->nlh->nlmsg_seq, RTM_NEWADDR, | ||
| 2800 | NLM_F_MULTI)) <= 0) | ||
| 2801 | goto done; | ||
| 2802 | } | ||
| 2803 | #endif | ||
| 2804 | break; | 2791 | break; |
| 2805 | case MULTICAST_ADDR: | 2792 | case MULTICAST_ADDR: |
| 2806 | /* multicast address */ | 2793 | /* multicast address */ |
| @@ -2923,6 +2910,7 @@ static int inet6_fill_ifinfo(struct sk_buff *skb, struct inet6_dev *idev, | |||
| 2923 | nlh = NLMSG_NEW(skb, pid, seq, event, sizeof(*r), flags); | 2910 | nlh = NLMSG_NEW(skb, pid, seq, event, sizeof(*r), flags); |
| 2924 | r = NLMSG_DATA(nlh); | 2911 | r = NLMSG_DATA(nlh); |
| 2925 | r->ifi_family = AF_INET6; | 2912 | r->ifi_family = AF_INET6; |
| 2913 | r->__ifi_pad = 0; | ||
| 2926 | r->ifi_type = dev->type; | 2914 | r->ifi_type = dev->type; |
| 2927 | r->ifi_index = dev->ifindex; | 2915 | r->ifi_index = dev->ifindex; |
| 2928 | r->ifi_flags = dev_get_flags(dev); | 2916 | r->ifi_flags = dev_get_flags(dev); |
| @@ -3030,9 +3018,12 @@ static int inet6_fill_prefix(struct sk_buff *skb, struct inet6_dev *idev, | |||
| 3030 | nlh = NLMSG_NEW(skb, pid, seq, event, sizeof(*pmsg), flags); | 3018 | nlh = NLMSG_NEW(skb, pid, seq, event, sizeof(*pmsg), flags); |
| 3031 | pmsg = NLMSG_DATA(nlh); | 3019 | pmsg = NLMSG_DATA(nlh); |
| 3032 | pmsg->prefix_family = AF_INET6; | 3020 | pmsg->prefix_family = AF_INET6; |
| 3021 | pmsg->prefix_pad1 = 0; | ||
| 3022 | pmsg->prefix_pad2 = 0; | ||
| 3033 | pmsg->prefix_ifindex = idev->dev->ifindex; | 3023 | pmsg->prefix_ifindex = idev->dev->ifindex; |
| 3034 | pmsg->prefix_len = pinfo->prefix_len; | 3024 | pmsg->prefix_len = pinfo->prefix_len; |
| 3035 | pmsg->prefix_type = pinfo->type; | 3025 | pmsg->prefix_type = pinfo->type; |
| 3026 | pmsg->prefix_pad3 = 0; | ||
| 3036 | 3027 | ||
| 3037 | pmsg->prefix_flags = 0; | 3028 | pmsg->prefix_flags = 0; |
| 3038 | if (pinfo->onlink) | 3029 | if (pinfo->onlink) |
