On 3/21/18 3:24 AM, Nicolas Dichtel wrote: > Le 20/03/2018 à 18:27, David Ahern a écrit : >> On 3/20/18 11:04 AM, Nicolas Dichtel wrote: >>> As the comment said, this attribute defines the originator of the rule, >>> it's not really a (network) protocol. >>> Let's rename it accordingly to avoid confusion (difference between >>> FRA_PROTOCOL and FRA_IP_PROTO was not obvious). >>> >>> CC: Donald Sharp <sha...@cumulusnetworks.com> >>> Signed-off-by: Nicolas Dichtel <nicolas.dich...@6wind.com> >>> --- >>> >>> FRA_PROTOCOL exists only in net-next for now, thus it's still possible to >>> rename it. >>> >>> drivers/net/vrf.c | 4 ++-- >>> include/net/fib_rules.h | 4 ++-- >>> include/uapi/linux/fib_rules.h | 2 +- >>> net/core/fib_rules.c | 14 +++++++------- >>> 4 files changed, 12 insertions(+), 12 deletions(-) >>> >>> >> >> This protocol is meant to be analogous to rtm_protocol. Changing the >> name to FRA_ORIGINATOR loses that connection. > I understand your concerns. But I think the connection still exists after the > patch because the values used for this field are RTPROT_* > rtm_protocol is here from ages and we cannot change that. Moreover, FRA_* > attributes are usually used as a selector or a target, which is not the case > for > a route. Thus I think it's important to carrefully choose the name.
The rule->proto value is not used as a selector. It is passed in, stored on a rule and returned to userspace. It is book keeping only so an admin has some idea of which program installed the rule.