Uploaded image for project: 'AMQ Clients'
  1. AMQ Clients
  2. ENTMQCL-472

[j] Broker sends Begin performative with remoteChannel=65535

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Minor Minor
    • None
    • 1.1.0-alpha
    • proton-j
    • Hide

      1. Start the broker on linux
      2. Start the Lite self test

      mstest /testcontainer:./Test.Amqp.Net/Test.Amqp.Net.dll /test:TestMethod_LinkCreateClose
      
      Show
      1. Start the broker on linux 2. Start the Lite self test mstest /testcontainer:./Test.Amqp.Net/Test.Amqp.Net.dll /test:TestMethod_LinkCreateClose

      The self test

                  Connection connection = new Connection(address);
                  Session session = new Session(connection);
                  SenderLink sender = new SenderLink(session, "sender", "q1");
                  ReceiverLink receiver = new ReceiverLink(session, "receiver", "q1");
                  sender.Close(0);
                  receiver.Close(0);
                  session.Close(0);
                  connection.Close();
      

      Gets the broker to send a Begin with a bad remoteChannel

      ◊  ◊◊ 5.494422  Frame 904  10.18.96.1:53310  -> 10.10.62.100:5672  ->   init SASL (3): (1.0.0)
      ◊  ◊◊ 5.494499  Frame 907  10.18.96.1:53310  -> 10.10.62.100:5672  ->   method sasl.init
      ◊  ◊◊ 5.497061  Frame 910  10.18.96.1:53310 <-  10.10.62.100:5672 <-    init SASL (3): (1.0.0), method sasl.mechanisms, method sasl.outcome
      ◊  ◊◊ 5.497119  Frame 911  10.18.96.1:53310 <-  10.10.62.100:5672 <-    init AMQP (0): (1.0.0)
      ◊  ◊◊ 5.583835  Frame 922  10.18.96.1:53310  -> 10.10.62.100:5672  ->   init AMQP (0): (1.0.0)
      ◊  ◊◊ 5.583909  Frame 923  10.18.96.1:53310  -> 10.10.62.100:5672  ->   open [0]
      ◊  ◊◊ 5.583925  Frame 924  10.18.96.1:53310  -> 10.10.62.100:5672  ->   begin [0,null]
      ◊  ◊◊ 5.583952  Frame 926  10.18.96.1:53310  -> 10.10.62.100:5672  ->   attach [0,0] sender sender (source: null, target: q1)
      ◊  ◊◊ 5.584041  Frame 928  10.18.96.1:53310  -> 10.10.62.100:5672  ->   attach [0,1] receiver receiver (source: q1, target: null)
      ◊  ◊◊ 5.584070  Frame 929  10.18.96.1:53310  -> 10.10.62.100:5672  ->   detach [0,0]
      ◊  ◊◊ 5.584082  Frame 930  10.18.96.1:53310  -> 10.10.62.100:5672  ->   detach [0,1]
      ◊  ◊◊ 5.584107  Frame 931  10.18.96.1:53310  -> 10.10.62.100:5672  ->   end [0], close [0]
      ◊  ◊◊ 5.584562  Frame 934  10.18.96.1:53310 <-  10.10.62.100:5672 <-    open [0]
      ◊  ◊◊ 5.585683  Frame 936  10.18.96.1:53310 <-  10.10.62.100:5672 <-    begin [0,65535], end [0], close [0]
         ◊  begin [0,65535]
              Length: 34
              Doff: 2
              Type: AMQP (0)
              Channel: 0
              Performative: begin (17)
              Arguments (list of 5 elements)
                   Remote-Channel: 65535
                   Next-Outgoing-Id: 1
                   Incoming-Window: 2147483647
                   Outgoing-Window: 2147483647
                   Handle-Max: 65535
         ◊  end [0]
         ◊  close [0]
      

      I reproduced this with the broker and client separated by a VPN tunnel. This lets the client send the whole suite `open, begin, attach, detach, end, close` before the broker even returns the initial `open`.

              gemmellr Robbie Gemmell
              crolke@redhat.com Chuck Rolke (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

                Created:
                Updated:
                Resolved: