Fix SSH host key generation warnings #1290
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Fix several issues in SSH host key generation and import that caused warnings in system logs:
mkkeys: Switch from openssl genpkey (PKCS#8) to genrsa (PKCS#1) to match the expected format in mksshkey
mksshkey: Fix PEM file reconstruction by properly formatting base64 content with 64-character line wrapping using printf+fold. The previous approach concatenated the END marker to the last base64 line, causing "unrecognised raw private key format" errors
mksshkey: Correct ssh-keygen format flag from PKCS8 to PEM for public key conversion
confd:keystore.c: Skip gen_hostkey() when keys are empty to prevent attempting to import invalid PEM files during SR_EV_UPDATE events before keys are populated in the config tree
mksshkey: Convert from bash to POSIX sh (no bashisms were used)
This eliminates the "do_convert_from_pem: unrecognised raw private key format" error messages during system boot and SSH key configuration.
Fixes #1289
Checklist
Tick relevant boxes, this PR is-a or has-a: