Home - Waterfall Grid T-Grid Console Builders Recent Builds Buildslaves Changesources - JSON API - About

Builder curl-unthreaded-solaris10-sparc Build #14129

Results:

Failed runtest

SourceStamp:

Projectcurl
Repositoryhttps://github.com/curl/curl.git
Branchmaster
Revision73d15fcb1a7d7645fdc0626312a9f12aa82cf2ff
Got Revision73d15fcb1a7d7645fdc0626312a9f12aa82cf2ff
Changes13 changes

BuildSlave:

unstable10s

Reason:

The SingleBranchScheduler scheduler named 'schedule-curl-unthreaded-solaris10-sparc' triggered this build

Steps and Logfiles:

  1. git update ( 36 secs )
    1. stdio
  2. Runtest './tests/testcurl.pl --nogitpull ...' failed ( 6 hrs, 6 mins, 38 secs )
    1. stdio
    2. resultlog
  3. Mail result 'cat resultlog ...' ( 0 secs )
    1. stdio

Build Properties:

NameValueSource
branch master Build
builddir /export/home/buildbot-unstable10s/slave/curl-unthreaded-solaris10-sparc slave
buildername curl-unthreaded-solaris10-sparc Builder
buildnumber 14129 Build
codebase Build
got_revision 73d15fcb1a7d7645fdc0626312a9f12aa82cf2ff Git
osplatform SPARC SetPropertyFromCommand Step
osrelease 10 SetPropertyFromCommand Step
project curl Build
repository https://github.com/curl/curl.git Build
revision 73d15fcb1a7d7645fdc0626312a9f12aa82cf2ff Build
scheduler schedule-curl-unthreaded-solaris10-sparc Scheduler
slavename unstable10s BuildSlave
workdir /export/home/buildbot-unstable10s/slave/curl-unthreaded-solaris10-sparc slave (deprecated)

Forced Build Properties:

NameLabelValue

Responsible Users:

  1. Bobbeh Rhino
  2. Daniel Stenberg
  3. Joshua Rogers
  4. Stefan Eissing
  5. Viktor Szakats
  6. ldm0
  7. renovate[bot]

Timing:

StartFri Sep 11 17:37:27 2026
EndSat Sep 12 07:48:26 2026
Elapsed14 hrs, 10 mins, 59 secs

All Changes:

