Skip to content

Fix infinite loop when SSL_CERT_FILE is a directory#17503

Merged
zanieb merged 1 commit intoastral-sh:mainfrom
zaniebot:claude/investigate-issues-tN0fc
Jan 16, 2026
Merged

Fix infinite loop when SSL_CERT_FILE is a directory#17503
zanieb merged 1 commit intoastral-sh:mainfrom
zaniebot:claude/investigate-issues-tN0fc

Conversation

@zanieb
Copy link
Copy Markdown
Member

@zanieb zanieb commented Jan 15, 2026

Closes #17494

See rustls/pki-types#98 for details.

I've posted an upstream fix rustls/pki-types#99 but given the severity I think we should defensively patch this here as well.

@zanieb zanieb added the bug Something isn't working label Jan 15, 2026
When SSL_CERT_FILE points to a directory instead of a file, the code
previously only checked if the path exists, which returns true for
directories. This caused rustls-native-certs to attempt reading the
directory as a certificate file, resulting in an infinite memory
allocation loop.

The fix validates that SSL_CERT_FILE is an actual file before enabling
native TLS certificate loading, and provides a helpful warning message
when the path is not a file.

Closes astral-sh#17494
@zaniebot zaniebot force-pushed the claude/investigate-issues-tN0fc branch from a7e6569 to f13b44c Compare January 15, 2026 22:04
@zanieb zanieb marked this pull request as ready for review January 15, 2026 22:20
@zanieb zanieb merged commit 8968110 into astral-sh:main Jan 16, 2026
53 checks passed
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Jan 27, 2026
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [astral-sh/uv](https://github.com/astral-sh/uv) | patch | `0.9.26` → `0.9.27` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>astral-sh/uv (astral-sh/uv)</summary>

### [`v0.9.27`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#0927)

[Compare Source](astral-sh/uv@0.9.26...0.9.27)

Released on 2026-01-26.

##### Python

- Upgrade Pyodide to 0.29.2 ([#&#8203;17652](astral-sh/uv#17652))
- Upgrade to GraalPy 25.0.2 ([#&#8203;17634](astral-sh/uv#17634))

##### Enhancements

- Add `-t` shortform for `--target` to `uv pip` subcommands ([#&#8203;17501](astral-sh/uv#17501))
- Add support for ROCm 7.0 and 7.1 accelerator backends ([#&#8203;17681](astral-sh/uv#17681))
- Further improve free-threading ABI incompatibility errors ([#&#8203;17491](astral-sh/uv#17491))
- Implement `uv pip freeze --exclude` flag ([#&#8203;17045](astral-sh/uv#17045))
- Improve warnings for `--system` and `--no-system` in `uv venv` ([#&#8203;17647](astral-sh/uv#17647))
- Make `uv pip compile` attempt to download a specified `--python-version` if it can. ([#&#8203;17249](astral-sh/uv#17249))
- Support Trusted Publishing with pyx ([#&#8203;17438](astral-sh/uv#17438))
- Fix JSON schema for `exclude-newer-package` ([#&#8203;17665](astral-sh/uv#17665))

##### Preview features

- Better detection for conflicting packages ([#&#8203;17623](astral-sh/uv#17623))
- Upgrade based on outdated build versions in `uv python upgrade` ([#&#8203;17653](astral-sh/uv#17653))

##### Bug fixes

- Change chocolatey system test to ensure uv uses the right python ([#&#8203;17533](astral-sh/uv#17533))
- Fix infinite loop when `SSL_CERT_FILE` is a directory ([#&#8203;17503](astral-sh/uv#17503))

##### Documentation

- Add cargo-xwin to the CONTRIBUTING guide ([#&#8203;17507](astral-sh/uv#17507))
- Fix typo in the documentation of UV\_PUBLISH\_INDEX ([#&#8203;17672](astral-sh/uv#17672))
- Move MSRV to platform support section ([#&#8203;17534](astral-sh/uv#17534))
- Update the testing instructions in the CONTRIBUTING guide ([#&#8203;17528](astral-sh/uv#17528))
- Use `--locked` to install `cargo-xwin` in guide ([#&#8203;17530](astral-sh/uv#17530))
- Warn about PyPy being unmaintained ([#&#8203;17643](astral-sh/uv#17643))
- docs: Correct gitlab-ci.yml to .gitlab-ci.yml ([#&#8203;17682](astral-sh/uv#17682))

##### Other changes

- Update MSRV to 1.91 ([#&#8203;17677](astral-sh/uv#17677))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi40IiwidXBkYXRlZEluVmVyIjoiNDIuOTIuNCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90IiwiYXV0b21hdGlvbjpib3QtYXV0aG9yZWQiLCJkZXBlbmRlbmN5LXR5cGU6OnBhdGNoIl19-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Infinite allocation loop when SSL_CERT_FILE is a directory

3 participants