I'm trying to debug what appears to be a high rate traffic memory corruption related issue in a Network Extension and am attempting to run the Address Sanitizer to help track the issue down. With the Address Sanitizer enabled the Network Extension fails to start correctly. Does anyone know if this is a supported operation mode ? Without Address Santization the tunnel executes and can be debugged successfully.
If I attempt to attach the Xcode debugger to the extension as it starts there is some indication that the session is starting but then it dies.
default 13:57:09.831134 +0100 nesessionmanager NESMVPNSession[ACME VPN:0AA30726-7734-40A5-8387-43FCF341B0D9]: Received a start command from ACME[524]
default 13:57:09.836846 +0100 nesessionmanager NESMVPNSession[ACME VPN:0AA30726-7734-40A5-8387-43FCF341B0D9]: status changed to connecting
default 13:57:09.847652 +0100 neagent calling plugIn beginUsing:
default 13:57:09.849673 +0100 pkd allowing host 296 <private> to use plug-in <private>(<private>) uuid=C35A923C-31AE-46DF-88EF-8BE822E233A0 at <private>
default 13:57:10.101368 +0100 debugserver Attach succeeded, ready to debug.
default 13:57:11.191169 +0100 parsecd generating app whitelist
default 13:57:11.306688 +0100 parsecd installed app signature: <private>
default 13:57:12.956961 +0100 CommCenter QMI: Svc=0x03(NAS) Ind MsgId=0x0051 Bin=['01 1F 00 80 03 02 04 56 0A 51 00 13 00 14 06 00 BE EE 96 FF C6 FF A2 01 00 32 A4 03 00 01 32 00']
default 13:57:13.494745 +0100 locationd message 'kCLConnectionMessageWatchdog' received from client '/usr/sbin/WirelessRadioManagerd'
default 13:57:14.329148 +0100 debugserver warning: MachProcess::DisableBreakpoint: unable to read memory at 0x1004b8cac
default 13:57:14.329984 +0100 debugserver warning: MachProcess::DisableBreakpoint: unable to read memory at 0x1004d6c64
default 13:57:14.330783 +0100 debugserver warning: MachProcess::DisableBreakpoint: unable to read memory at 0x101509c10
default 13:57:16.735887 +0100 debugserver warning: MachProcess::EnableBreakpoint ( addr = 0x101509c10 ): breakpoint already enabled.
default 13:57:16.995835 +0100 atc <ATLegacyMessageLink: 0x153ec3e10, wifi=0> ---> [Ping Request. id=289, Session=0, params=(null)]
default 13:57:17.614492 +0100 locationd Incrementing METs -- mets:<private> metsFromGrade:<private>
default 13:57:18.077282 +0100 CommCenter QMI: Svc=0x03(NAS) Ind MsgId=0x0051 Bin=['01 1F 00 80 03 02 04 57 0A 51 00 13 00 14 06 00 BF ED 97 FF C6 FF A2 01 00 32 A4 03 00 01 32 00']
default 13:57:18.610962 +0100 debugserver 1 +0.000000 sec [0211/1607]: error: ::read ( -1, 0x16e0d6a28, 1024 ) => -1 err = Bad file descriptor (0x00000009)
default 13:57:18.611178 +0100 debugserver Exiting.
default 13:57:18.612586 +0100 neagent connection to plug-in <private>(C35A923C-31AE-46DF-88EF-8BE822E233A0) lost
error 13:57:18.613934 +0100 neagent Hub connection error Error Domain=NSCocoaErrorDomain Code=4097 "connection to service named com.acorp.acme.ACME.vpnTunnel" UserInfo={NSDebugDescription=connection to service named com.acorp.acme.ACME.vpnTunnel}
default 13:57:18.617629 +0100 neagent PlugInKit error in beginUsing:
error 13:57:18.617984 +0100 neagent Failed to start extension com.acorp.acme.ACME.vpnTunnel: Error Domain=NSCocoaErrorDomain Code=4097 "connection to service named com.acorp.ACME.ACME.vpnTunnel" UserInfo={NSDebugDescription=connection to service named com.acorp.acme.ACME.vpnTunnel}
default 13:57:18.619279 +0100 neagent killing invalid plugIn
I was wondering whether the slowdown/size increase that the sanitizer imposes may be the issue. The extension uses around 3.5MB of memory in normal use.
Regards
Mark