curl / curl

A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features
https://curl.se/
Other
35.38k stars 6.36k forks source link

Issue with CURL-8.4.0 on HP-UX (B.11.31 U ia64) platform #12236

Closed 366anish closed 9 months ago

366anish commented 10 months ago

I did this

I am building curl-8.4.0 on more than one platform (Linux , Window32, 64, solaris and AIX ) . After build we trigger the command to verify the executables. When we ran the cmd: "./curl www.google.com " , I got the response back on all the platform except HP-UX. The failure message I got on HP-UX : "Failed to connect to www.google.com port 80 after 76376 ms: Could't connect to server" When reverted back the changes, pull request: https://github.com/curl/curl/pull/11718 , started getting response on running cmd : "./curl www.google.com". FYI: Check with different urls also. compiler used: ACXX C.06.28 HP C/aC++ Compiler C-ANSI-C C.06.28 HP C/aC++ Compiler

I expected the following

Expect to get response when run the cmd "./curl www.google.com" on HP-UX machine.

curl/libcurl version

curl 8.4.0

operating system

HP-UX hpipf27 B.11.31 U ia64 0905684060 unlimited-user license

bagder commented 10 months ago

/cc @michael-o

michael-o commented 10 months ago

Let me verify that, but first of all you must upgrade to aC++ 6.29. I won't test anything with an older Compiler. Download the depot from HPE support center.

michael-o commented 10 months ago
# uname -a
HP-UX deblndw0 B.11.31 U ia64 HP-UX
export PREFIX=/opt/ports
export LIBDIR=$PREFIX/lib/hpux32
export SYSCONFDIR=/etc/opt/ports
export CC=/opt/aCC/bin/aCC
export CXX=/opt/aCC/bin/aCC
export CONFIGURE="./configure --prefix=$PREFIX --libdir=$LIBDIR --sysconfdir=$SYSCONFDIR --localstatedir=/var"
export CPPFLAGS="-I$PREFIX/include"
export CFLAGS="+We901"
export CXXFLAGS="+We901"
export LDFLAGS="-L$LIBDIR"
export HELP="./configure --help"
root@deblndw002x:/var/tmp/ports/work/curl-8.4.0
# $CONFIGURE --with-gssapi=$PREFIX --with-zlib --with-openssl=/opt/openssl --with-ca-fallback --disable-threaded-resolver --disable-dependency-tracking
...
configure: Configured to build curl/libcurl:

  Host setup:       ia64-hp-hpux11.31
  Install prefix:   /opt/ports
  Compiler:         /opt/aCC/bin/aCC -AC99
   CFLAGS:          +We901 -z +W 4227,4255 +O2
   CPPFLAGS:        -I/opt/ports/include -I/opt/ports/include -I/opt/openssl/include
   LDFLAGS:         -L/opt/ports/lib/hpux32 -L/opt/openssl/lib
   LIBS:            -lssl -lcrypto -L/opt/ports/lib/hpux32 -Wl,+b,/opt/ports/lib/hpux32 -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lldap -lz

  curl version:     8.4.0
  SSL:              enabled (OpenSSL)
  SSH:              no      (--with-{libssh,libssh2})
  zlib:             enabled
  brotli:           no      (--with-brotli)
  zstd:             no      (--with-zstd)
  GSS-API:          enabled (MIT Kerberos/Heimdal)
  GSASL:            no      (libgsasl not found)
  TLS-SRP:          enabled
  resolver:         default (--enable-ares / --enable-threaded-resolver)
  IPv6:             enabled
  Unix sockets:     enabled
  IDN:              no      (--with-{libidn2,winidn})
  Build libcurl:    Shared=yes, Static=yes
  Built-in manual:  enabled
  --libcurl option: enabled (--disable-libcurl-option)
  Verbose errors:   enabled (--disable-verbose)
  Code coverage:    disabled
  SSPI:             no      (--enable-sspi)
  ca cert bundle:   no
  ca cert path:     no
  ca fallback:      yes
  LDAP:             enabled (OpenLDAP)
  LDAPS:            enabled
  RTSP:             enabled
  RTMP:             no      (--with-librtmp)
  PSL:              no      (libpsl not found)
  Alt-svc:          enabled (--disable-alt-svc)
  Headers API:      enabled (--disable-headers-api)
  HSTS:             enabled (--disable-hsts)
  HTTP1:            enabled (internal)
  HTTP2:            no      (--with-nghttp2, --with-hyper)
  HTTP3:            no      (--with-ngtcp2 --with-nghttp3, --with-quiche, --with-msh3)
  ECH:              no      (--enable-ech)
  WebSockets:       no      (--enable-websockets)
  Protocols:        DICT FILE FTP FTPS GOPHER GOPHERS HTTP HTTPS IMAP IMAPS LDAP LDAPS MQTT POP3 POP3S RTSP SMB SMBS SMTP SMTPS TELNET TFTP
  Features:         GSS-API HSTS HTTPS-proxy IPv6 Kerberos Largefile NTLM SPNEGO SSL TLS-SRP UnixSockets alt-svc libz

