diff mbox series

[3/3] ip: Allow rules to accept a specified protocol

Message ID 20180217124753.2879-4-sharpd@cumulusnetworks.com
State Changes Requested, archived
Delegated to: David Ahern
Headers show
Series [1/3] ip: Use the `struct fib_rule_hdr` for rules | expand

Commit Message

Donald Sharp Feb. 17, 2018, 12:47 p.m. UTC
Allow the specification of a protocol when the user
adds/modifies/deletes a rule.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
---
 ip/iprule.c | 6 ++++++
 1 file changed, 6 insertions(+)
diff mbox series

Patch

diff --git a/ip/iprule.c b/ip/iprule.c
index 5703d6e4..8fc6ac48 100644
--- a/ip/iprule.c
+++ b/ip/iprule.c
@@ -324,6 +324,12 @@  static int iprule_modify(int cmd, int argc, char **argv)
 			if (get_rt_realms(&realm, *argv))
 				invarg("invalid realms\n", *argv);
 			addattr32(&req.n, sizeof(req), FRA_FLOW, realm);
+		} else if (matches(*argv, "protocol") == 0) {
+			__u32 proto;
+			NEXT_ARG();
+			if (rtnl_rtprot_a2n(&proto, *argv))
+				invarg("\"protocol\" value is invalid\n", *argv);
+			req.frh.proto = proto;
 		} else if (matches(*argv, "table") == 0 ||
 			   strcmp(*argv, "lookup") == 0) {
 			NEXT_ARG();