tree cf42e186985643e9c7fbb7c3c3e3fb18d174874b
parent b24a2516d10751d7ed5afb58420df25370c9dffb
author Yang Hongyang <yanghy@cn.fujitsu.com> 1229422065 -0800
committer David S. Miller <davem@davemloft.net> 1229422065 -0800

ipv6: fix the return interface index when get it while no message is received

When get receiving interface index while no message is received,
the the value seted with setsockopt() should be returned.

RFC 3542:
   Issuing getsockopt() for the above options will return the sticky
   option value i.e., the value set with setsockopt().  If no sticky
   option value has been set getsockopt() will return the following
   values:

   -  For the IPV6_PKTINFO option, it will return an in6_pktinfo
      structure with ipi6_addr being in6addr_any and ipi6_ifindex being
      zero.

Signed-off-by: Yang Hongyang <yanghy@cn.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
