Files
openclaw/extensions/ollama/src/provider-models.ssrf.test.ts
Jacob Tomlinson 8deb9522f3 Guard marketplace and Ollama network requests (#57850)
* Plugins: guard marketplace and Ollama fetches

* Ollama: pin guarded host allowlist
2026-03-30 20:08:38 +01:00

22 lines
904 B
TypeScript

import { describe, expect, it } from "vitest";
import { buildOllamaBaseUrlSsrFPolicy } from "./provider-models.js";
describe("buildOllamaBaseUrlSsrFPolicy", () => {
it("pins requests to the configured Ollama hostname for HTTP(S) URLs", () => {
expect(buildOllamaBaseUrlSsrFPolicy("http://127.0.0.1:11434")).toEqual({
allowedHostnames: ["127.0.0.1"],
hostnameAllowlist: ["127.0.0.1"],
});
expect(buildOllamaBaseUrlSsrFPolicy("https://ollama.example.com/v1")).toEqual({
allowedHostnames: ["ollama.example.com"],
hostnameAllowlist: ["ollama.example.com"],
});
});
it("returns no allowlist for empty or invalid base URLs", () => {
expect(buildOllamaBaseUrlSsrFPolicy("")).toBeUndefined();
expect(buildOllamaBaseUrlSsrFPolicy("ftp://ollama.example.com")).toBeUndefined();
expect(buildOllamaBaseUrlSsrFPolicy("not-a-url")).toBeUndefined();
});
});