Previously, they were incorrectly decoded or represented as just "0" due to a bug in the library (they were interpreted just as when they contained only one octet which was "\x00", which was alleged to mean "only one subidentifier being 0", because of a missing conditional check on the raw OID byte length in the code when handling this special case).
The corresponding test case was also added to the code so that the issue is ensured to be fixed.
This pull request will allow to correctly handle OIDs starting with two zero subidentifiers (literally "itu-t recommendation").
Here in an example of such an OID definition from the ASN.1 definitions for the TCAP (Q.773) protocol:
Previously, they were incorrectly decoded or represented as just "0" due to a bug in the library (they were interpreted just as when they contained only one octet which was "
\x00
", which was alleged to mean "only one subidentifier being 0", because of a missing conditional check on the raw OID byte length in the code when handling this special case).The corresponding test case was also added to the code so that the issue is ensured to be fixed.