:

  1. Change #281429

    Category curl
    Changed by Daniel Stenberg <danielohnoyoudont@haxx.se>
    Changed at Fri 11 Sep 2026 08:23:35
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision 2db7d4d6ea6c2f58c1a545acac43db61b21ff9c6

    Comments

    lib: make private functions static and remove unused code
    - multi: make multi_xfers_running() static
    - hash: made hash_str() static
    - splay: make splay() static
    - splay: make Curl_splayget() present only for unittests
    - splay: make splaygetbest() static
    - splay: make splayinsert() static
    - splay: make splayremove() static
    - splay: remove Curl_splayset(): not used
    - uint-hashset: make u8_strset_set() static
    - llist: make llist_insert_next() static
    - sendf: remove Curl_creader_resume_from(), not used anymore
    
    Closes #22906

    Changed files

    • docs/internals/LLIST.md
    • docs/internals/SPLAY.md
    • lib/hash.c
    • lib/hash.h
    • lib/llist.c
    • lib/llist.h
    • lib/multi.c
    • lib/multiif.h
    • lib/sendf.c
    • lib/sendf.h
    • lib/splay.c
    • lib/splay.h
    • lib/uint-hashset.c
    • lib/uint-hashset.h
    • tests/unit/unit1300.c
    • tests/unit/unit1309.c
    • tests/unit/unit1603.c
    • tests/unit/unit3211.c
  2. Change #281436

    Category curl
    Changed by Bobbeh Rhino <bobbehohnoyoudont@rhino.Rhino>
    Changed at Fri 11 Sep 2026 08:33:06
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision dc055e8a9eefe65cf63cb0396668a37c0b7c474a

    Comments

    libssh2: skip repeat checkp() for already-absent hashed key types
    ssh_force_knownhost_key_type() called libssh2_knownhost_checkp() once
    per hashed known_hosts entry, and each call itself rescans the whole
    known_hosts set. Cache key types already confirmed absent for the
    connecting host so repeat entries of the same type do not each trigger
    another full scan. checkp() NOTFOUND for a given (host, port, type) is
    independent of the key bytes passed in, so this is safe.
    
    Behavior for MATCH is unchanged, and only store->typemask is read
    after a match, which is identical for any entry of the same type.
    
    Tests: runtests.pl 3500 1459 600, full SFTP/SCP keyword set (58/58),
    checksrc.pl.
    
    Closes #22905

    Changed files

    • lib/vssh/libssh2.c
  3. Change #281437

    Category curl
    Changed by Joshua Rogers <MegaManSecohnoyoudont@users.noreply.github.com>
    Changed at Fri 11 Sep 2026 08:35:38
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision a15c4a7f8c1bd0586012b532f51ac5aee00bfe0b

    Comments

    headers: avoid O(n^2) rescans in curl_easy_nextheader()
    Every call rescanned the entire header list from the head and did a full
    name comparison against each entry just to recompute amount/ index for
    the one header being returned, making a sequential enumeration of N
    headers O(n^2).
    
    Cache the previous pick's name/origin/request/amount/index; when the
    next call continues from exactly that node with the same filters, reuse
    the cached amount and increment the index instead of rescanning. Any
    other pattern (restart, filter change, non-sequential prev) falls back
    to the original full scan, so behavior is unchanged.
    
    Closes #22898

    Changed files

    • lib/headers.c
    • lib/headers.h
    • lib/urldata.h
    • tests/data/test1945
  4. Change #281438

    Category curl
    Changed by Joshua Rogers <MegaManSecohnoyoudont@users.noreply.github.com>
    Changed at Fri 11 Sep 2026 08:44:00
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision 3341da7dc27256373de366b163e6b70a6606ba38

    Comments

    happy eyeballs: bound work from many duplicate/failing addresses
    A DNS response with many duplicate addresses that fail to connect
    synchronously could stall a transfer: failed attempts were never
    pruned from the running list (cf_ip_ballers_prune only removes
    still-ongoing ones), so every new address triggered a full rescan and
    an O(n) tail-walk to append, and the connection timeout was only
    checked after the loop, not during it.
    
    Free hard-failed attempts immediately instead of accumulating them,
    track a tail pointer for O(1) appends, and check the timeout on each
    iteration. Also cap and deduplicate the addresses converted from a
    c-ares response, closing off the unbounded input side.
    
    Closes #22897

    Changed files

    • lib/cf-ip-happy.c
    • lib/vdns/asyn-ares.c
  5. Change #281440

    Category curl
    Changed by ldm0 <dingming.liuohnoyoudont@lexmount.com>
    Changed at Fri 11 Sep 2026 09:02:40
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision 9e6673fb7d55b40d18383f49f465f1bd1cfce1ee

    Comments

    conncache: avoid evicting connect-only connections
    Apply global idle checks to the per-host limit so CONNECT_ONLY sockets
    remain available to the application.
    
    Closes #22902

    Changed files

    • lib/conncache.c
    • tests/data/Makefile.am
    • tests/data/test3231
    • tests/data/test3232
    • tests/libtest/Makefile.inc
    • tests/libtest/lib3231.c
  6. Change #281460

    Category curl
    Changed by Stefan Eissing <stefanohnoyoudont@eissing.org>
    Changed at Fri 11 Sep 2026 10:58:10
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision a7b42cc90cbcb09f4813253ac97ea96c10fd9e94

    Comments

    urldata: remove ssl_primary_config from easy handle
    Rename the two structs for clarity:
    - `ssl_config_data` -> `ssl_easy_config`
    - `ssl_primary_config` -> `ssl_filter_config`
    
    The easy handle owned 2 `struct ssl_primary_config` when curl is built
    with proxy support. These structs were only intended for use during
    connection matching and, for a new connection, cloned into the
    `connectdata` struct. Their presence in the easy handle led to some
    misuses as they only contained "shallow" references there to config data
    that may change unnoticed.
    
    Remove these from the easy handle and keep them in the url connection
    matcher on the stack.
    
    Removal also found several places in TLS backends where the struct from
    the easy handle was used wrongly instead of the connection's version.
    
    This should shrink the easy handle by another ~300 bytes.
    
    Closes #22901

    Changed files

    • lib/ldap.c
    • lib/setopt.c
    • lib/url.c
    • lib/urldata.h
    • lib/vdns/doh.c
    • lib/vquic/cf-ngtcp2-cmn.c
    • lib/vquic/cf-ngtcp2-cmn.h
    • lib/vquic/cf-ngtcp2-proxy.c
    • lib/vquic/cf-quiche.c
    • lib/vquic/vquic-tls.c
    • lib/vquic/vquic-tls.h
    • lib/vssh/libssh.c
    • lib/vssh/libssh2.c
    • lib/vssh/ssh.h
    • lib/vssh/vssh.c
    • lib/vtls/apple.c
    • lib/vtls/gtls.c
    • lib/vtls/gtls.h
    • lib/vtls/mbedtls.c
    • lib/vtls/openssl.c
    • lib/vtls/rustls.c
    • lib/vtls/schannel.c
    • lib/vtls/schannel_verify.c
    • lib/vtls/vtls.c
    • lib/vtls/vtls.h
    • lib/vtls/vtls_config.c
    • lib/vtls/vtls_config.h
    • lib/vtls/vtls_scache.c
    • lib/vtls/vtls_scache.h
    • lib/vtls/wolfssl.c
    • tests/unit/unit3303.c
    • tests/unit/unit3304.c
  7. Change #281465

    Category curl
    Changed by Viktor Szakats <commitohnoyoudont@vsz.me>
    Changed at Fri 11 Sep 2026 13:19:24
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision cbd19a9b267ae4c38037bde30644e90f92dae103

    Comments

    GHA: drop local fuzzer job in favor of running within the curl-fuzzer repo
    To save resources by fuzzing on a scheduled basis within the
    curl/curl-fuzzer repo, replacing runs on every curl/curl PR commit push
    and master pushes. Also to keep the CI build cycle under the 10-minute
    mark.
    
    As the scope of fuzzing extends, the necessary resources are growing
    with it. At the time of writing this, these consist of:
    - 1 build job. (building curl, curl dependencies, and fuzzer
      components.)
    - taking 15 minutes (with optimizations and build caching).
      Actual fuzzing starts after completing this step.
    - 39 fuzzing jobs.
    - taking 2-4 minutes (average ~3.5 minutes) per job.
      They are parallelized by GHA, taking 4-5 minutes in total.
    - build + fuzzing completing in 18-20 minutes.
    - 700 MB worth of fuzzer artifacts per run.
    - 31 Action build cache entries, 74 MB each, 2.2 GB in total.
      (that's with trimming the build directory before caching it)
    
    Compare this to the rest of jobs where the longest running one finishes
    under 10 minutes.
    
    (The local fuzzer job was also using an unpinned Action (and another
    unpinned one transitively), which is in practice unfixable, and which
    caused exceptions in systems ensuring that we pin everything. The scope
    of this issue reduces to the fuzzer repo after this patch.)
    
    Ref: https://github.com/curl/curl/pull/22904#issuecomment-5625358492
    Ref: #22907
    
    Closes #22908

    Changed files

    • .github/workflows/fuzz.yml
    • docs/tests/CI.md
  8. Change #281466

    Category curl
    Changed by renovate[bot] <29139614+renovate[bot]ohnoyoudont@users.noreply.github.com>
    Changed at Fri 11 Sep 2026 13:23:17
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision 805b9418a9287e3a477c3bd0ba322ad22158656c

    Comments

    GHA: update pip dependencies
    - pyrefly to v1.3.0
    - ruff to v0.16.7
    
    Closes #22891
    Closes #22909

    Changed files

    • .github/scripts/requirements.txt
  9. Change #281486

    Category curl
    Changed by Stefan Eissing <stefanohnoyoudont@eissing.org>
    Changed at Fri 11 Sep 2026 15:02:58
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision 3ddbd522b9fb2cc45f228d38a26bb0458eb86d35

    Comments

    dnscache/conncache tweaks
    - pass more `struct curltime` pointers around
    - as hash keys are now bytes, make the dnscache entry key
      binary as well, no longer using printf() for formatting
    - restrict hostname entry lengths to UINT16_MAX and fail otherwise
    - add a `permanent` bit to entries
    
    Closes #22900

    Changed files

    • lib/conncache.c
    • lib/conncache.h
    • lib/multi.c
    • lib/vdns/dnscache.c
    • lib/vdns/dnscache.h
    • tests/unit/unit1607.c
  10. Change #281488

    Category curl
    Changed by Joshua Rogers <MegaManSecohnoyoudont@users.noreply.github.com>
    Changed at Fri 11 Sep 2026 15:04:26
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision 89ca8fe80ad4ca6434724a4ed287850deabe9766

    Comments

    cw-out: avoid O(n^2) work while buffering paused output
    Improves paused-output buffer performance without changing protocol
    behavior.
    
    The buffer chain now keeps a tail pointer, so appending does not
    repeatedly walk the list, and tracks the total buffered length instead
    of rescanning every buffer on each append. Flushing proceeds from the
    oldest buffer iteratively.
    
    This reduces buffering many paused writes from quadratic list/replay
    bookkeeping to linear work.
    
    Closes #22896

    Changed files

    • lib/cw-out.c
  11. Change #281490

    Category curl
    Changed by Joshua Rogers <MegaManSecohnoyoudont@users.noreply.github.com>
    Changed at Fri 11 Sep 2026 15:14:09
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision 5fb7e612f3de7b5c8482614985b0a7db006a3e3d

    Comments

    dynhds: grow header array geometrically
    Curl_dynhds_add grew its pointer array by a fixed 16 slots per resize,
    copying every existing pointer each time and doing O(n^2) aggregate work
    across n inserts. Grow geometrically instead for amortized O(1) appends.
    
    Closes #22910

    Changed files

    • lib/dynhds.c
  12. Change #281491

    Category curl
    Changed by Joshua Rogers <MegaManSecohnoyoudont@users.noreply.github.com>
    Changed at Fri 11 Sep 2026 15:21:43
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision 997f66e4656de2ff6db391fd8c1d878e0587726d

    Comments

    fnmatch: replace recursive matcher with iterative greedy algorithm
    The fallback matcher did recursive backtracking and could do O(pattern
    length * string length^2) work for a non-match. Use iterative greedy
    matching that backtracks only to the most recent '*', reducing the bound
    to O(pattern length * string length). Preserve the existing wildcard
    syntax and two-star-group limit.
    
    Closes #22911

    Changed files

    • lib/curl_fnmatch.c
    • tests/unit/unit1307.c
  13. Change #281507

    Category curl
    Changed by Viktor Szakats <commitohnoyoudont@vsz.me>
    Changed at Fri 11 Sep 2026 16:56:51
    Repository https://github.com/curl/curl.git
    Project curl
    Branch master
    Revision 73d15fcb1a7d7645fdc0626312a9f12aa82cf2ff

    Comments

    GHA: switch back to Azure apt mirror, strip the rest
    Hopefully fixing:
    ```
    Get:1 file:/etc/apt/apt-mirrors.txt Mirrorlist [144 B]
      Hit:2 https://archive.ubuntu.com/ubuntu noble InRelease
      Error: The action has timed out.
    ```
    Ref: https://github.com/curl/curl/actions/runs/34571926256/job/103175759594#step:2:66
    
    Follow-up to 50ff4f2927e3e319d39ba86bbcac3f57e5c89984 #21414
    
    Closes #22912

    Changed files

    • .github/actions/pkg-install/action.yml