Uploaded image for project: 'Commons Net'
  1. Commons Net
  2. NET-335

TelnetOutputStream incorrectly doubles-up IAC when sending IAC+EOR in BINARY transmission mode

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Not A Problem
    • Affects Version/s: 1.4, 2.0
    • Fix Version/s: None
    • Component/s: Telnet
    • Labels:
      None
    • Environment:

      Windows XP SP3, Java 1.6.0_21

      Description

      This is related to NET-180 which I reported a couple of years back, and is reported fixed in 2.1. I've since re-visited the code, and found another issue

      background
      ----------------
      I have a TN5250 client (see rfc1205) which extends TelnetClient. Basically, the client negotiates BINARY transmission and operates in block-mode. The client sends IAC+EOR to notify the host that the data is complete, but the TelnetOutputStream doubles-up the IAC automatically as if it was a data byte, which iis not the case, resulting in IAC+IAC+EOR.

      Two possible solutions come to mind:

      1. Do not double-up IAC when in BINARY transmission in TelnetOutputStream (i.e. leave it to the client)
      2. Add a method to TelnetClient like – sendCommand(byte b)

      {........}

      which would act similar to sendAYT, only allowing the client to specify the value.

      On balance, I like the second option, as it would give more future possibilities.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              jonescg Chris Jones
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: