diff --git a/lib/ZitiTunnelEvent.swift b/lib/ZitiTunnelEvent.swift index 1b72cc5b..2f72c973 100644 --- a/lib/ZitiTunnelEvent.swift +++ b/lib/ZitiTunnelEvent.swift @@ -222,10 +222,12 @@ import CZitiPrivate /// Certificte PEM (possibly multiple certificates) public var certPEM:String = "" + + /// pointer to result of parsing event's `config_json` field. allocated by ziti-sdk-c + private var ziti_cfg_ptr:UnsafeMutablePointer? init(_ ziti:Ziti, _ evt:UnsafePointer) { super.init(ziti) - var ziti_cfg_ptr:UnsafeMutablePointer? parse_ziti_config_ptr(&ziti_cfg_ptr, evt.pointee.config_json, strlen(evt.pointee.config_json)) self.controllerUrl = toStr(ziti_cfg_ptr?.pointee.controller_url) @@ -245,6 +247,12 @@ import CZitiPrivate self.certPEM = toStr(ziti_cfg_ptr?.pointee.id.cert) } + deinit { + if ziti_cfg_ptr != nil { + free_ziti_config_ptr(ziti_cfg_ptr) + } + } + /// Debug description /// - returns: String containing debug description of this event public override var debugDescription: String {