PROTON-1767 Allow for the sasl buffer to use a duplicate

Adds support in the SaslImpl for also exposing a duplicate buffer
instead of a read-only variant.
diff --git a/proton-j/src/main/java/org/apache/qpid/proton/engine/impl/SaslImpl.java b/proton-j/src/main/java/org/apache/qpid/proton/engine/impl/SaslImpl.java
index acbf5ea..9125625 100644
--- a/proton-j/src/main/java/org/apache/qpid/proton/engine/impl/SaslImpl.java
+++ b/proton-j/src/main/java/org/apache/qpid/proton/engine/impl/SaslImpl.java
@@ -551,7 +551,13 @@
         {
             _underlyingInput = input;
             _underlyingOutput = output;
-            _head = _outputBuffer.asReadOnlyBuffer();
+
+            if (_transport.isUseReadOnlyOutputBuffer()) {
+                _head = _outputBuffer.asReadOnlyBuffer();
+            } else {
+                _head = _outputBuffer.duplicate();
+            }
+
             _head.limit(0);
         }