Commit Graph
288 Commits
Author SHA1 Message Date
Stefan Prodan e92ae0e624 Release 6.14.0 2026-06-18 11:56:18 +03:00
Stefan Prodan 5037beda6c Cap HTTP request and websocket message sizes
Unauthenticated clients could exhaust process memory (and, for /store,
disk) by posting arbitrarily large bodies, and could OOM or pin
goroutines via the /ws/echo websocket.

- Wrap request bodies in http.MaxBytesReader (10 MiB) on the echo,
  store, cache and token handlers via a shared readLimitedBody helper
- Bound /ws/echo: per-message read limit, idle read deadline with
  ping/pong keepalive, and write deadlines
- Add regression tests for both limits
2026-06-08 23:58:43 +03:00
Stefan Prodan 302c092cce Fix panic on GET /chunked from integer overflow
HttpServerTimeout is a time.Duration (nanoseconds); the default-delay
branch scaled it by time.Second again, overflowing int64 to a negative
value and passing it to rand.Intn, which panics. The bare /chunked route
(no wait param) hit this on every request.

Convert the timeout to whole seconds in a guarded helper that keeps
rand.Intn's argument positive, and add a regression test.
2026-06-08 23:58:36 +03:00
Stefan Prodan 73a9a9c81d Release 6.13.0
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-06-04 23:38:30 +03:00
Danny Kulchinsky 04fa4f98ac regenerate swagger docs for /fault_injection endpoints 2026-06-03 16:14:43 -04:00
Danny Kulchinsky 6614fe3543 address review comments 2026-06-03 16:04:17 -04:00
Danny Kulchinsky 18230d8fc5 feat(http): add fault injection mode for circuit breaker testing
Adds a process-wide toggle that makes podinfo respond with HTTP 500 to all application endpoints while keeping Kubernetes probes, metrics, pprof and the control endpoints functional. This allows a single replica to be made selectively 'sick' to test client-side circuit breakers / outlier detection (Envoy, Istio DestinationRule.outlierDetection, etc.) without Kubernetes evicting the pod.

New endpoints:

  POST /fault_injection/enable

  POST /fault_injection/disable

  GET  /fault_injection/status

Includes unit tests for the handlers, the middleware behavior, and the path exclusion list.
2026-06-02 23:18:28 -04:00
Piotr Roszatycki 51f14f8fc5 Add support for configurable URL path prefix in podinfo application 2026-05-25 12:47:45 +02:00
Stefan Prodan 30ac3ce042 Release 6.12.0
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-05-20 12:50:34 +03:00
Stefan Prodan 2ca58cf0a4 Migrate JWT to registered claims
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-05-20 11:11:58 +03:00
Stefan Prodan 4920afdafb Improve test coverage of the HTTP API
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-05-20 11:07:35 +03:00
Stefan Prodan 7d8e7005b1 Refactor response header settings
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-05-20 10:50:31 +03:00
Niccolò ParlantiandClaude Opus 4.7 6210e0a920 test(echo): assert nosniff Content-Type on echo direct-response
Regression test for CVE-2026-43644, mirroring the TestStoreReadHandler_ContentType
test added in #463. Verifies the echoHandler direct-response branch returns
application/octet-stream, X-Content-Type-Options: nosniff, and a restrictive CSP
so an HTML payload cannot be MIME-sniffed and executed.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-16 23:47:28 +02:00
Niccolò Parlanti b65271f0d9 fix(echo): set Content-Type to prevent MIME-sniff XSS (CVE-2026-43644)
Use tab indentation to match gofmt.

Signed-off-by: Niccolò Parlanti <54103711+Niccolo10@users.noreply.github.com>
2026-05-15 12:51:00 +02:00
Stefan Prodan e0a79a4ddd Release 6.11.2
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-03-31 22:47:19 +03:00
Hans van den Bogert 095b1cd251 feat: add otlp logging support
- Adds a loggerprovider based on otlp logger
- In demo directory of oltp:
  - Added grafana for unified view of both traces and logs
  - tracing now uses oltp from the collector to the jaeger instance

