• Maciej Żenczykowski's avatar
    ipv6: adjust ndisc_is_useropt() to also return true for PIO · 048c796b
    Maciej Żenczykowski authored
    The upcoming (and nearly finalized):
      https://datatracker.ietf.org/doc/draft-collink-6man-pio-pflag/
    will update the IPv6 RA to include a new flag in the PIO field,
    which will serve as a hint to perform DHCPv6-PD.
    
    As we don't want DHCPv6 related logic inside the kernel, this piece of
    information needs to be exposed to userspace.  The simplest option is to
    simply expose the entire PIO through the already existing mechanism.
    
    Even without this new flag, the already existing PIO R (router address)
    flag (from RFC6275) cannot AFAICT be handled entirely in kernel,
    and provides useful information that should be exposed to userspace
    (the router's global address, for use by Mobile IPv6).
    
    Also cc'ing stable@ for inclusion in LTS, as while technically this is
    not quite a bugfix, and instead more of a feature, it is absolutely
    trivial and the alternative is manually cherrypicking into all Android
    Common Kernel trees - and I know Greg will ask for it to be sent in via
    LTS instead...
    
    Cc: Jen Linkova <furry@google.com>
    Cc: Lorenzo Colitti <lorenzo@google.com>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: YOSHIFUJI Hideaki / 吉藤英明 <yoshfuji@linux-ipv6.org>
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarMaciej Żenczykowski <maze@google.com>
    Link: https://lore.kernel.org/r/20230807102533.1147559-1-maze@google.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    048c796b
ndisc.c 52.1 KB