internet: ICMPv6 RA prefix option on-link/router flags, and the prefix length are not honored
Router Advertisement Prefix option carries three flags:
- L - On-link Flag [RFC4861]
- A - Autonomous Address Configuration Flag [RFC4861]
- R - Router Address Flag [RFC6275]
Beside some refactoring to be done (the flags are not defined properly), there is a major issue: they are not fully honored.
A flag this is checked by receiving nodes - if not set, the node will not build an address. This is honored.
L flag this is completely ignored - and it is a major issue (see https://tools.ietf.org/html/rfc5942 for an explanation on how much this is bad).
R flag this is not considered either - minor problem since there's no Mobile IPv6 in the code (yet).
Moreover (if this wouldn't be bad enough), the prefix length is not honored either - meaning that any address will have a /64 prefix.
Thanks to @adnanrashidpk for helping in finding this.