--- openflow-2008-11-25-2.h	2015-07-23 09:54:15.624479300 -0700
+++ openflow-2008-11-26.h	2015-07-23 09:54:15.628479300 -0700
@@ -68,7 +68,7 @@
 #define OFP_MAX_TABLE_NAME_LEN 32
 #define OFP_MAX_PORT_NAME_LEN  16
 
-#define OFP_TCP_PORT  975
+#define OFP_TCP_PORT  6633
 #define OFP_SSL_PORT  6633
 
 #define OFP_ETH_ALEN 6          /* Bytes in an Ethernet address. */
@@ -130,7 +130,7 @@
     uint8_t version;    /* OFP_VERSION. */
     uint8_t type;       /* One of the OFPT_ constants. */
     uint16_t length;    /* Length including this ofp_header. */
-    uint32_t xid;       /* Transaction id associated with this packet.
+    uint32_t xid;       /* Transactin id associated with this packet.
                            Replies use the same id as was in the request
                            to facilitate pairing. */
 };
@@ -183,8 +183,7 @@
     OFPPC_PORT_DOWN    = 1 << 0,  /* Port is administratively down. */
 
     OFPPC_NO_STP       = 1 << 1,  /* Disable 802.1D spanning tree on port. */
-    OFPPC_NO_RECV      = 1 << 2,  /* Drop all packets except 802.1D spanning
-                                     tree packets. */
+    OFPPC_NO_RECV      = 1 << 2,  /* Drop most packets received on port. */
     OFPPC_NO_RECV_STP  = 1 << 3,  /* Drop received 802.1D STP packets. */
     OFPPC_NO_FLOOD     = 1 << 4,  /* Do not include this port when flooding. */
     OFPPC_NO_FWD       = 1 << 5,  /* Drop packets forwarded to port. */
@@ -470,6 +469,11 @@
     OFPFW_ALL = ((1 << 20) - 1)
 };
 
+/* The wildcards for ICMP type and code fields use the transport source 
+ * and destination port fields, respectively. */
+#define OFPFW_ICMP_TYPE OFPFW_TP_SRC
+#define OFPFW_ICMP_CODE OFPFW_TP_DST
+
 /* Values below this cutoff are 802.3 packets and the two bytes
  * following MAC addresses are used as a frame length.  Otherwise, the
  * two bytes are used as the Ethernet type.
@@ -503,6 +507,11 @@
 };
 OFP_ASSERT(sizeof(struct ofp_match) == 36);
 
+/* The match fields for ICMP type and code use the transport source and 
+ * destination port fields, respectively. */
+#define icmp_type tp_src
+#define icmp_code tp_dst
+
 /* Value used in "idle_timeout" and "hard_timeout" to indicate that the entry
  * is permanent. */
 #define OFP_FLOW_PERMANENT 0
@@ -743,13 +752,10 @@
     uint64_t rx_dropped;     /* Number of packets dropped by RX. */ 
     uint64_t tx_dropped;     /* Number of packets dropped by TX. */ 
     uint64_t rx_errors;      /* Number of receive errors.  This is a super-set
-                                of more specific receive errors and should be
-                                greater than or equal to the sum of all 
-                                rx_*_err values. */
+                                of receive errors and should be great than or
+                                equal to the sum of al rx_*_err values. */
     uint64_t tx_errors;      /* Number of transmit errors.  This is a super-set
-                                of more specific transmit errors and should be
-                                greater than or equal to the sum of all
-                                tx_*_err values (none currently defined.) */
+                                of transmit errors. */
     uint64_t rx_frame_err;   /* Number of frame alignment errors. */ 
     uint64_t rx_over_err;    /* Number of packets with RX overrun. */ 
     uint64_t rx_crc_err;     /* Number of CRC errors. */ 
