<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:32:40 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[OPNFLWPLUG-509] Failed to create flow entries which change UDP destination port.</title>
                <link>https://jira.opendaylight.org/browse/OPNFLWPLUG-509</link>
                <project id="10155" key="OPNFLWPLUG">OpenFlowPlugin</project>
                    <description>&lt;p&gt;OpenFlow plugin failed to create flow entries which change UDP destination port.&lt;br/&gt;
I observed this issue in the latest distribution build in the stable/lithium branch.&lt;/p&gt;

&lt;p&gt;I saw the following WARN message when I tried to install a flow entry which contained an action modify UDP destination port.&lt;/p&gt;


&lt;p&gt;2015-06-18 11:15:03,315 | WARN  | entLoopGroup-6-2 | OFEncoder                        | 213 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.6.0.SNAPSHOT | Message serialization failed&lt;br/&gt;
java.lang.ClassCastException: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.UdpSrcCaseBuilder$UdpSrcCaseImpl cannot be cast to org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.UdpDstCase&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.match.OxmUdpDstSerializer.serialize(OxmUdpDstSerializer.java:26)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.match.OxmUdpDstSerializer.serialize(OxmUdpDstSerializer.java:21)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.action.OF13SetFieldActionSerializer.serialize(OF13SetFieldActionSerializer.java:52)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.action.OF13SetFieldActionSerializer.serialize(OF13SetFieldActionSerializer.java:30)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.util.ListSerializer.serializeList(ListSerializer.java:42)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.instruction.AbstractActionInstructionSerializer.writeActions(AbstractActionInstructionSerializer.java:40)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.instruction.ApplyActionsInstructionSerializer.serialize(ApplyActionsInstructionSerializer.java:33)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.instruction.ApplyActionsInstructionSerializer.serialize(ApplyActionsInstructionSerializer.java:24)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.util.ListSerializer.serializeList(ListSerializer.java:42)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.factories.FlowModInputMessageFactory.serialize(FlowModInputMessageFactory.java:56)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.factories.FlowModInputMessageFactory.serialize(FlowModInputMessageFactory.java:32)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.SerializationFactory.messageToBuffer(SerializationFactory.java:35)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.core.OFEncoder.encode(OFEncoder.java:46)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.core.OFEncoder.encode(OFEncoder.java:29)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:107)&lt;span class=&quot;error&quot;&gt;&amp;#91;144:io.netty.codec:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:705)&lt;span class=&quot;error&quot;&gt;&amp;#91;118:io.netty.transport:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:763)&lt;span class=&quot;error&quot;&gt;&amp;#91;118:io.netty.transport:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:698)&lt;span class=&quot;error&quot;&gt;&amp;#91;118:io.netty.transport:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:684)&lt;span class=&quot;error&quot;&gt;&amp;#91;118:io.netty.transport:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.channel.DefaultChannelPipeline.write(DefaultChannelPipeline.java:940)&lt;span class=&quot;error&quot;&gt;&amp;#91;118:io.netty.transport:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.channel.AbstractChannel.write(AbstractChannel.java:234)&lt;span class=&quot;error&quot;&gt;&amp;#91;118:io.netty.transport:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.core.connection.ChannelOutboundQueue.flush(ChannelOutboundQueue.java:188)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.core.connection.ChannelOutboundQueue.access$000(ChannelOutboundQueue.java:37)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.core.connection.ChannelOutboundQueue$1.run(ChannelOutboundQueue.java:81)&lt;span class=&quot;error&quot;&gt;&amp;#91;213:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:328)&lt;span class=&quot;error&quot;&gt;&amp;#91;119:io.netty.common:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:350)&lt;span class=&quot;error&quot;&gt;&amp;#91;118:io.netty.transport:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)&lt;span class=&quot;error&quot;&gt;&amp;#91;119:io.netty.common:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137)&lt;span class=&quot;error&quot;&gt;&amp;#91;119:io.netty.common:4.0.26.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at java.lang.Thread.run(Thread.java:745)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_75&amp;#93;&lt;/span&gt;&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="27777">OPNFLWPLUG-509</key>
            <summary>Failed to create flow entries which change UDP destination port.</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                                <status id="5" iconUrl="https://jira.opendaylight.org/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="Hideyuki1985">Hideyuki Tai</reporter>
                        <labels>
                    </labels>
                <created>Fri, 19 Jun 2015 04:18:32 +0000</created>
                <updated>Mon, 27 Sep 2021 09:01:36 +0000</updated>
                            <resolved>Mon, 22 Jun 2015 16:31:58 +0000</resolved>
                                                                    <component>General</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>0</watches>
                                                                                                                <comments>
                            <comment id="57146" author="hideyuki.tai@necam.com" created="Fri, 19 Jun 2015 17:10:53 +0000"  >&lt;p&gt;This problem always occurs with OpenFlow 1.3 switches.&lt;/p&gt;

