Skip to content

config/v1: TLSSecurityProfile: Remove go's unsupported ciphers#2697

Open
damdo wants to merge 2 commits intoopenshift:masterfrom
damdo:config-tlssecurityprofile-remove-go-incompatible-ciphers
Open

config/v1: TLSSecurityProfile: Remove go's unsupported ciphers#2697
damdo wants to merge 2 commits intoopenshift:masterfrom
damdo:config-tlssecurityprofile-remove-go-incompatible-ciphers

Conversation

@damdo
Copy link
Member

@damdo damdo commented Feb 6, 2026

Following up from the dicussion in:
https://redhat-internal.slack.com/archives/C098FU5MRAB/p1770309657097269

we are removing DHE and CBC mode ciphers groups as they are not supported due to Go's crypto/tls limitations.

Added notes and context for removed ciphers
golang/go#7758
golang/go#26652

--

openshift/library-go counterpart: openshift/library-go#2119

damdo added 2 commits February 6, 2026 12:14
Following up from the dicussion in https://redhat-internal.slack.com/archives/C098FU5MRAB/p1770309657097269
We are removing DHE and CBC mode ciphers groups as they are not supported due to Go's crypto/tls limitations. Added notes and context for removed ciphers.
Context:
golang/go#7758
golang/go#26652
@openshift-ci-robot
Copy link

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: LGTM mode

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Feb 6, 2026

Hello @damdo! Some important instructions when contributing to openshift/api:
API design plays an important part in the user experience of OpenShift and as such API PRs are subject to a high level of scrutiny to ensure they follow our best practices. If you haven't already done so, please review the OpenShift API Conventions and ensure that your proposed changes are compliant. Following these conventions will help expedite the api review process for your PR.

@openshift-ci openshift-ci bot added the size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. label Feb 6, 2026
@coderabbitai
Copy link

coderabbitai bot commented Feb 6, 2026

📝 Walkthrough

Walkthrough

This pull request modifies TLS security profile configurations across multiple Go source files and Kubernetes CRD YAML files. The changes remove several DHE (Diffie-Hellman Ephemeral) and CBC-mode cipher entries from Old and Intermediate TLS profile definitions. The removed ciphers include DHE-RSA-AES128-GCM-SHA256, DHE-RSA-AES256-GCM-SHA384, DHE-RSA-CHACHA20-POLY1305, DHE-RSA-AES128-SHA256, DHE-RSA-AES256-SHA256, and various CBC-based ciphers. Explanatory comments are added throughout to document that these ciphers are not supported by Go's crypto/tls library. No new exported APIs or type declarations are introduced.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: removing unsupported ciphers (DHE and CBC mode) from TLSSecurityProfile due to Go's crypto/tls limitations, which aligns with the file modifications across all changed files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description check ✅ Passed The pull request description clearly relates to the changeset, explaining the removal of DHE and CBC-mode ciphers due to Go's crypto/tls limitations with references to specific Go issues and internal discussions.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Comment @coderabbitai help to get the list of available commands and usage tips.

@qodo-code-review
Copy link

Review Summary by Qodo

Remove Go-unsupported DHE and CBC ciphers from TLS security profiles

✨ Enhancement

Grey Divider

Walkthroughs

Description
• Remove unsupported DHE and CBC ciphers from TLS profiles
• Add explanatory comments referencing Go crypto/tls limitations
• Update documentation with rationale for removed ciphers
• Synchronize changes across all generated CRD manifests
Diagram
flowchart LR
  A["TLS Security Profiles"] -->|Remove DHE ciphers| B["Go crypto/tls Issue #7758"]
  A -->|Remove CBC ciphers| C["Go crypto/tls Issue #26652"]
  B --> D["Updated Old Profile"]
  C --> D
  B --> E["Updated Intermediate Profile"]
  C --> E
  D --> F["Generated Manifests Updated"]
  E --> F
Loading

Grey Divider

File Changes

1. config/v1/types_tlssecurityprofile.go ✨ Enhancement +34/-18

Remove unsupported ciphers and add documentation

