Run reason: Pull request #477 updated
Total runtime: 4 min 39 sec
Split logs: https://ci.kronosnet.org/job/kronosnet/job/kronosnet-pipeline/job/PR-477/3/…
Full log: https://ci.kronosnet.org/job/kronosnet/job/kronosnet-pipeline/job/PR-477/3/…
Please report the following errors to your friendly local Jenkins admin (though they have probably already seen them and are already panicking).
Exception caught on centos-9-s390x during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-9-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-10-s390x during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-10-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-12-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-13-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-testing-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-42-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-power9-ppc64le during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-s390x during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-13-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-14-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-15-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-coverity-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-power9-ppc64le during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-s390x during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-9-coverity-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-9-s390x during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-9-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-coverity-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-power9-ppc64le during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-s390x during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-22-04-lts-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-24-04-lts-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-25-10-x86-64 during voting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on alpine-x86-64 during nonvoting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-experimental-x86-64 during nonvoting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-unstable-x86-64 during nonvoting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-power9-ppc64le during nonvoting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-s390x during nonvoting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-x86-64 during nonvoting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-devel-x86-64 during nonvoting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on openindiana-x86-64 during nonvoting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-devel-x86-64 during nonvoting_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on alpine-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on alpine-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-9-s390x during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-9-s390x during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-9-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-9-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-10-s390x during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-10-s390x during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-10-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-10-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-12-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-12-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-13-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-13-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-experimental-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-experimental-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-testing-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-testing-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-unstable-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on debian-unstable-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-42-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-42-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-power9-ppc64le during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-power9-ppc64le during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-s390x during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-s390x during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-power9-ppc64le during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-power9-ppc64le during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-s390x during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-s390x during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-13-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-13-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-14-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-14-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-15-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-15-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-devel-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on freebsd-devel-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on openindiana-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on openindiana-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-power9-ppc64le during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-power9-ppc64le during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-s390x during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-s390x during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-9-s390x during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-9-s390x during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-9-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-9-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-power9-ppc64le during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-power9-ppc64le during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-s390x during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-s390x during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-22-04-lts-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-22-04-lts-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-24-04-lts-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-24-04-lts-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-25-10-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-25-10-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-devel-x86-64 during nonvoting-clang: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on ubuntu-devel-x86-64 during nonvoting-clang_debug: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-9-s390x during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-9-x86-64 during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-10-s390x during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on centos-10-x86-64 during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-42-x86-64 during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-power9-ppc64le during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-s390x during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-43-x86-64 during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-power9-ppc64le during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-s390x during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on fedora-rawhide-x86-64 during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-power9-ppc64le during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-s390x during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-x86-64 during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-9-s390x during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-9-x86-64 during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-power9-ppc64le during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-s390x during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-x86-64 during buildrpms: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-8-coverity-x86-64 during covscan: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-9-coverity-x86-64 during covscan: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Exception caught on rhel-10-coverity-x86-64 during covscan: org.jenkinsci.plugins.workflow.steps.FlowInterruptedException:
Branch: refs/heads/add-aes-ctr-support
Home: https://github.com/kronosnet/kronosnet
Commit: ad7029948c74a26c42a9ac3e1c5dff458dd8cbd4
https://github.com/kronosnet/kronosnet/commit/ad7029948c74a26c42a9ac3e1c5df…
Author: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Date: 2026-05-07 (Thu, 07 May 2026)
Changed paths:
M libknet/crypto_gcrypt.c
M libknet/crypto_nss.c
M libknet/crypto_openssl.c
M libknet/onwire.c
M libknet/tests/Makefile.am
M libknet/tests/api_knet_handle_crypto_set_config.c
A libknet/tests/fun_config_crypto_ctr_test.c
Log Message:
-----------
Add AES-CTR mode support with cross-backend cipher name compatibility
Implements AES-128-CTR, AES-192-CTR, and AES-256-CTR cipher modes for
OpenSSL, NSS, and libgcrypt crypto backends. CTR (Counter) mode is a
stream cipher that doesn't require padding and offers better performance
for parallel encryption/decryption.
Key changes:
1. Crypto backend implementations (crypto_nss.c, crypto_gcrypt.c, crypto_openssl.c):
- Added CTR cipher type enums and mode detection
- Implemented CTR-specific parameter handling (NSS CK_AES_CTR_PARAMS)
- Accepts both cipher name formats: aes128-ctr and aes-128-ctr
- Sets sec_block_size appropriately for each mode:
* CTR mode: sec_block_size = 0 (no padding overhead)
* CBC mode: sec_block_size = 16 (PKCS padding overhead)
2. Mode validation:
- Added explicit validation for cipher modes
- Only CBC and CTR modes are supported
- Rejects unsupported modes (GCM, OFB, CFB, ECB, XTS) with clear error
- Uses whitelist approach (check for supported) vs blacklist
3. OpenSSL improvements:
- Use EVP_CIPHER_fetch() for OpenSSL 3.x (avoids refetching)
- Use EVP_CIPHER_get_block_size() for OpenSSL 3.x
- Maintain OpenSSL 1.x compatibility for RHEL 8 (EOL 2029)
- Added comprehensive version support policy documentation
4. sec_block_size rationale (extensive documentation):
- sec_block_size represents PADDING OVERHEAD, not cipher block size
- CTR mode: Stream cipher, no padding (100 bytes → 100 bytes)
* Library APIs return 1 or 16 for block size
* But CTR adds NO padding overhead
* Setting sec_block_size=0 correctly represents "no padding"
* The if (sec_block_size) check in onwire.c skips padding calculation
- CBC mode: Block cipher, PKCS padding required
* Block size is 16 for AES
* Adds padding to align to block boundaries
* Example: 100 bytes → 112 bytes (12 bytes padding)
- Documented in all crypto modules and onwire.c
5. New test: fun_config_crypto_ctr_test.c:
- Uses knet_get_crypto_list() for runtime crypto module detection
- Validates CTR mode support across all available backends
- Tests both cipher naming conventions (hyphenated and non-hyphenated)
- Performs actual encrypted data transmission via loopback
- Verifies send/recv with CTR encryption works correctly
- Tests buffer integrity after encryption/decryption
- Ensures cross-backend compatibility
6. Extended test: api_knet_handle_crypto_set_config_test:
- Added tests for unsupported cipher mode rejection
- Tests GCM, OFB, ECB, XTS modes (all should fail with ENXIO)
- Tests CTR mode in both naming formats (should succeed)
- Verifies config preservation after rejecting bad modes
MTU optimization:
CTR mode sets sec_block_size = 0 (instead of 16 for CBC) because it doesn't
require padding. This:
- Allows up to 16 more bytes of payload per packet vs CBC mode
- Fixes MTU/PMTUD calculations in onwire.c and threads_pmtud.c
- Prevents wasted overhead for padding that CTR mode doesn't need
This allows users to configure any backend with either naming format:
- OpenSSL native: aes-128-ctr, aes-192-ctr, aes-256-ctr
- NSS/gcrypt native: aes128-ctr, aes192-ctr, aes256-ctr
Both formats work on all backends for seamless configuration portability.
CTR mode maintains backward compatibility - same on-wire format as CBC,
just different encryption algorithm. All tests pass.
Addresses all PR #477 review feedback:
- Mode validation and error handling
- sec_block_size rationale extensively documented
- OpenSSL 3.x API improvements (EVP_CIPHER_fetch, EVP_CIPHER_get_block_size)
- OpenSSL 1.x support policy documented
Resolves: #460
Signed-off-by: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Co-Authored-By: Claude Sonnet 4.5 <noreply(a)anthropic.com>
To unsubscribe from these emails, change your notification settings at https://github.com/kronosnet/kronosnet/settings/notifications