&lt;p&gt;Therefore, I think the bug-fix should be merged in Lithium.&lt;/p&gt;</comment>
                            <comment id="57147" author="hideyuki.tai@necam.com" created="Fri, 19 Jun 2015 17:36:10 +0000"  >&lt;p&gt;I observed this issue on Lithium-RC1 (06/16).&lt;/p&gt;


&lt;p&gt;How to reproduce the issue&lt;br/&gt;
==========================&lt;/p&gt;

&lt;p&gt;1. Run the Lithium-RC1.&lt;/p&gt;

&lt;p&gt;    ./bin/karaf&lt;/p&gt;

&lt;p&gt;    You can get the RC1 from the above link:&lt;br/&gt;
      &lt;a href=&quot;https://nexus.opendaylight.org/content/repositories/automatedweeklyreleases-1064/org/opendaylight/integration/distribution-karaf/0.3.0-Lithium-RC1-v201506160017/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://nexus.opendaylight.org/content/repositories/automatedweeklyreleases-1064/org/opendaylight/integration/distribution-karaf/0.3.0-Lithium-RC1-v201506160017/&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;2. Install the following feature on the Karaf console.&lt;/p&gt;

&lt;p&gt;    feature:install odl-openflowplugin-flow-services-rest&lt;/p&gt;


&lt;p&gt;3. Run Mininet with an OpenFlow 1.3 switch.&lt;/p&gt;

&lt;p&gt;    sudo mn --controller=remote,ip=192.168.2.62 --switch ovsk,protocols=OpenFlow13&lt;/p&gt;


&lt;p&gt;4. Try to install a flow entry to OpenFlow 1.3 switch via RESTCONF.&lt;/p&gt;

&lt;p&gt;curl -v --user &quot;admin&quot;:&quot;admin&quot; -H &quot;Accept: application/xml&quot; -H \&lt;br/&gt;
    &quot;Content-type: application/xml&quot; -X PUT \&lt;br/&gt;
    &lt;a href=&quot;http://localhost:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:1/table/0/flow/1&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://localhost:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:1/table/0/flow/1&lt;/a&gt; \&lt;br/&gt;
    -d &apos;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&amp;gt;&amp;lt;flow xmlns=&quot;urn:opendaylight:flow:inventory&quot;&amp;gt;&amp;lt;priority&amp;gt;2&amp;lt;/priority&amp;gt;&amp;lt;flow-name&amp;gt;Foo&amp;lt;/flow-name&amp;gt;&amp;lt;match&amp;gt;&amp;lt;ethernet-match&amp;gt;&amp;lt;ethernet-type&amp;gt;&amp;lt;type&amp;gt;2048&amp;lt;/type&amp;gt;&amp;lt;/ethernet-type&amp;gt;&amp;lt;/ethernet-match&amp;gt;&amp;lt;ip-match&amp;gt;&amp;lt;ip-protocol&amp;gt;17&amp;lt;/ip-protocol&amp;gt;&amp;lt;/ip-match&amp;gt;&amp;lt;ipv4-destination&amp;gt;10.0.10.2/24&amp;lt;/ipv4-destination&amp;gt;&amp;lt;/match&amp;gt;&amp;lt;id&amp;gt;1&amp;lt;/id&amp;gt;&amp;lt;table_id&amp;gt;0&amp;lt;/table_id&amp;gt;&amp;lt;instructions&amp;gt;&amp;lt;instruction&amp;gt;&amp;lt;order&amp;gt;0&amp;lt;/order&amp;gt;&amp;lt;apply-actions&amp;gt;&amp;lt;action&amp;gt;&amp;lt;order&amp;gt;0&amp;lt;/order&amp;gt;&amp;lt;set-tp-dst-action&amp;gt;&amp;lt;port&amp;gt;5&amp;lt;/port&amp;gt;&amp;lt;/set-tp-dst-action&amp;gt;&amp;lt;/action&amp;gt;&amp;lt;/apply-actions&amp;gt;&amp;lt;/instruction&amp;gt;&amp;lt;/instructions&amp;gt;&amp;lt;/flow&amp;gt;&apos;&lt;/p&gt;


