Skip to content

Conversation

@jnovy
Copy link
Collaborator

@jnovy jnovy commented Oct 2, 2025

…alidation

  • Update Containerfile to use UBI10 base image instead of busybox
  • Replace busybox references with UBI10 commands in all test files
  • Add upper bound validation (1000) for terminal window size in ctrl.c to prevent wraparound bugs
  • Update CI/CD dependencies to include podman, bats, jq, and socat
  • Fix test assertions to expect proper terminal size behavior

Fixes: #610

@packit-as-a-service
Copy link

Ephemeral COPR build failed. @containers/packit-build please check.

1 similar comment
@packit-as-a-service
Copy link

Ephemeral COPR build failed. @containers/packit-build please check.

@jnovy
Copy link
Collaborator Author

jnovy commented Oct 2, 2025

@ricardobranco777 @jankaluza This PR changes the tests to run solely on UBI10-micro removing busybox as a whole. This will allow us to actually run on top of full-featured and tested OS components. Reliability is a nice bonus.

For that I needed to amend few tests and actually found a bug - we don't test upper limit for terminal size and kernel accepts only unsigned short via ioctl(TIOCSWINSZ). In order to avoid OOM/DoS via setting a massive terminal sizes I maxed the possible size to be 1000 characters for each dimension.

@ricardobranco777
Copy link

ricardobranco777 commented Oct 2, 2025

@ricardobranco777 @jankaluza This PR changes the tests to run solely on UBI10-micro removing busybox as a whole. This will allow us to actually run on top of full-featured and tested OS components. Reliability is a nice bonus.

For that I needed to amend few tests and actually found a bug - we don't test upper limit for terminal size and kernel accepts only unsigned short via ioctl(TIOCSWINSZ). In order to avoid OOM/DoS via setting a massive terminal sizes I maxed the possible size to be 1000 characters for each dimension.

Unfortunately I can't properly test this PR because we're backporting these to an existing release (1.24) and the tests will fail as they rely on new functionality. It would help if the migration to UBI10 is done in a separate PR to just test that part.

@jnovy
Copy link
Collaborator Author

jnovy commented Oct 2, 2025

@ricardobranco777 These fixes unfortunately need to happen together because the previous tests were relying on fake busybox utility behaviour (not receiving a TTY). With UBI we got TTY so we can check live values. This is needed change otherwise tests in UBI10 would fail.

@ricardobranco777
Copy link

@ricardobranco777 These fixes unfortunately need to happen together because the previous tests were relying on fake busybox utility behaviour (not receiving a TTY). With UBI we got TTY so we can check live values. This is needed change otherwise tests in UBI10 would fail.

Ok. I'll enable non-x86_64 tests hopefully on the next release.

…alidation

- Update Containerfile to use UBI10 base image instead of busybox
- Replace busybox references with UBI10 commands in all test files
- Add upper bound validation (1000) for terminal window size in ctrl.c
  to prevent wraparound bugs
- Update CI/CD dependencies to include podman, bats, jq, and socat
- Fix test assertions to expect proper terminal size behavior

Fixes: containers#610

Signed-off-by: Jindrich Novy <jnovy@redhat.com>
@jankaluza
Copy link
Member

LGTM

@jnovy jnovy merged commit b346963 into containers:main Oct 27, 2025
33 of 35 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Test don't run on architectures other than x86_64

3 participants