spiegel_podman/pkg/api
Jan Rodák e66ff395b7
Fix handling of "r_limits" in Podman REST API /libpod/containers/create
The JSON decoder correctly cannot decode (overflow) negative values (e.g., `-1`) for fields of type `uint64`, as `-1` is used to represent `max` in `POSIXRlimit`. To handle this, we use `tmpSpecGenerator` to decode the request body. The `tmpSpecGenerator` replaces the `POSIXRlimit` type with a `tmpRlimit` type that uses the `json.Number` type for decoding values. The `tmpRlimit` is then converted into the `POSIXRlimit` type and assigned to the `SpecGenerator`.

This approach ensures compatibility with the Podman CLI and remote API, which already handle `-1` by casting it to `uint64` (`uint64(-1)` equals `MaxUint64`) to signify `max`.

Fixes: https://issues.redhat.com/browse/RUN-2859
Fixes: https://github.com/containers/podman/issues/24886

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2025-04-28 15:02:19 +02:00
..
handlers Fix handling of "r_limits" in Podman REST API /libpod/containers/create 2025-04-28 15:02:19 +02:00
server bug: Correct Docker compat REST API image delete endpoint 2025-04-27 20:51:11 +10:00
types set !remote build tags where needed 2024-08-19 11:41:28 +02:00
Makefile swagger: exlude new docker network types 2024-07-12 14:19:37 +02:00
tags.yaml [CI:DOCS] Set all operation id to be compatibile 2021-04-05 19:54:30 -07:00