diff --git a/MAINTAINERS b/MAINTAINERS
index 652d76a..20c7e3c 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -274,6 +274,11 @@
 M:	N/A
 F:	src/vnet/geneve/
 
+VNET FLOW
+I:	flow
+M:	Damjan Marion <damarion@cisco.com>
+F:	src/vnet/flow/
+
 Plugin - Access Control List (ACL) Based Forwarding
 I:	abf
 M:	Neale Ranns <nranns@cisco.com>
diff --git a/src/plugins/dpdk/device/flow.c b/src/plugins/dpdk/device/flow.c
index 1b8b590..cea96fd 100644
--- a/src/plugins/dpdk/device/flow.c
+++ b/src/plugins/dpdk/device/flow.c
@@ -44,6 +44,7 @@
   struct rte_flow_action_queue queue = { 0 };
   struct rte_flow_item *item, *items = 0;
   struct rte_flow_action *action, *actions = 0;
+  bool fate = false;
 
   enum
   {
@@ -199,15 +200,31 @@
   item->type = RTE_FLOW_ITEM_TYPE_END;
 
   /* Actions */
-  vec_add2 (actions, action, 1);
-  action->type = RTE_FLOW_ACTION_TYPE_PASSTHRU;
-
+  /* Only one 'fate' can be assigned */
   if (f->actions & VNET_FLOW_ACTION_REDIRECT_TO_QUEUE)
     {
       vec_add2 (actions, action, 1);
       queue.index = f->redirect_queue;
       action->type = RTE_FLOW_ACTION_TYPE_QUEUE;
       action->conf = &queue;
+      fate = true;
+    }
+  if (f->actions & VNET_FLOW_ACTION_DROP)
+    {
+      vec_add2 (actions, action, 1);
+      action->type = RTE_FLOW_ACTION_TYPE_DROP;
+      if (fate == true)
+	{
+	  rv = VNET_FLOW_ERROR_INTERNAL;
+	  goto done;
+	}
+      else
+	fate = true;
+    }
+  if (fate == false)
+    {
+      vec_add2 (actions, action, 1);
+      action->type = RTE_FLOW_ACTION_TYPE_PASSTHRU;
     }
 
   if (f->actions & VNET_FLOW_ACTION_MARK)
diff --git a/src/vnet/flow/flow_cli.c b/src/vnet/flow/flow_cli.c
index 0e10c90..5481aa3 100644
--- a/src/vnet/flow/flow_cli.c
+++ b/src/vnet/flow/flow_cli.c
@@ -323,6 +323,11 @@
       else if (unformat (line_input, "buffer-advance %d",
 			 &flow.buffer_advance))
 	flow.actions |= VNET_FLOW_ACTION_BUFFER_ADVANCE;
+      else if (unformat (line_input, "redirect-to-queue %d",
+			 &flow.redirect_queue))
+	flow.actions |= VNET_FLOW_ACTION_REDIRECT_TO_QUEUE;
+      else if (unformat (line_input, "drop"))
+	flow.actions |= VNET_FLOW_ACTION_DROP;
       else if (unformat (line_input, "%U", unformat_vnet_hw_interface, vnm,
 			 &hw_if_index))
 	;
