alshabib

what to do without a buffer

...@@ -48,6 +48,7 @@ import org.projectfloodlight.openflow.types.EthType; ...@@ -48,6 +48,7 @@ import org.projectfloodlight.openflow.types.EthType;
48 import org.projectfloodlight.openflow.types.IPv4Address; 48 import org.projectfloodlight.openflow.types.IPv4Address;
49 import org.projectfloodlight.openflow.types.IpProtocol; 49 import org.projectfloodlight.openflow.types.IpProtocol;
50 import org.projectfloodlight.openflow.types.MacAddress; 50 import org.projectfloodlight.openflow.types.MacAddress;
51 +import org.projectfloodlight.openflow.types.OFBufferId;
51 import org.projectfloodlight.openflow.types.OFPort; 52 import org.projectfloodlight.openflow.types.OFPort;
52 import org.projectfloodlight.openflow.types.OFVlanVidMatch; 53 import org.projectfloodlight.openflow.types.OFVlanVidMatch;
53 import org.projectfloodlight.openflow.types.VlanPcp; 54 import org.projectfloodlight.openflow.types.VlanPcp;
...@@ -110,6 +111,7 @@ public class OpenFlowRuleProvider extends AbstractProvider implements FlowRulePr ...@@ -110,6 +111,7 @@ public class OpenFlowRuleProvider extends AbstractProvider implements FlowRulePr
110 111
111 //TODO: what to do without bufferid? do we assume that there will be a pktout as well? 112 //TODO: what to do without bufferid? do we assume that there will be a pktout as well?
112 OFFlowMod fm = sw.factory().buildFlowModify() 113 OFFlowMod fm = sw.factory().buildFlowModify()
114 + .setBufferId(OFBufferId.NO_BUFFER)
113 .setActions(actions) 115 .setActions(actions)
114 .setMatch(match) 116 .setMatch(match)
115 .setFlags(Collections.singleton(OFFlowModFlags.SEND_FLOW_REM)) 117 .setFlags(Collections.singleton(OFFlowModFlags.SEND_FLOW_REM))
...@@ -128,7 +130,7 @@ public class OpenFlowRuleProvider extends AbstractProvider implements FlowRulePr ...@@ -128,7 +130,7 @@ public class OpenFlowRuleProvider extends AbstractProvider implements FlowRulePr
128 switch (i.type()) { 130 switch (i.type()) {
129 case DROP: 131 case DROP:
130 log.warn("Saw drop action; assigning drop action"); 132 log.warn("Saw drop action; assigning drop action");
131 - return acts; 133 + return new LinkedList<>();
132 case L2MODIFICATION: 134 case L2MODIFICATION:
133 acts.add(buildL2Modification(i, factory)); 135 acts.add(buildL2Modification(i, factory));
134 case L3MODIFICATION: 136 case L3MODIFICATION:
......