diff --git a/Sources/NIOSSL/SSLCertificate.swift b/Sources/NIOSSL/SSLCertificate.swift index 7c66a39b..fa4ed23a 100644 --- a/Sources/NIOSSL/SSLCertificate.swift +++ b/Sources/NIOSSL/SSLCertificate.swift @@ -46,6 +46,11 @@ public class NIOSSLCertificate { case ipv4(in_addr) case ipv6(in6_addr) } + + public var serialNumber: [UInt8] { + let serialNumber = CNIOBoringSSL_X509_get_serialNumber(self.ref)! + return Array(UnsafeBufferPointer(start: serialNumber.pointee.data, count: Int(serialNumber.pointee.length))) + } private init(withOwnedReference ref: UnsafeMutablePointer) { self._ref = UnsafeMutableRawPointer(ref) // erasing the type for @_implementationOnly import CNIOBoringSSL @@ -438,7 +443,8 @@ internal class SubjectAltNameSequence: Sequence, IteratorProtocol { extension NIOSSLCertificate: CustomStringConvertible { public var description: String { - var desc = "