config/v1/types_tlssecurityprofile.go


2. config/v1/zz_generated.swagger_doc_generated.go 📝 Documentation +2/-2

Update swagger documentation for TLS profiles

config/v1/zz_generated.swagger_doc_generated.go


3. openapi/generated_openapi/zz_generated.openapi.go 📝 Documentation +2/-2

Update OpenAPI schema descriptions

openapi/generated_openapi/zz_generated.openapi.go


View more (18)
4. config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-CustomNoUpgrade.crd.yaml ⚙️ Configuration changes +17/-8

Update CRD manifest with cipher changes

config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-CustomNoUpgrade.crd.yaml


5. config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-Default.crd.yaml ⚙️ Configuration changes +17/-8

Update CRD manifest with cipher changes

config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-Default.crd.yaml


6. config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-DevPreviewNoUpgrade.crd.yaml ⚙️ Configuration changes +17/-8

Update CRD manifest with cipher changes

config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-DevPreviewNoUpgrade.crd.yaml


7. config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-OKD.crd.yaml ⚙️ Configuration changes +17/-8

Update CRD manifest with cipher changes

config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-OKD.crd.yaml


8. config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-TechPreviewNoUpgrade.crd.yaml ⚙️ Configuration changes +17/-8

Update CRD manifest with cipher changes

config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-TechPreviewNoUpgrade.crd.yaml


9. config/v1/zz_generated.featuregated-crd-manifests/apiservers.config.openshift.io/AAA_ungated.yaml ⚙️ Configuration changes +17/-8

Update featuregated CRD manifest

config/v1/zz_generated.featuregated-crd-manifests/apiservers.config.openshift.io/AAA_ungated.yaml


10. config/v1/zz_generated.featuregated-crd-manifests/apiservers.config.openshift.io/KMSEncryption.yaml ⚙️ Configuration changes +17/-8

Update featuregated CRD manifest

config/v1/zz_generated.featuregated-crd-manifests/apiservers.config.openshift.io/KMSEncryption.yaml


11. config/v1/zz_generated.featuregated-crd-manifests/apiservers.config.openshift.io/KMSEncryptionProvider.yaml ⚙️ Configuration changes +17/-8

Update featuregated CRD manifest

config/v1/zz_generated.featuregated-crd-manifests/apiservers.config.openshift.io/KMSEncryptionProvider.yaml


12. machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_kubeletconfigs.crd.yaml ⚙️ Configuration changes +17/-8

Update kubelet CRD manifest with cipher changes

machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_kubeletconfigs.crd.yaml


13. machineconfiguration/v1/zz_generated.featuregated-crd-manifests/kubeletconfigs.machineconfiguration.openshift.io/AAA_ungated.yaml ⚙️ Configuration changes +17/-8

Update featuregated kubelet CRD manifest

machineconfiguration/v1/zz_generated.featuregated-crd-manifests/kubeletconfigs.machineconfiguration.openshift.io/AAA_ungated.yaml


14. operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers.crd.yaml ⚙️ Configuration changes +17/-8

Update ingress controller CRD manifest

operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers.crd.yaml


15. operator/v1/zz_generated.featuregated-crd-manifests/ingresscontrollers.operator.openshift.io/AAA_ungated.yaml ⚙️ Configuration changes +17/-8

Update featuregated ingress controller CRD

operator/v1/zz_generated.featuregated-crd-manifests/ingresscontrollers.operator.openshift.io/AAA_ungated.yaml


16. payload-manifests/crds/0000_10_config-operator_01_apiservers-CustomNoUpgrade.crd.yaml ⚙️ Configuration changes +17/-8

Update payload CRD manifest

payload-manifests/crds/0000_10_config-operator_01_apiservers-CustomNoUpgrade.crd.yaml


17. payload-manifests/crds/0000_10_config-operator_01_apiservers-Default.crd.yaml ⚙️ Configuration changes +17/-8

Update payload CRD manifest

payload-manifests/crds/0000_10_config-operator_01_apiservers-Default.crd.yaml


