Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e4e00fb8 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "OBEX: Reduce Obex MTU size for A2DP or SCO concurrency"

parents 652a6c2c fecb9514
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -59,6 +59,8 @@ public final class ClientSession extends ObexSession {

    private boolean mRequestActive;

    private boolean setMTU = false;

    private final InputStream mInput;

    private final OutputStream mOutput;
@@ -245,6 +247,10 @@ public final class ClientSession extends ObexSession {
        return ObexHelper.convertToLong(mConnectionId);
    }

    public void reduceMTU(boolean enable) {
        setMTU = enable;
    }

    public Operation put(HeaderSet header) throws IOException {
        if (!mObexConnected) {
            throw new IOException("Not connected to the server");
@@ -451,7 +457,9 @@ public final class ClientSession extends ObexSession {
                maxPacketSize = (mInput.read() << 8) + mInput.read();

                //check with local max size
                if (maxPacketSize > ObexHelper.MAX_CLIENT_PACKET_SIZE) {
                if (setMTU) {
                    maxPacketSize = ObexHelper.A2DP_SCO_OBEX_MAX_CLIENT_PACKET_SIZE;
                } else if (maxPacketSize > ObexHelper.MAX_CLIENT_PACKET_SIZE) {
                    maxPacketSize = ObexHelper.MAX_CLIENT_PACKET_SIZE;
                }

+1 −0
Original line number Diff line number Diff line
@@ -77,6 +77,7 @@ public final class ObexHelper {
     * TODO: Should be removed as soon as Microsoft updates their driver.
     */
    public static final int MAX_CLIENT_PACKET_SIZE = 0xFC00;
    public static final int A2DP_SCO_OBEX_MAX_CLIENT_PACKET_SIZE = 0x2000;

    public static final int OBEX_OPCODE_CONNECT = 0x80;