mirror of
https://github.com/BerriAI/litellm.git
synced 2026-10-27 06:13:07 +00:00
The route-level gate ran on the raw endpoint string, so a percent-encoded management segment reached the forwarder: /openai/v1/%2566iles passes the prefix list, then httpx decodes the wire path once and the upstream decodes again - /v1/files lands on the shared account's file list with the proxy's credentials. Absolute endpoint strings did the same jump by construction. The gate now decides on the iteratively decoded path (bounded at 3 rounds; the wire carries %66 for the /openai/v1/%2566iles shape), and the authoritative check also runs inside the passthrough handler on the httpx-resolved joined URL, so the exact forwarded value is authorized before the call. Regression tests cover the encoded spellings (mixed case included) and both absolute shapes; the pre-existing prints stay untouched. Generated-by: termag |
||
|---|---|---|
| .. | ||
| _support | ||
| base_sdk_tests | ||
| benchmarks | ||
| code_coverage_tests | ||
| documentation_tests | ||
| e2e | ||
| e2e_harness | ||
| fixtures | ||
| harness_e2e | ||
| integration | ||
| rust-python-harness | ||
| test_litellm_rust | ||
| typing | ||
| unit | ||
| windows_tests | ||
| __init__.py | ||
| _fake_openai_endpoint_server.py | ||
| _flush_vcr_cache.py | ||
| _live_test_helpers.py | ||
| _master_key.py | ||
| _openai_record_replay_proxy.py | ||
| _process_helpers.py | ||
| _vcr_conftest_common.py | ||
| _vcr_redis_persister.py | ||
| _wait_helpers.py | ||
| _ws_vcr.py | ||
| AGENTS.md | ||
| capturing_transport.py | ||
| eval_swe_bench.py | ||
| fake_openai_endpoint.py | ||
| gettysburg.wav | ||
| large_text.py | ||
| openai_batch_completions.jsonl | ||
| pyrightconfig.json | ||
| README.MD | ||
| test_logging.conf | ||
| test_rust_python_harness.py | ||
| VCR_TESTING.md | ||
| white_100x100.png | ||
In total litellm runs 1000+ tests
[02/20/2025] Update:
To make it easier to contribute and map what behavior is tested,
we've started mapping the litellm directory in tests/unit
This folder can only run mock tests.