18. payload-manifests/crds/0000_10_config-operator_01_apiservers-DevPreviewNoUpgrade.crd.yaml ⚙️ Configuration changes +17/-8

Update payload CRD manifest

payload-manifests/crds/0000_10_config-operator_01_apiservers-DevPreviewNoUpgrade.crd.yaml


19. payload-manifests/crds/0000_10_config-operator_01_apiservers-OKD.crd.yaml ⚙️ Configuration changes +17/-8

Update payload CRD manifest

payload-manifests/crds/0000_10_config-operator_01_apiservers-OKD.crd.yaml


20. payload-manifests/crds/0000_10_config-operator_01_apiservers-TechPreviewNoUpgrade.crd.yaml ⚙️ Configuration changes +17/-8

Update payload CRD manifest

payload-manifests/crds/0000_10_config-operator_01_apiservers-TechPreviewNoUpgrade.crd.yaml


21. payload-manifests/crds/0000_80_machine-config_01_kubeletconfigs.crd.yaml ⚙️ Configuration changes +17/-8

Update payload kubelet CRD manifest

payload-manifests/crds/0000_80_machine-config_01_kubeletconfigs.crd.yaml


Grey Divider

Qodo Logo

@qodo-code-review
Copy link

Code Review by Qodo

🐞 Bugs (2) 📘 Rule violations (1) 📎 Requirement gaps (0)

Grey Divider


Action required

1. Old field missing optional docs 📘 Rule violation ✓ Correctness
Description
• The Old *OldTLSProfile field has +optional and +nullable markers, but its comment only lists
  cipher details and does not explain what happens when the field is omitted or explicitly set to
  null.
• This makes the API behavior unclear to consumers and violates the requirement that field comments
  document the meaning/behavior of kubebuilder optionality markers.
Code

config/v1/types_tlssecurityprofile.go[R66-68]

	// +optional
	// +nullable
	Old *OldTLSProfile `json:"old,omitempty"`
Evidence
PR Compliance ID 11 requires field comments to document the behavior implied by
validation/optionality markers. In TLSSecurityProfile, the Old field includes
+optional/+nullable, but the adjacent comment block does not describe omitted/default/null
behavior.

AGENTS.md
config/v1/types_tlssecurityprofile.go[22-68]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
`TLSSecurityProfile` fields (e.g., `Old`) include kubebuilder optionality markers (`+optional`, `+nullable`) but their comments do not document what omitted or null values mean.

## Issue Context
PR Compliance ID 11 requires that any field with optionality/validation markers has comments explaining those markers’ meaning and behavior so the API is self-documenting.

## Fix Focus Areas
- config/v1/types_tlssecurityprofile.go[6-128]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


2. Invalid YAML doc snippets 🐞 Bug ✓ Correctness
Description
• Multiple CRD/OpenAPI descriptions contain YAML configuration examples that now include // ...
  lines; // is not valid YAML comment syntax.
• Users/operators copying these examples into real YAML manifests will hit YAML parse errors (or end
  up with unintended config).
• Because these are generated artifacts, the issue propagates widely (config, operator,
  machineconfiguration, payload manifests, OpenAPI).
Code

config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-Default.crd.yaml[R295-299]

+                          // Ciphers not in this profile even though listed
+                          // in the Mozilla Server Side TLS configuration guidelines:
+                          // Go's crypto/tls does not support DHE ciphers (see https://github.com/golang/go/issues/7758)
                          - DHE-RSA-AES128-GCM-SHA256
                          - DHE-RSA-AES256-GCM-SHA384
Evidence
The CRD schema uses description: |- with a YAML example block. The PR adds // lines inside that
example block; if a user copies the example as-is into a YAML file, // will not be treated as a
comment and will break parsing. The same // lines are also embedded into the generated OpenAPI
description strings, so this is not isolated to a single manifest.

config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_apiservers-Default.crd.yaml[273-300]
openapi/generated_openapi/zz_generated.openapi.go[20931-20938]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