&lt;p&gt;Here is also the pretty format version of the xml.&lt;/p&gt;

&lt;p&gt;&amp;lt;?xml version=&apos;1.0&apos; encoding=&apos;utf-8&apos;?&amp;gt;&lt;br/&gt;
&amp;lt;flow xmlns=&quot;urn:opendaylight:flow:inventory&quot;&amp;gt;&lt;br/&gt;
    &amp;lt;priority&amp;gt;&lt;br/&gt;
        2&lt;br/&gt;
    &amp;lt;/priority&amp;gt;&lt;br/&gt;
    &amp;lt;flow-name&amp;gt;&lt;br/&gt;
        Foo&lt;br/&gt;
    &amp;lt;/flow-name&amp;gt;&lt;br/&gt;
    &amp;lt;match&amp;gt;&lt;br/&gt;
        &amp;lt;ethernet-match&amp;gt;&lt;br/&gt;
            &amp;lt;ethernet-type&amp;gt;&lt;br/&gt;
                &amp;lt;type&amp;gt;&lt;br/&gt;
                    2048&lt;br/&gt;
                &amp;lt;/type&amp;gt;&lt;br/&gt;
            &amp;lt;/ethernet-type&amp;gt;&lt;br/&gt;
        &amp;lt;/ethernet-match&amp;gt;&lt;br/&gt;
        &amp;lt;ip-match&amp;gt;&lt;br/&gt;
            &amp;lt;ip-protocol&amp;gt;&lt;br/&gt;
                17&lt;br/&gt;
            &amp;lt;/ip-protocol&amp;gt;&lt;br/&gt;
        &amp;lt;/ip-match&amp;gt;&lt;br/&gt;
        &amp;lt;ipv4-destination&amp;gt;&lt;br/&gt;
            10.0.10.2/24&lt;br/&gt;
        &amp;lt;/ipv4-destination&amp;gt;&lt;br/&gt;
    &amp;lt;/match&amp;gt;&lt;br/&gt;
    &amp;lt;id&amp;gt;&lt;br/&gt;
        1&lt;br/&gt;
    &amp;lt;/id&amp;gt;&lt;br/&gt;
    &amp;lt;table_id&amp;gt;&lt;br/&gt;
        0&lt;br/&gt;
    &amp;lt;/table_id&amp;gt;&lt;br/&gt;
    &amp;lt;instructions&amp;gt;&lt;br/&gt;
        &amp;lt;instruction&amp;gt;&lt;br/&gt;
            &amp;lt;order&amp;gt;&lt;br/&gt;
                0&lt;br/&gt;
            &amp;lt;/order&amp;gt;&lt;br/&gt;
            &amp;lt;apply-actions&amp;gt;&lt;br/&gt;
                &amp;lt;action&amp;gt;&lt;br/&gt;
                    &amp;lt;order&amp;gt;&lt;br/&gt;
                        0&lt;br/&gt;
                    &amp;lt;/order&amp;gt;&lt;br/&gt;
                    &amp;lt;set-tp-dst-action&amp;gt;&lt;br/&gt;
                        &amp;lt;port&amp;gt;&lt;br/&gt;
                            5&lt;br/&gt;
                        &amp;lt;/port&amp;gt;&lt;br/&gt;
                    &amp;lt;/set-tp-dst-action&amp;gt;&lt;br/&gt;
                &amp;lt;/action&amp;gt;&lt;br/&gt;
            &amp;lt;/apply-actions&amp;gt;&lt;br/&gt;
        &amp;lt;/instruction&amp;gt;&lt;br/&gt;
    &amp;lt;/instructions&amp;gt;&lt;br/&gt;
&amp;lt;/flow&amp;gt;&lt;/p&gt;

&lt;p&gt;At this time, you would see the following WARN message in the karaf.log.&lt;/p&gt;

