floodlight/loxigen — pull request #355 by rizard (2014-12-01 13:46:36+00:00)
Title: Added NXMs for source and destination tunnels.

These are included by OVS in matches. C and Python unit tests pass. Java unit test fails with masked versions of the NXMs. Here is the Java unit test issue:

[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver13/OFOxmTunnelIpv4SrcMaskedVer13.java:[84,18] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver13/OFOxmTunnelIpv4SrcMaskedVer13.java:[86,24] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver14/OFOxmTunnelIpv4DstMaskedVer14.java:[84,18] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver14/OFOxmTunnelIpv4DstMaskedVer14.java:[86,24] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver14/OFOxmTunnelIpv4SrcMaskedVer14.java:[84,18] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver14/OFOxmTunnelIpv4SrcMaskedVer14.java:[86,24] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver13/OFOxmTunnelIpv4DstMaskedVer13.java:[84,18] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver13/OFOxmTunnelIpv4DstMaskedVer13.java:[86,24] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver12/OFOxmTunnelIpv4SrcMaskedVer12.java:[84,18] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver12/OFOxmTunnelIpv4SrcMaskedVer12.java:[86,24] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver12/OFOxmTunnelIpv4DstMaskedVer12.java:[84,18] class expected
[ERROR] /home/rizard/loxigen/loxi_output/openflowj/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver12/OFOxmTunnelIpv4DstMaskedVer12.java:[86,24] class expected

I noticed that the errors point to a 'long' in place of what should be an IPv4Address in the OFOxmTunnel Java files indicated in the error messages:

// Accessors for OF message fields
...
...
...

public OFOxm getCanonical() {
if (long.NO_MASK.equals(mask)) {
return new OFOxmTunnelIpv4SrcVer12(value);
} else if(long.FULL_MASK.equals(mask)) {
return null;
} else {
return this;
}
}