Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
114 changes: 57 additions & 57 deletions poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@ authors = [
{ name = "Nordic Semiconductor ASA" }
]
dependencies = [
"cbor2>=5.6.5",
"cbor2>=5.9.0",
"cryptography>=49.0.0",
"cffi>=2.0.0",
"requests>=2.34.2",
"idna>=3.10",
"idna>=3.15",
"urllib3>=2.7.0",
"semver>=3.0.0",
"pyjwt>=2.13.0",
Expand Down
15 changes: 9 additions & 6 deletions src/nrfcloud_utils/device_credentials_installer.py
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,9 @@ def check_mfw_version(cred_if):
# check for required version
parsed_ver = parse_mfw_ver(ver)

if parsed_ver is None:
if "ntn" in ver:
pass
elif parsed_ver is None:
logger.error('Unexpected modem FW version format... continuing')
elif semver.Version.parse(parsed_ver).compare(MIN_REQD_MFW_VER) < 0:
logger.error(f'Modem FW version must be >= {MIN_REQD_MFW_VER}')
Expand Down Expand Up @@ -433,10 +435,11 @@ def main(in_args):

# AT-command-based SHA check has a modem firmware version requirement
if (cmd_type_has_at):
parsed_ver = parse_mfw_ver(mfw_ver)
if parsed_ver and semver.Version.parse(parsed_ver).compare(MIN_REQD_MFW_VER_FOR_VERIFY) < 0:
logger.error(f'Skipping SHA verification, modem FW version must be >= {MIN_REQD_MFW_VER_FOR_VERIFY}')
check_sha = False
if "ntn" not in mfw_ver:
parsed_ver = parse_mfw_ver(mfw_ver)
if parsed_ver and semver.Version.parse(parsed_ver).compare(MIN_REQD_MFW_VER_FOR_VERIFY) < 0:
logger.error(f'Skipping SHA verification, modem FW version must be >= {MIN_REQD_MFW_VER_FOR_VERIFY}')
check_sha = False

verify_res = verify_credentials(cred_if, args.sectag, nrf_ca_cert_text, dev_text, prv_text,
check_sha=check_sha)
Expand Down Expand Up @@ -536,7 +539,7 @@ def verify_credential(cred_if, sec_tag, cred_type, cred = None, get_hash = False
logger.error(f'...Failed to calculate hash for {cred_type_name}')
logger.debug(f'Error details: {e}')
return False

if hash != expected_hash:
logger.error(f'{cred_type_name} - SHA mismatch:')
logger.error(f'\tDevice : {hash}')
Expand Down
Loading