&lt;p&gt;2015-06-19 03:57:45,087 | WARN  | entLoopGroup-6-1 | OFEncoder                        | 187 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.6.0.Lithium-RC1-v201506160017 | Message serialization failed&lt;br/&gt;
java.lang.ClassCastException: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.UdpSrcCaseBuilder$UdpSrcCaseImpl cannot be cast to org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.UdpDstCase&lt;br/&gt;
    at org.opendaylight.openflowjava.protocol.impl.serialization.match.OxmUdpDstSerializer.serialize(OxmUdpDstSerializer.java:26)&lt;span class=&quot;error&quot;&gt;&amp;#91;187:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.Lithium-RC1-v201506160017&amp;#93;&lt;/span&gt;&lt;br/&gt;
    at org.opendaylight.openflowjava.protocol.impl.serialization.match.OxmUdpDstSerializer.serialize(OxmUdpDstSerializer.java:21)&lt;span class=&quot;error&quot;&gt;&amp;#91;187:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.Lithium-RC1-v201506160017&amp;#93;&lt;/span&gt;&lt;br/&gt;
    at org.opendaylight.openflowjava.protocol.impl.serialization.action.OF13SetFieldActionSerializer.serialize(OF13SetFieldActionSerializer.java:52)&lt;span class=&quot;error&quot;&gt;&amp;#91;187:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.Lithium-RC1-v201506160017&amp;#93;&lt;/span&gt;&lt;br/&gt;
    at org.opendaylight.openflowjava.protocol.impl.serialization.action.OF13SetFieldActionSerializer.serialize(OF13SetFieldActionSerializer.java:30)&lt;span class=&quot;error&quot;&gt;&amp;#91;187:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.Lithium-RC1-v201506160017&amp;#93;&lt;/span&gt;&lt;/p&gt;


&lt;p&gt;5. Check the flow table of the switch on the Mininet.&lt;/p&gt;

&lt;p&gt;mininet&amp;gt; dpctl dump-flows -O OpenFlow13&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;ul&gt;
		&lt;li&gt;
		&lt;ul&gt;
			&lt;li&gt;s1 ------------------------------------------------------------------------&lt;br/&gt;
OFPST_FLOW reply (OF1.3) (xid=0x2):&lt;/li&gt;
		&lt;/ul&gt;
		&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;You would see that the flow entry is not installed.&lt;/p&gt;</comment>
                            <comment id="57148" author="hideyuki.tai@necam.com" created="Fri, 19 Jun 2015 17:54:33 +0000"  >&lt;p&gt;I&apos;ve submitted the patch into the stable/lithium branch of the openflowplugin.git.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/22960/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/22960/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I&apos;ve confirmed that the issue is not occurred with the patch.&lt;br/&gt;
I can successfully install a flow entry which change UDP destination port for OpenFlow 1.3 switch.&lt;/p&gt;</comment>
                            <comment id="57149" author="hideyuki.tai@necam.com" created="Fri, 19 Jun 2015 17:59:01 +0000"  >&lt;p&gt;Also, I observed the same issue for ICMP code field.&lt;/p&gt;

&lt;p&gt;I sent the following XML to the RESTCONF to install a flow entry which change the ICMP code field.&lt;/p&gt;

