specified local binding address not used on http client

Clovertech Forums Read Only Archives Cloverleaf Cloverleaf specified local binding address not used on http client

  • Creator
    Topic
  • #53993
    Peter Heggie
    Participant

      This is our first interface using the http client. We cannot get past our firewall/router because the source or local binding address that is observed on the packet is the hardware address, not the HACMP floating address. I specified the floating address on the HTTP client configuration, and I see it in the process log:

      Quote:

      [tps :tps :INFO/1:   to_erx_adt:01/10/2014 14:18:26] tds.string = httpQuery {MSGID message0} {CONTEXT httpc_query} {ARGS {{MSGUSE DATA}}} {MODE run} {VERSION 3.0}

      [tcl :out :INFO/0:   to_erx_adt:01/10/2014 14:18:26] Executing: httpget {URL http://64.46.200.129:80/xapps-beta/xfiles/router1?} {METHOD GET} {HEADERS {{Content-Type “text/xml; charset=utf-8”}}} {OBRESEND 1} {REPLYGEN {

      [tcl :out :INFO/0:   to_erx_adt:–/–/—- –:–:–]             { TYPE none }

      [tcl :out :INFO/0:   to_erx_adt:–/–/—- –:–:–]         }} {TIMEOUT 30} {WAIT 1} {LOCAL_IP 10.32.1.98} {NTIMEOUT 15} {NO_CURL 0} {DATA {MSH|^~@|PMS|JA8|||201401100904||ADT^A08|CHPFQP03|P|2.3

      Quote:

      [http:read:ERR /0:   to_erx_adt:01/10/2014 14:18:26] Error while trying to GET from: http://64.46.200.129:80/xapps-beta/xfiles/router1?.

      [http:read:ERR /0:   to_erx_adt:–/–/—- –:–:–]                       Detailed error:Couldn’t bind to ‘1’

      [http:read:ERR /0:   to_erx_adt:–/–/—- –:–:–]                       Curl errCode:45 Curl error: Failed binding local connection end

      [http:tps :INFO/0:   to_erx_adt:01/10/2014 14:18:26] HTTPResult: {STATUS {HTTP/1.1 400 cURL ERROR 45: Failed binding local connection end}} {HEADERS {}} {BODY {}}

      I actually want to use the POST or PUT method, but am trying GET just to see if I can connect.

      Our network guy is saying that the source address on the packet is not the one I specified in the configuration.

      I am running on 6.0.

      What am I doing wrong?

      Peter Heggie
      PeterHeggie@crouse.org

    Viewing 3 reply threads
    • Author
      Replies
      • #79797
        Peter Heggie
        Participant

          Follow-up to post – I found tcl in ../integrator/tcl/lib/tcl8.5/http1.0/http.tcl that executes the socket function:

          Code:

          if {[info exists phost] && [string length $phost]} {
          set srvurl $url
          set s [socket $phost $pport]
             } else {
          set s [socket $host $port]
             }

          This seems to imply that only the host and port number are passed to the socket call.

          When looking at ../integrator/tcl/lib/tcl8/8.4/http-2.7.6, I see that the socket command can take several options including -myaddr.

          According to tcltk.man (manual on the internet), -myaddr is the way to specify the local address.

          I’m not sure how the tcl code for http calls are resolved – if I’m running Cloverleaf 6.0, am I pulling in the 8.4 code whioch seems to allow for -myaddr, or am I pulling in 8.5 code which seems to not allow the use of -myaddr as an option? Or are both being used? One has a ‘package provide http 1.0’ and the other has an ‘package provide http 2.7.6’.

          Peter Heggie
          PeterHeggie@crouse.org

        • #79798

          Peter, please submit a ticket with Infor Xtreme.

          -- Max Drown (Infor)

        • #79799
          Peter Heggie
          Participant

            Thank you – I submitted an incident this morning.

            Peter Heggie
            PeterHeggie@crouse.org

          • #79800
            Peter Heggie
            Participant

              Issue has been identified as a bug by development and should be fixed in 6.1. I’m not clear if it has to do with running in an HACMP environment.

              Peter Heggie
              PeterHeggie@crouse.org

          Viewing 3 reply threads
          • The forum ‘Cloverleaf’ is closed to new topics and replies.