root@deblndw002x:/var/tmp/ports/work/curl-8.4.0
# gmake
...
root@deblndw002x:/var/tmp/ports/work/curl-8.4.0
# export LD_LIBRARY_PATH=./lib/.libs
root@deblndw002x:/var/tmp/ports/work/curl-8.4.0
# ./src/.libs/curl --version
curl 8.4.0 (ia64-hp-hpux11.31) libcurl/8.4.0 OpenSSL/1.1.1t zlib/1.2.3 OpenLDAP/2.6.6
Release-Date: 2023-10-11
Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: alt-svc GSS-API HSTS HTTPS-proxy IPv6 Kerberos Largefile libz NTLM SPNEGO SSL TLS-SRP UnixSockets
root@deblndw002x:/var/tmp/ports/work/curl-8.4.0
# ./src/.libs/curl --verbose www.google.com -I
* Uses proxy env variable NO_PROXY == 'localhost,.siemens.net,.siemens.com,.siemens.de,.siemens.cloud'
* timeout on name lookup is not supported
*   Trying 142.250.186.132:80...
* Connected to www.google.com (142.250.186.132) port 80
> HEAD / HTTP/1.1
> Host: www.google.com
> User-Agent: curl/8.4.0
> Accept: */*
>
< HTTP/1.1 200 OK
HTTP/1.1 200 OK
< Content-Type: text/html; charset=ISO-8859-1
Content-Type: text/html; charset=ISO-8859-1
< Content-Security-Policy-Report-Only: object-src 'none';base-uri 'self';script-src 'nonce-A34s26VNX7-OUTWEoZm7kg' 'strict-dynamic' 'report-sample' 'unsafe-eval' 'unsafe-inline' https: http:;report-uri https://csp.withgoogle.com/csp/gws/other-hp
Content-Security-Policy-Report-Only: object-src 'none';base-uri 'self';script-src 'nonce-A34s26VNX7-OUTWEoZm7kg' 'strict-dynamic' 'report-sample' 'unsafe-eval' 'unsafe-inline' https: http:;report-uri https://csp.withgoogle.com/csp/gws/other-hp
< Date: Tue, 31 Oct 2023 14:39:34 GMT
Date: Tue, 31 Oct 2023 14:39:34 GMT
< Server: gws
Server: gws
< X-XSS-Protection: 0
X-XSS-Protection: 0
< X-Frame-Options: SAMEORIGIN
X-Frame-Options: SAMEORIGIN
< Transfer-Encoding: chunked
Transfer-Encoding: chunked
< Expires: Tue, 31 Oct 2023 14:39:34 GMT
Expires: Tue, 31 Oct 2023 14:39:34 GMT
< Cache-Control: private
Cache-Control: private
< Set-Cookie: AEC=Ackid1SbPSU1xr79Nyfpe2Yuq5y8_4_BLk5L8mZloFiuJkd9rziWLHA7low; expires=Sun, 28-Apr-2024 14:39:34 GMT; path=/; domain=.google.com; Secure; HttpOnly; SameSite=lax
Set-Cookie: AEC=Ackid1SbPSU1xr79Nyfpe2Yuq5y8_4_BLk5L8mZloFiuJkd9rziWLHA7low; expires=Sun, 28-Apr-2024 14:39:34 GMT; path=/; domain=.google.com; Secure; HttpOnly; SameSite=lax
< Connection: close
Connection: close

<
* Closing connection

I cannot reproduce it.

bagder commented 10 months ago

@366anish exactly how did you build curl? What command line(s)? The 1a14f2179b756d commit looks totally sane to me.

366anish commented 10 months ago

Hi @bagder , The cmd line used :

TOOLVER=8.4.0 gmake tool-configure TOOLVER=8.4.0 gmake prep-prgs-install

Note: zlib and OpenLDAP is disabled .

366anish commented 10 months ago

Let me verify that, but first of all you must upgrade to aC++ 6.29. I won't test anything with an older Compiler. Download the depot from HPE support center.

Okay @michael-o , We will try to upgrade the compiler then let you know the status.

michael-o commented 10 months ago

Hi @bagder , The cmd line used :

TOOLVER=8.4.0 gmake tool-configure TOOLVER=8.4.0 gmake prep-prgs-install

Note: zlib and OpenLDAP is disabled .

That isn't helpful because those are you private tools, totally opaque to us.

bagder commented 10 months ago

@366anish what if you build with a plain configure command line and gmake? We need more details here in order to act, if there is anything to act on. For now, it seems more likely that your problem is due to your own scripts than curl.

tejaswid328 commented 10 months ago

@366anish I am also getting the same connection issue on HPUX 64 bit machine. But when I reverted back the PR #11718, the connection is successful.

michael-o commented 10 months ago

@366anish I am also getting the same connection issue on HPUX 64 bit machine. But when I reverted back the PR #11718, the connection is successful.

Share your build details...

tejaswid328 commented 10 months ago

Let me verify that, but first of all you must upgrade to aC++ 6.29. I won't test anything with an older Compiler. Download the depot from HPE support center.

Hi @michael-o, Is it possible for Curl to encounter failures when used with older HP compilers? Is there any pre-requisite(README or release note) stating that aC++ 6.29 compiler should be used for 8.40 Curl?

michael-o commented 10 months ago

Let me verify that, but first of all you must upgrade to aC++ 6.29. I won't test anything with an older Compiler. Download the depot from HPE support center.

Hi @michael-o, Is it possible for Curl to encounter failures when used with older HP compilers? Is there any pre-requisite(README or release note) stating that aC++ 6.29 compiler should be used for 8.40 Curl?

This I cannot tell, but 6.29 is already seven years old. There is ZERO reason not to use it especially because there won't be a newer one.

michael-o commented 10 months ago

Anyone updated the compiler and retried?

bagder commented 9 months ago

Is there any pre-requisite (README or release note) stating that aC++ 6.29 compiler should be used for 8.40 Curl?

No. curl should be possible to build with older versions of your compiler, but in order to know how to correct this problem we need more details about the problem. The change you identified as the problem seems totally innocuous and correct to me.

If you cannot upgrade the compiler and test with that, I want you to help us and better identify what exactly is wrong with the change, or perhaps what in the change that caused your version of the compiler to behave badly.

bagder commented 9 months ago

Almost a month, no additional info. Closing.

michael-o commented 9 months ago

Almost a month, no additional info. Closing.

Did you expect anything else?