&lt;p&gt;&amp;lt;?xml version=&apos;1.0&apos; encoding=&apos;utf-8&apos;?&amp;gt;&lt;br/&gt;
&amp;lt;flow xmlns=&quot;urn:opendaylight:flow:inventory&quot;&amp;gt;&lt;br/&gt;
    &amp;lt;priority&amp;gt;&lt;br/&gt;
        2&lt;br/&gt;
    &amp;lt;/priority&amp;gt;&lt;br/&gt;
    &amp;lt;flow-name&amp;gt;&lt;br/&gt;
        Foo&lt;br/&gt;
    &amp;lt;/flow-name&amp;gt;&lt;br/&gt;
    &amp;lt;match&amp;gt;&lt;br/&gt;
        &amp;lt;ethernet-match&amp;gt;&lt;br/&gt;
            &amp;lt;ethernet-type&amp;gt;&lt;br/&gt;
                &amp;lt;type&amp;gt;&lt;br/&gt;
                    2048&lt;br/&gt;
                &amp;lt;/type&amp;gt;&lt;br/&gt;
            &amp;lt;/ethernet-type&amp;gt;&lt;br/&gt;
        &amp;lt;/ethernet-match&amp;gt;&lt;br/&gt;
        &amp;lt;ip-match&amp;gt;&lt;br/&gt;
            &amp;lt;ip-protocol&amp;gt;&lt;br/&gt;
                1&lt;br/&gt;
            &amp;lt;/ip-protocol&amp;gt;&lt;br/&gt;
        &amp;lt;/ip-match&amp;gt;&lt;br/&gt;
        &amp;lt;ipv4-destination&amp;gt;&lt;br/&gt;
            10.0.10.2/24&lt;br/&gt;
        &amp;lt;/ipv4-destination&amp;gt;&lt;br/&gt;
    &amp;lt;/match&amp;gt;&lt;br/&gt;
    &amp;lt;id&amp;gt;&lt;br/&gt;
        1&lt;br/&gt;
    &amp;lt;/id&amp;gt;&lt;br/&gt;
    &amp;lt;table_id&amp;gt;&lt;br/&gt;
        0&lt;br/&gt;
    &amp;lt;/table_id&amp;gt;&lt;br/&gt;
    &amp;lt;instructions&amp;gt;&lt;br/&gt;
        &amp;lt;instruction&amp;gt;&lt;br/&gt;
            &amp;lt;order&amp;gt;&lt;br/&gt;
                0&lt;br/&gt;
            &amp;lt;/order&amp;gt;&lt;br/&gt;
            &amp;lt;apply-actions&amp;gt;&lt;br/&gt;
                &amp;lt;action&amp;gt;&lt;br/&gt;
                    &amp;lt;order&amp;gt;&lt;br/&gt;
                        0&lt;br/&gt;
                    &amp;lt;/order&amp;gt;&lt;br/&gt;
                    &amp;lt;set-tp-dst-action&amp;gt;&lt;br/&gt;
                        &amp;lt;port&amp;gt;&lt;br/&gt;
                            1&lt;br/&gt;
                        &amp;lt;/port&amp;gt;&lt;br/&gt;
                    &amp;lt;/set-tp-dst-action&amp;gt;&lt;br/&gt;
                &amp;lt;/action&amp;gt;&lt;br/&gt;
            &amp;lt;/apply-actions&amp;gt;&lt;br/&gt;
        &amp;lt;/instruction&amp;gt;&lt;br/&gt;
    &amp;lt;/instructions&amp;gt;&lt;br/&gt;
&amp;lt;/flow&amp;gt;&lt;/p&gt;


&lt;p&gt;I saw the following WARN message in the karaf.log.&lt;/p&gt;

&lt;p&gt;2015-06-19 04:40:48,100 | WARN  | entLoopGroup-6-1 | OFEncoder                        | 187 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.6.0.Lithium-RC1-v201506160017 | Message serialization failed&lt;br/&gt;
java.lang.ClassCastException: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Icmpv4CodeCaseBuilder$Icmpv4CodeCaseImpl cannot be cast to org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Icmpv4TypeCase&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.match.OxmIcmpv4TypeSerializer.serialize(OxmIcmpv4TypeSerializer.java:26)&lt;span class=&quot;error&quot;&gt;&amp;#91;187:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.Lithium-RC1-v201506160017&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.match.OxmIcmpv4TypeSerializer.serialize(OxmIcmpv4TypeSerializer.java:21)&lt;span class=&quot;error&quot;&gt;&amp;#91;187:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.Lithium-RC1-v201506160017&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.action.OF13SetFieldActionSerializer.serialize(OF13SetFieldActionSerializer.java:52)&lt;span class=&quot;error&quot;&gt;&amp;#91;187:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.Lithium-RC1-v201506160017&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowjava.protocol.impl.serialization.action.OF13SetFieldActionSerializer.serialize(OF13SetFieldActionSerializer.java:30)&lt;span class=&quot;error&quot;&gt;&amp;#91;187:org.opendaylight.openflowjava.openflow-protocol-impl:0.6.0.Lithium-RC1-v201506160017&amp;#93;&lt;/span&gt;&lt;/p&gt;</comment>
                            <comment id="57150" author="hideyuki.tai@necam.com" created="Mon, 22 Jun 2015 16:31:58 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/22960/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/22960/&lt;/a&gt; (master)&lt;br/&gt;
&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/23012/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/23012/&lt;/a&gt; (stable/lithium)&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10208" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>External issue ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3817</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10201" key="com.atlassian.jira.plugin.system.customfieldtypes:url">
                        <customfieldname>External issue URL</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[https://bugs.opendaylight.org/show_bug.cgi?id=3817]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i031lb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>