Skip to content

Commit 63e3d9d

Browse files
committed
address review comments
1 parent 414692c commit 63e3d9d

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

credentials/generate-revocation-set.py

+7-5
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
from click_option_group import RequiredMutuallyExclusiveOptionGroup, optgroup
3333
from cryptography import x509
3434
from cryptography.hazmat.primitives.asymmetric import ec
35+
from cryptography.x509.oid import NameOID
3536

3637
# Supported log levels, mapping string values required for argument
3738
# parsing into logging constants
@@ -64,13 +65,14 @@ def extract_single_integer_attribute(subject, oid):
6465
return None
6566

6667

67-
def extract_single_attribute_from_cn(cn, marker):
68+
def extract_fallback_tag_from_common_name(cn, marker):
6869
val_len = 4
6970
start_idx = cn.find(marker)
7071

7172
if start_idx != -1:
7273
val_start_idx = start_idx + len(marker)
73-
return int(cn[val_start_idx:val_start_idx + val_len], 16)
74+
val = cn[val_start_idx:val_start_idx + val_len]
75+
return int(val, 16) if len(val) == 4 else None
7476

7577
return None
7678

@@ -82,9 +84,9 @@ def parse_vid_pid_from_distinguished_name(distinguished_name):
8284

8385
# Fallback method to get the VID/PID, encoded in CN as "Mvid:FFFF Mpid:1234"
8486
if vid is None and pid is None:
85-
cn = distinguished_name.get_attributes_for_oid(x509.ObjectIdentifier("2.5.4.3"))[0].value
86-
vid = extract_single_attribute_from_cn(cn, 'Mvid:')
87-
pid = extract_single_attribute_from_cn(cn, 'Mpid:')
87+
cn = distinguished_name.get_attributes_for_oid(x509.ObjectIdentifier(NameOID.COMMON_NAME))[0].value
88+
vid = extract_fallback_tag_from_common_name(cn, 'Mvid:')
89+
pid = extract_fallback_tag_from_common_name(cn, 'Mpid:')
8890

8991
return vid, pid
9092

0 commit comments

Comments
 (0)