Skip to content

Conversation

liamjm
Copy link
Collaborator

@liamjm liamjm commented Oct 9, 2025

The ComponentManufacturerID field in the ComponentIdentifierV1 and ComponentIdentifierV2 structs was an 'int', which is only 32 bits on 32-bit architectures. This caused an "integer too large" error when parsing a certificate with a manufacturer ID that exceeded the maximum value for a 32-bit signed integer.

This change fixes the issue by changing the type of the ComponentManufacturerID field to int64 in the Component, ComponentIdentifierV1, and ComponentIdentifierV2 structs. This ensures that the field has enough range to handle larger integer values on all architectures.

Fixes #439

The ComponentManufacturerID field in the ComponentIdentifierV1 and
ComponentIdentifierV2 structs was an 'int', which is only 32 bits on
32-bit architectures. This caused an "integer too large" error when
parsing a certificate with a manufacturer ID that exceeded the maximum
value for a 32-bit signed integer.

This change fixes the issue by changing the type of the
ComponentManufacturerID field to int64 in the Component,
ComponentIdentifierV1, and ComponentIdentifierV2 structs. This ensures
that the field has enough range to handle larger integer values on all
architectures.
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.

Self-test failure on 32-bit i386 architecture
2 participants