### Issue description
CRD/OpenAPI `description` fields embed YAML examples that now contain `//` lines. These are not valid YAML comments, so users copying the example into manifests will get YAML parse errors.

### Issue Context
The problematic text is generated from Go doc comments in `config/v1/types_tlssecurityprofile.go` and then propagated to CRD manifests and OpenAPI/Swagger output.

### Fix Focus Areas
- config/v1/types_tlssecurityprofile.go[22-98]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools



Remediation recommended

3. Misleading CBC support note 🐞 Bug ✓ Correctness
Description
• The new documentation says “Go's crypto/tls does not support CBC mode ciphers”, but the same
  profile documentation still lists CBC ciphers (e.g., AES128-SHA, AES256-SHA, DES-CBC3-SHA) as
  part of the profile.
• This internal contradiction makes it unclear whether CBC ciphers are supported/used, and may
  mislead operators reading the API docs.
• The note should be narrowed to the specific excluded cipher suites (or reworded to avoid the
  blanket “CBC mode” statement).
Code

config/v1/types_tlssecurityprofile.go[R61-64]

+	//     // Go's crypto/tls does not support CBC mode ciphers (see https://github.com/golang/go/issues/26652)
+	//     - ECDHE-ECDSA-AES256-SHA384
+	//     - ECDHE-RSA-AES256-SHA384
+	//     - AES256-SHA256
Evidence
In the old profile example, CBC ciphers are listed as included. Immediately afterward, a newly added
note claims CBC mode ciphers are not supported, which is misleading in the context of that same
example.

config/v1/types_tlssecurityprofile.go[46-64]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

### Issue description
The docs claim “Go's crypto/tls does not support CBC mode ciphers”, while the same profile example includes CBC ciphers (e.g., AES256-SHA, DES-CBC3-SHA). This is misleading.

### Issue Context
This text appears in Go doc comments and is propagated into CRD/OpenAPI descriptions.

### Fix Focus Areas
- config/v1/types_tlssecurityprofile.go[46-64]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


Grey Divider

ⓘ The new review experience is currently in Beta. Learn more

Grey Divider

Qodo Logo

Comment on lines 66 to 68
// +optional
// +nullable
Old *OldTLSProfile `json:"old,omitempty"`

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Action required

1. old field missing optional docs 📘 Rule violation ✓ Correctness

• The Old *OldTLSProfile field has +optional and +nullable markers, but its comment only lists
  cipher details and does not explain what happens when the field is omitted or explicitly set to
  null.
• This makes the API behavior unclear to consumers and violates the requirement that field comments
  document the meaning/behavior of kubebuilder optionality markers.
Agent Prompt
## Issue description
`TLSSecurityProfile` fields (e.g., `Old`) include kubebuilder optionality markers (`+optional`, `+nullable`) but their comments do not document what omitted or null values mean.

## Issue Context
PR Compliance ID 11 requires that any field with optionality/validation markers has comments explaining those markers’ meaning and behavior so the API is self-documenting.

## Fix Focus Areas
- config/v1/types_tlssecurityprofile.go[6-128]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools

Comment on lines +295 to 299
// Ciphers not in this profile even though listed
// in the Mozilla Server Side TLS configuration guidelines:
// Go's crypto/tls does not support DHE ciphers (see https://github.com/golang/go/issues/7758)
- DHE-RSA-AES128-GCM-SHA256
- DHE-RSA-AES256-GCM-SHA384

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Action required

2. Invalid yaml doc snippets 🐞 Bug ✓ Correctness

• Multiple CRD/OpenAPI descriptions contain YAML configuration examples that now include // ...
  lines; // is not valid YAML comment syntax.
• Users/operators copying these examples into real YAML manifests will hit YAML parse errors (or end
  up with unintended config).
• Because these are generated artifacts, the issue propagates widely (config, operator,
  machineconfiguration, payload manifests, OpenAPI).
Agent Prompt
### Issue description
CRD/OpenAPI `description` fields embed YAML examples that now contain `//` lines. These are not valid YAML comments, so users copying the example into manifests will get YAML parse errors.