Signed-off-by: Hans van den Bogert <hansbogert@gmail.com>
2026-03-14 22:38:14 +01:00
Stefan Prodan 2da74a4ec2 Release 6.11.1
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-03-14 15:18:19 +02:00
Stefan Prodan 620b9b7e2c Fix path traversal in /store endpoint
Validate that the hash URL parameter matches the expected SHA1 hex
format (40 lowercase hex characters) before using it in file path
operations.

Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-03-14 15:02:25 +02:00
Stefan Prodan 550ee9f7b9 Fix stored XSS in /store endpoint (CVE-2025-70849)
Set Content-Type to application/octet-stream in storeReadHandler
to prevent Go's content sniffing from serving HTML payloads as
text/html. Add X-Content-Type-Options: nosniff to prevent browsers
from overriding Content-Type via MIME sniffing, and
Content-Security-Policy: default-src 'none' to block script
execution as defense-in-depth.

Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-03-14 14:40:55 +02:00
Stefan Prodan 5d97df9c89 Release 6.11.0
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-03-06 21:43:50 +02:00
Stefan Prodan 9525259938 Release 6.10.2
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-03-01 10:17:39 +02:00
Stefan Prodan eca2d3a1d9 Release v6.10.1
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-02-03 17:42:33 +02:00
Stefan Prodan 8bded1ba80 Release v6.10.0
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2026-02-01 12:30:00 +02:00
Stefan Prodan e51374c0ec Release 6.9.4
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2025-12-07 21:58:53 +02:00
Stefan Prodan 7ac390bb27 Release 6.9.3
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2025-11-22 13:59:49 +02:00
Stefan Prodan a51de59edb Release 6.9.2
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2025-09-10 23:06:10 +03:00
Stefan Prodan 0b8a7dace7 Release 6.9.1
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2025-07-12 14:03:55 +03:00
Stefan Prodan be955e76b0 Release 6.9.0
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2025-05-15 12:13:20 +03:00
Stefan Prodan c6e70a7aa0 Release v6.8.0
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2025-03-11 11:23:55 +02:00
Hans van den Bogert 7cc399463c feat(logging): add trace_id to debug log line
... if exists in context
2025-03-10 21:48:25 +01:00
Stefan Prodan b7d3d71d8f Release 6.7.1
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-10-07 16:02:31 +03:00
Stefan Prodan ff32a1fc4b Release v6.7.0
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-06-23 21:25:38 +03:00
Prashant Dwivedi b10c3067c8 Removed the whitespaces
Signed-off-by: Prashant Dwivedi <prashantdwivedi194@gmail.com>
2024-06-23 22:47:58 +05:30
Prashant Dwivedi 85cd1c46d4 Removed unnecessary comments and whitespaces
Signed-off-by: Prashant Dwivedi <prashantdwivedi194@gmail.com>
2024-06-23 21:59:50 +05:30
Prashant Dwivedi 1a6838a4a2 Merge branch 'master' of github.com:Prashant-Dwivedi-08-01/podinfo into grpc_APIs 2024-06-07 20:27:13 +05:30
Stefan Prodan b28069ac51 Release v6.6.3
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-23 11:30:18 +03:00
Rodrigo Fior Kuntzer eba7fe186e fix: panic when the WebSocket endpoint is under load 2024-05-23 10:01:01 +02:00
Prashant Dwivedi 9108833214 Added the token Validate api and updated the test for it 2024-05-09 12:56:54 +05:30
Prashant Dwivedi 386ceb09be Added the grpc APIs for the remaining HTTP apis 2024-05-08 00:25:37 +05:30
Stefan ProdanandGitHub f350624047 Merge pull request #356 from needsure/master
chore: fix some typos in comments
2024-04-28 14:07:49 +03:00
Stefan Prodan 8b3079a417 Release v6.6.2
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-04-10 14:01:43 +03:00
needsure 37fa020bcd chore: fix some typos in conments
Signed-off-by: needsure <qinzhipeng@outlook.com>
2024-04-09 16:45:31 +08:00
Michael KebeandMichael Kebe 16191504d1 Removed reference to localhost from swagger
Now it is possible to use the swagger webinterface
running on a host other than localhost e.g. in docker
or kubernetes.

Removed the @host line from pkg/api/server.go and
ran make swagger.

Fixes probably #179
2024-04-09 08:54:38 +02:00
Stefan Prodan 649864583b Release v6.6.1
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-03-27 15:36:51 +02:00
Stefan Prodan 5368c3fe10 Release v6.6.0
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-02-26 12:15:05 +02:00
JayKaku 2251bee699 Fixed parsing logger in echo_test.go service registeration 2024-02-24 23:44:12 +05:30
JayKaku 8535efccb7 Implemented zap logger in place of log | gprc echo 2024-02-24 23:44:12 +05:30
JayKaku e008d1f261 Added config, logger for grpc echo api 2024-02-24 23:44:12 +05:30
Jay KakuandPrashant Dwivedi 22097353d2 Feature grpc version echo api (#3)
added grpc verion and echo apis

---------

Co-authored-by: Prashant Dwivedi <prashantdwivedi194@gmail.com>
2024-02-24 23:44:12 +05:30
JayKaku c305843105 restructured api to api/http, api/grpc, pkg http 2024-02-24 23:44:12 +05:30