Skip to content

fix(initdata): reject combined certs in extra_root_certificates entries#46

Merged
bpradipt merged 1 commit into
confidential-devhub:mainfrom
bpradipt:inidata-val
Jun 2, 2026
Merged

fix(initdata): reject combined certs in extra_root_certificates entries#46
bpradipt merged 1 commit into
confidential-devhub:mainfrom
bpradipt:inidata-val

Conversation

@bpradipt

@bpradipt bpradipt commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

Each array entry must contain exactly one certificate; bundles are now caught early with a clear error naming the offending index.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This PR tightens initdata validate handling for cdh.toml’s image.extra_root_certificates by rejecting PEM bundles (multiple certificates) per array entry and adding a regression test to ensure the error clearly identifies the offending index.

Changes:

  • Add validation to reject extra_root_certificates entries containing multiple certificates, with an error pointing to the specific array index.
  • Add a unit test ensuring a combined (bundled) certificate entry is rejected with the expected stderr content.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
cmd/initdata/common.go Adds early parsing/counting of PEM certificates for image.extra_root_certificates entries and errors on bundles.
cmd/initdata/validate_test.go Adds regression coverage asserting combined certificates in a single extra_root_certificates entry are rejected with a clear indexed message.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread cmd/initdata/common.go Outdated
Comment on lines +294 to +296
if len(certs) > 1 {
return nil, fmt.Errorf("%s: contains %d certificates; each array entry must contain exactly one certificate", source, len(certs))
}
Each array entry must contain exactly one certificate; bundles are now
caught early with a clear error naming the offending index.

Signed-off-by: Pradipta Banerjee <pradipta.banerjee@gmail.com>
@bpradipt bpradipt merged commit 7753fff into confidential-devhub:main Jun 2, 2026
3 checks passed
@bpradipt bpradipt deleted the inidata-val branch June 2, 2026 13:34
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.

2 participants