### Issue Context
The problematic text is generated from Go doc comments in `config/v1/types_tlssecurityprofile.go` and then propagated to CRD manifests and OpenAPI/Swagger output.

### Fix Focus Areas
- config/v1/types_tlssecurityprofile.go[22-98]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@config/v1/types_tlssecurityprofile.go`:
- Around line 53-64: Update the overstated comment that reads "Go's crypto/tls
does not support CBC mode ciphers" to specifically say that Go's crypto/tls
lacks support for the CBC SHA-256/384 suites (e.g., AES256-SHA256,
ECDHE-*-AES256-SHA384) so it only excludes those CBC SHA-256/384 ciphers rather
than all CBC-mode ciphers; apply this same clarified wording to both comment
occurrences in the TLS profile comment block (the blocks listing the excluded
CBC SHA-256/384 suites alongside the DHE exclusions) so the comment matches the
actual excluded cipher list.

Comment on lines +53 to +64
// // Ciphers not in this profile even though listed
// // in the Mozilla Server Side TLS configuration guidelines:
// // Go's crypto/tls does not support DHE ciphers (see https://github.com/golang/go/issues/7758)
// - DHE-RSA-AES128-GCM-SHA256
// - DHE-RSA-AES256-GCM-SHA384
// - DHE-RSA-CHACHA20-POLY1305
// - DHE-RSA-AES128-SHA256
// - DHE-RSA-AES256-SHA256
// // Go's crypto/tls does not support CBC mode ciphers (see https://github.com/golang/go/issues/26652)
// - ECDHE-ECDSA-AES256-SHA384
// - ECDHE-RSA-AES256-SHA384
// - AES256-SHA256
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

# First, let's locate and examine the file
find . -name "types_tlssecurityprofile.go" -type f

Repository: openshift/api

Length of output: 96


🏁 Script executed:

# Once we find it, let's look at the specific lines mentioned
# Lines 53-64 (Old profile) and 252-255 (also applies to)
# We'll get broader context to understand the profile structure
cat -n config/v1/types_tlssecurityprofile.go | sed -n '1,100p'

Repository: openshift/api

Length of output: 4697


🌐 Web query:

Go crypto/tls CBC cipher support all versions limitations

💡 Result:

Go crypto/tls CBC cipher suite support (by TLS version) and key limitations

1) TLS 1.3: No CBC at all

TLS 1.3 cipher suites in Go are AEAD-only (AES-GCM, ChaCha20-Poly1305) and cannot be configured via Config.CipherSuites. So CBC suites are never negotiated in TLS 1.3. [1], [2]

2) TLS 1.0–1.2: CBC is implemented, but with important caveats

Go implements multiple AES-CBC suites for TLS 1.0–1.2, including (examples): TLS_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, etc. [3]

However:

  • CBC + SHA-256 (“CBC_SHA256”) suites are considered insecure in Go (no Lucky13 countermeasures) and are disabled by default. They appear under tls.InsecureCipherSuites(). [3], [2]
  • CBC + SHA-1 suites still exist (and are not in InsecureCipherSuites()), but CBC as a family is historically attack-prone (e.g., Lucky13-style side channels). Go’s mitigations are described as only partial/complex, and CBC suites are intended mainly for compatibility fallback. [2]

3) “Default enabled” vs “implemented” changes across Go versions

Even when CBC suites are implemented, whether they’re in the default set can change across Go releases:

  • Go’s docs note that defaults change over time; e.g. RSA key-exchange suites removed from defaults in Go 1.22 (re-add via GODEBUG=tlsrsakex=1) and 3DES removed from defaults in Go 1.23 (re-add via GODEBUG=tls3des=1). (3DES is CBC-mode and is also classified insecure.) [1], [3]

4) Configuring CBC in Go: what you can and can’t do

  • Config.CipherSuites only affects TLS 1.0–1.2; it does nothing for TLS 1.3. [1]
  • To “force” CBC you generally must also ensure you’re not negotiating TLS 1.3 (e.g., MaxVersion: tls.VersionTLS12), otherwise TLS 1.3 will avoid CBC entirely. [1]

5) Extra restriction: FIPS mode

In Go’s FIPS 140-3 mode, non-approved cipher suites/versions are “silently ignored” or rejected; this can further limit (or eliminate) CBC availability depending on the selected module and Go version. [1]

Sources: Go crypto/tls docs (Go 1.25.2) [1], Go blog on cipher suite ordering / CBC & Lucky13 notes [2], Go crypto/tls cipher suite source (lists secure vs insecure suites and supported versions) [3].


🏁 Script executed:

cat -n config/v1/types_tlssecurityprofile.go | sed -n '240,280p'

Repository: openshift/api

Length of output: 1776


🏁 Script executed:

# Also check if this pattern exists in intermediate profile comments
cat -n config/v1/types_tlssecurityprofile.go | sed -n '85,100p'

Repository: openshift/api

Length of output: 815


Clarify CBC support wording in both Old profile locations.

The Old profile still lists CBC SHA1 suites (AES128-SHA, AES256-SHA, DES-CBC3-SHA), so the comment "Go's crypto/tls does not support CBC mode ciphers" is overstated. The actual limitation applies only to the CBC SHA-256/384 suites listed below. Narrow the wording to match the specific ciphers excluded.

✏️ Suggested wording
- //     // Go's crypto/tls does not support CBC mode ciphers (see https://github.com/golang/go/issues/26652)
+ //     // Go's crypto/tls does not support these CBC mode SHA-256/384 ciphers (see https://github.com/golang/go/issues/26652)

-           // Go's crypto/tls does not support CBC mode ciphers (see https://github.com/golang/go/issues/26652)
+           // Go's crypto/tls does not support these CBC mode SHA-256/384 ciphers (see https://github.com/golang/go/issues/26652)

Also applies to: 252-255

🤖 Prompt for AI Agents
In `@config/v1/types_tlssecurityprofile.go` around lines 53 - 64, Update the
overstated comment that reads "Go's crypto/tls does not support CBC mode
ciphers" to specifically say that Go's crypto/tls lacks support for the CBC
SHA-256/384 suites (e.g., AES256-SHA256, ECDHE-*-AES256-SHA384) so it only
excludes those CBC SHA-256/384 ciphers rather than all CBC-mode ciphers; apply
this same clarified wording to both comment occurrences in the TLS profile
comment block (the blocks listing the excluded CBC SHA-256/384 suites alongside
the DHE exclusions) so the comment matches the actual excluded cipher list.

@JoelSpeed
Copy link
Contributor

/approve
/assign @joelanford

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Feb 6, 2026
@joelanford
Copy link
Member

/lgtm

Thanks @damdo !

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Feb 6, 2026
@openshift-ci-robot
Copy link

Tests from second stage were triggered manually. Pipeline can be controlled only manually, until HEAD changes. Use command to trigger second stage.

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Feb 6, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: joelanford, JoelSpeed

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@damdo
Copy link
Member Author

damdo commented Feb 7, 2026

/pipeline required

@openshift-ci-robot
Copy link

Scheduling tests matching the pipeline_run_if_changed or not excluded by pipeline_skip_if_only_changed parameters:
/test e2e-aws-ovn
/test e2e-aws-ovn-hypershift
/test e2e-aws-ovn-hypershift-conformance
/test e2e-aws-ovn-techpreview
/test e2e-aws-serial-1of2
/test e2e-aws-serial-2of2
/test e2e-aws-serial-techpreview-1of2
/test e2e-aws-serial-techpreview-2of2
/test e2e-azure
/test e2e-gcp
/test e2e-upgrade
/test e2e-upgrade-out-of-change
/test minor-e2e-upgrade-minor

@damdo
Copy link
Member Author

damdo commented Feb 7, 2026

/test e2e-azure

@qodo-code-review
Copy link

qodo-code-review bot commented Feb 7, 2026

PR-Agent: could not fine a component named e2e-azure in a supported language in this PR.

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Feb 7, 2026

@damdo: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants