Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Not A Problem
    • 4.1.2, 5.2.0
    • 5.3.0
    • Geronimo Integration
    • None
    • Windows XP + SUN JDK 1.5

    • Patch Available

    Description

      ActiveMQ server socket created with TcpTransportServer can't bind to localhost or actuall IP correctly.

      • expected result:
        • localhost ---> bind to 127.0.0.1
        • actual IP ----> bind to actual IP
      • actual result:
        • localhost ---> bind to 0.0.0.0
        • actual IP ----> bind to 0.0.0.0
      "org.apache.activemq.transport.tcp.TcpTransportServer"
        
            InetAddress addr = InetAddress.getByName(host);
      
             try {
                 if (host.trim().equals("localhost") || \
      addr.equals(InetAddress.getLocalHost())) {  //#1 start the socket with 0.0.0.0
                  this.serverSocket = \
      serverSocketFactory.createServerSocket(bind.getPort(), backlog);  }
                 else {
                  //#2  start the socket with the ip spcified in addr.
                  this.serverSocket = \
      serverSocketFactory.createServerSocket(bind.getPort(), backlog, addr);  }
      

      Since if you config the real IP as a host setting, \
      addr.equals(InetAddress.getLocalHost()) will allways be true so that the #1 will be used to start the socket with 0.0.0.0 by default. Which causes a defect of geronimo: https://issues.apache.org/jira/browse/GERONIMO-4404

      Attachments

        1. AMQ-2094.patch
          1.0 kB
          Lin Quan Jiang

        Issue Links

          Activity

            People

              Unassigned Unassigned
              genspring Lin Quan Jiang
              Votes:
              2 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: