diff --git a/drivers/default/src/main/java/org/onosproject/driver/pipeline/ofdpa/CpqdOfdpa2Pipeline.java b/drivers/default/src/main/java/org/onosproject/driver/pipeline/ofdpa/CpqdOfdpa2Pipeline.java index 2e714273aa..caee9a0e1b 100644 --- a/drivers/default/src/main/java/org/onosproject/driver/pipeline/ofdpa/CpqdOfdpa2Pipeline.java +++ b/drivers/default/src/main/java/org/onosproject/driver/pipeline/ofdpa/CpqdOfdpa2Pipeline.java @@ -184,14 +184,16 @@ public class CpqdOfdpa2Pipeline extends Ofdpa2Pipeline { // ofdpa cannot match on ALL portnumber, so we need to use separate // rules for each port. List portnums = new ArrayList<>(); - if (portCriterion != null && portCriterion.port() == PortNumber.ALL) { - for (Port port : deviceService.getPorts(deviceId)) { - if (port.number().toLong() > 0 && port.number().toLong() < OFPP_MAX) { - portnums.add(port.number()); + if (portCriterion != null) { + if (portCriterion.port() == PortNumber.ALL) { + for (Port port : deviceService.getPorts(deviceId)) { + if (port.number().toLong() > 0 && port.number().toLong() < OFPP_MAX) { + portnums.add(port.number()); + } } + } else { + portnums.add(portCriterion.port()); } - } else { - portnums.add(portCriterion.port()); } for (PortNumber pnum : portnums) {