rust/x509: use the raw serial number so leading zeros are not removed

pull/4721/head
Pierre Chifflier 5 years ago
parent 1d9f37a60e
commit 36d2e257c6

@ -34,4 +34,4 @@ ntp-parser = "0.4"
ipsec-parser = "0.5"
snmp-parser = "0.5"
tls-parser = "0.9"
x509-parser = "0.6"
x509-parser = "0.6.5"

@ -65,7 +65,12 @@ pub extern "C" fn rs_x509_get_serial(ptr: *const X509) -> *mut c_char {
return std::ptr::null_mut();
}
let x509 = cast_pointer! {ptr, X509};
let serial = x509.0.tbs_certificate.serial.to_string();
let raw_serial = x509.0.tbs_certificate.raw_serial();
let v : Vec<_> = raw_serial
.iter()
.map(|x| format!("{:02X}", x))
.collect();
let serial = v.join(":");
rust_string_to_c(serial)
}

Loading…
Cancel
Save