diff --git a/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java b/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java
index 5ec58a9e9c9cf1724fc0bbf8773e29851a5afa5c..64c32cddff62500735fcd126a02681307027c612 100644
--- a/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java
+++ b/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java
@@ -136,6 +136,7 @@ class EstablishmentManager {
      *
      */
     private static final String VERSION_ALLOW_EXTENDED_OPTIONS = "0.9.22";
+    private static final String PROP_DISABLE_EXT_OPTS = "i2np.udp.disableExtendedOptions";
 
 
     public EstablishmentManager(RouterContext ctx, UDPTransport transport) {
@@ -369,7 +370,8 @@ class EstablishmentManager {
                         return;
                     }
                     boolean allowExtendedOptions = VersionComparator.comp(toRouterInfo.getVersion(),
-                                                                          VERSION_ALLOW_EXTENDED_OPTIONS) >= 0;
+                                                                          VERSION_ALLOW_EXTENDED_OPTIONS) >= 0
+                                                   && !_context.getBooleanProperty(PROP_DISABLE_EXT_OPTS);
                     // w/o ext options, it's always 'requested', no need to set
                     boolean requestIntroduction = allowExtendedOptions && _transport.introducersRequired();
                     state = new OutboundEstablishState(_context, maybeTo, to,
diff --git a/router/java/src/net/i2p/router/transport/udp/UDPPacket.java b/router/java/src/net/i2p/router/transport/udp/UDPPacket.java
index a68b848201d3adc908a9c8dbcc5f1e38c80fddfb..238ec16fd2a347862b58a25b7e30fb186414f11a 100644
--- a/router/java/src/net/i2p/router/transport/udp/UDPPacket.java
+++ b/router/java/src/net/i2p/router/transport/udp/UDPPacket.java
@@ -85,9 +85,9 @@ class UDPPacket implements CDQEntry {
     public static final int PAYLOAD_TYPE_RELAY_INTRO = 5;
     public static final int PAYLOAD_TYPE_DATA = 6;
     public static final int PAYLOAD_TYPE_TEST = 7;
-    public static final int MAX_PAYLOAD_TYPE = PAYLOAD_TYPE_TEST;
     /** @since 0.8.1 */
     public static final int PAYLOAD_TYPE_SESSION_DESTROY = 8;
+    public static final int MAX_PAYLOAD_TYPE = PAYLOAD_TYPE_SESSION_DESTROY;
     
     // various flag fields for use in the header
     /**