iOS 11 CFNework Crash - TCPIOConnection::_handleTLSEvent(nw_tls_context*, tls_handshake_message_t, void () block_pointer, bool)

Area: CFNetwork Framework


Summary:

Crashlytics is reporting frequent crashes every hour from `CFNetwork`. We have no idea what's causing it. The app is always in 'Foreground' when this happens, so we are sure that it's nothing to do with background activity, but we not yet sure.This happens after iOS 11 has been released and with iOS 11.2.6 app crashing scenario getting higher then usual.


Any idea what's changed in iOS 11 that's causing the app to crash so often?



Steps to Reproduce: We only found these crashes from our live app store release in Crashlytics. I Cant reproduced at my end.



Following is the stacktrace we found from Crashlytics!!!




# Platform: ios

# Issue #: 2

# Date: 2018-04-05T05:03:00Z

# OS Version: 11.2.6 (15D100)

# Device: iPhone 6

# RAM Free: 3%

# Disk Free: 14.1%



#1. Crashed: com.apple.CFNetwork.Connection

0 libsystem_kernel.dylib 0x1838782e8 __pthread_kill + 8

1 libsystem_pthread.dylib 0x18398d2f8 pthread_kill$VARIANT$mp + 396

2 libsystem_c.dylib 0x1837e6fbc abort + 140

3 libsystem_c.dylib 0x1837baaa0 basename_r + 314

4 CFNetwork 0x184476d6c TCPIOConnection::_handleTLSEvent(nw_tls_context*, tls_handshake_message_t, void () block_pointer, bool) + 772

5 libnetwork.dylib 0x184c63d7c __tcp_connection_set_tls_message_handler_on_nw_connection_block_invoke + 168

6 libboringssl.dylib 0x184b3934c ___boringssl_context_certificate_request_callback_block_invoke + 136

7 libdispatch.dylib 0x1836e2a54 _dispatch_call_block_and_release + 24

8 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

9 libdispatch.dylib 0x1836ec96c _dispatch_queue_serial_drain$VARIANT$mp + 528

10 libdispatch.dylib 0x1836ed2fc _dispatch_queue_invoke$VARIANT$mp + 340

11 libdispatch.dylib 0x1836ec824 _dispatch_queue_serial_drain$VARIANT$mp + 200

12 libdispatch.dylib 0x1836ed2fc _dispatch_queue_invoke$VARIANT$mp + 340

13 libdispatch.dylib 0x1836edd20 _dispatch_root_queue_drain_deferred_wlh$VARIANT$mp + 404

14 libdispatch.dylib 0x1836f603c _dispatch_workloop_worker_thread$VARIANT$mp + 644

15 libsystem_pthread.dylib 0x18398af1c _pthread_wqthread + 932

16 libsystem_pthread.dylib 0x18398ab6c start_wqthread + 4



--



#0. com.apple.main-thread

0 (Missing) 0x100d5f608 (Missing)

1 (Missing) 0x100d5f680 (Missing)

2 (Missing) 0x100d5b2e0 (Missing)

3 (Missing) 0x100d5b204 (Missing)

4 (Missing) 0x100d5aae0 (Missing)

5 (Missing) 0x100d66490 (Missing)

6 (Missing) 0x100d66700 (Missing)

7 (Missing) 0x100d67c5c (Missing)

8 (Missing) 0x100d50500 (Missing)

9 libdyld.dylib 0x1837487a8 dyld_stub_binder + 60

10 AppName 0x10090a83c CLSExceptionCheckHandlers (CLSException.mm:336)

11 AppName 0x100900690 __60-[CLSCrashReportingController crashReportingSetupCompleted:]_block_invoke (CLSCrashReportingController.m:208)

12 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

13 libdispatch.dylib 0x1836eaf08 _dispatch_continuation_pop$VARIANT$mp + 428

14 libdispatch.dylib 0x1836f4848 _dispatch_source_invoke$VARIANT$mp + 1588

15 libdispatch.dylib 0x1836ef570 _dispatch_main_queue_callback_4CF$VARIANT$mp + 720

16 CoreFoundation 0x183d0b344 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12

17 CoreFoundation 0x183d08f20 __CFRunLoopRun + 2012

18 CoreFoundation 0x183c28c58 CFRunLoopRunSpecific + 436

19 GraphicsServices 0x185ad4f84 GSEventRunModal + 100

20 UIKit 0x18d3815c4 UIApplicationMain + 236

21 AppName 0x10073ac2c main (main.m:12)

22 libdyld.dylib 0x18374856c start + 4



#1. Crashed: com.apple.CFNetwork.Connection

0 libsystem_kernel.dylib 0x1838782e8 __pthread_kill + 8

1 libsystem_pthread.dylib 0x18398d2f8 pthread_kill$VARIANT$mp + 396

2 libsystem_c.dylib 0x1837e6fbc abort + 140

3 libsystem_c.dylib 0x1837baaa0 basename_r + 314

4 CFNetwork 0x184476d6c TCPIOConnection::_handleTLSEvent(nw_tls_context*, tls_handshake_message_t, void () block_pointer, bool) + 772

5 libnetwork.dylib 0x184c63d7c __tcp_connection_set_tls_message_handler_on_nw_connection_block_invoke + 168

6 libboringssl.dylib 0x184b3934c ___boringssl_context_certificate_request_callback_block_invoke + 136

7 libdispatch.dylib 0x1836e2a54 _dispatch_call_block_and_release + 24

8 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

9 libdispatch.dylib 0x1836ec96c _dispatch_queue_serial_drain$VARIANT$mp + 528

10 libdispatch.dylib 0x1836ed2fc _dispatch_queue_invoke$VARIANT$mp + 340

11 libdispatch.dylib 0x1836ec824 _dispatch_queue_serial_drain$VARIANT$mp + 200

12 libdispatch.dylib 0x1836ed2fc _dispatch_queue_invoke$VARIANT$mp + 340

13 libdispatch.dylib 0x1836edd20 _dispatch_root_queue_drain_deferred_wlh$VARIANT$mp + 404

14 libdispatch.dylib 0x1836f603c _dispatch_workloop_worker_thread$VARIANT$mp + 644

15 libsystem_pthread.dylib 0x18398af1c _pthread_wqthread + 932

16 libsystem_pthread.dylib 0x18398ab6c start_wqthread + 4



#2. com.google.fira.worker

0 AppName 0x10094a440 -[FIRASqliteStore sqliteHandle] + 4316832832

1 AppName 0x10094d288 -[FIRASqliteStore recordsForQuery:parameterValues:error:] + 4316844680

2 AppName 0x1009612f8 -[FIRADatabase dataTypesFromTableWithName:columnName:columnValue:error:createDataTypeBlock:] + 4316926712

3 AppName 0x100956a54 -[FIRADatabase queryAppMetadata:] + 4316883540

4 AppName 0x10095667c __37-[FIRADatabase initializeAppMetadata]_block_invoke + 4316882556

5 AppName 0x10094d958 -[FIRASqliteStore performTransaction:] + 4316846424

6 AppName 0x100956628 -[FIRADatabase initializeAppMetadata] + 4316882472

7 AppName 0x1009563c8 -[FIRADatabase initWithDatabaseName:persistedConfig:] + 4316881864

8 AppName 0x100965154 __48-[FIRAMeasurement startMeasurementOnWorkerQueue]_block_invoke + 4316942676

9 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

10 libdispatch.dylib 0x1836e6240 dispatch_once_f$VARIANT$mp + 60

11 AppName 0x100964e74 -[FIRAMeasurement startMeasurementOnWorkerQueue] + 4316941940

12 AppName 0x100964c44 -[FIRAMeasurement setEnabledOnWorkerQueue:] + 4316941380

13 AppName 0x1009793a4 __52-[FIRAScheduler scheduleOnWorkerQueueBlockID:block:]_block_invoke + 4317025188

14 libdispatch.dylib 0x1836e2a54 _dispatch_call_block_and_release + 24

15 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

16 libdispatch.dylib 0x1836ec96c _dispatch_queue_serial_drain$VARIANT$mp + 528

17 libdispatch.dylib 0x1836ed2fc _dispatch_queue_invoke$VARIANT$mp + 340

18 libdispatch.dylib 0x1836edd20 _dispatch_root_queue_drain_deferred_wlh$VARIANT$mp + 404

19 libdispatch.dylib 0x1836f603c _dispatch_workloop_worker_thread$VARIANT$mp + 644

20 libsystem_pthread.dylib 0x18398af1c _pthread_wqthread + 932

21 libsystem_pthread.dylib 0x18398ab6c start_wqthread + 4



#3. com.apple.uikit.eventfetch-thread

0 libsystem_kernel.dylib 0x183857568 mach_msg_trap + 8

1 libsystem_kernel.dylib 0x1838573e0 mach_msg + 72

2 CoreFoundation 0x183d0b108 __CFRunLoopServiceMachPort + 196

3 CoreFoundation 0x183d08cd4 __CFRunLoopRun + 1424

4 CoreFoundation 0x183c28c58 CFRunLoopRunSpecific + 436

5 Foundation 0x18465d594 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304

6 Foundation 0x18467c9ac -[NSRunLoop(NSRunLoop) runUntilDate:] + 96

7 UIKit 0x18deeb7a8 -[UIEventFetcher threadMain] + 136

8 Foundation 0x18475f0f4 __NSThread__start__ + 996

9 libsystem_pthread.dylib 0x18398c2b4 _pthread_body + 308

10 libsystem_pthread.dylib 0x18398c180 _pthread_body + 310

11 libsystem_pthread.dylib 0x18398ab74 thread_start + 4



#4. Thread

0 libsystem_kernel.dylib 0x183878d80 __workq_kernreturn + 8

1 libsystem_pthread.dylib 0x18398b080 _pthread_wqthread + 1288

2 libsystem_pthread.dylib 0x18398ab6c start_wqthread + 4



#5. io.answers.EventQueue (QOS: BACKGROUND)

0 CFNetwork 0x184543000 -[__NSCFURLSessionConfiguration copyWithZone:] + 3156

1 CFNetwork 0x18454151c +[NSURLSessionConfiguration defaultSessionConfiguration] + 44

2 AppName 0x100937b48 +[CLSURLSessionConfiguration defaultSessionConfiguration] (CLSURLSessionConfiguration.m:24)

3 AppName 0x10091f4ac -[ANSUploader session] (ANSUploader.m:189)

4 AppName 0x10092027c __71-[ANSUploader checkForExistingTaskMatchingDescription:completionBlock:]_block_invoke (ANSUploader.m:304)

5 Foundation 0x184739ba0 __NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK__ + 16

6 Foundation 0x184679894 -[NSBlockOperation main] + 72

7 Foundation 0x1846694c4 -[__NSOperationInternal _start:] + 848

8 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

9 libdispatch.dylib 0x1836ea200 _dispatch_block_invoke_direct$VARIANT$mp + 288

10 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

11 libdispatch.dylib 0x1836ea200 _dispatch_block_invoke_direct$VARIANT$mp + 288

12 libdispatch.dylib 0x1836ea0ac dispatch_block_perform$VARIANT$mp + 104

13 Foundation 0x18473b878 __NSOQSchedule_f + 376

14 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

15 libdispatch.dylib 0x1836eaf08 _dispatch_continuation_pop$VARIANT$mp + 428

16 libdispatch.dylib 0x1836e980c _dispatch_async_redirect_invoke$VARIANT$mp + 604

17 libdispatch.dylib 0x1836efcf4 _dispatch_root_queue_drain + 600

18 libdispatch.dylib 0x1836efa38 _dispatch_worker_thread3 + 120

19 libsystem_pthread.dylib 0x18398b06c _pthread_wqthread + 1268

20 libsystem_pthread.dylib 0x18398ab6c start_wqthread + 4



#6. Thread

0 libsystem_pthread.dylib 0x18398ab68 start_wqthread + 122



#7. GAIThread

0 libsystem_kernel.dylib 0x183857568 mach_msg_trap + 8

1 libsystem_kernel.dylib 0x1838573e0 mach_msg + 72

2 CoreFoundation 0x183d0b108 __CFRunLoopServiceMachPort + 196

3 CoreFoundation 0x183d08cd4 __CFRunLoopRun + 1424

4 CoreFoundation 0x183c28c58 CFRunLoopRunSpecific + 436

5 Foundation 0x18465d594 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304

6 Foundation 0x1846af56c -[NSRunLoop(NSRunLoop) run] + 88

7 AppName 0x100878c50 +[GAI threadMain:] (GAI.m:241)

8 Foundation 0x18475f0f4 __NSThread__start__ + 996

9 libsystem_pthread.dylib 0x18398c2b4 _pthread_body + 308

10 libsystem_pthread.dylib 0x18398c180 _pthread_body + 310

11 libsystem_pthread.dylib 0x18398ab74 thread_start + 4



#8. Thread

0 libsystem_kernel.dylib 0x183878d80 __workq_kernreturn + 8

1 libsystem_pthread.dylib 0x18398aeec _pthread_wqthread + 884

2 libsystem_pthread.dylib 0x18398ab6c start_wqthread + 4



#9. trust

0 libsystem_kernel.dylib 0x183857568 mach_msg_trap + 8

1 libsystem_kernel.dylib 0x1838573e0 mach_msg + 72

2 libdispatch.dylib 0x1836f8890 _dispatch_mach_send_and_wait_for_reply + 644

3 libdispatch.dylib 0x1836f8d3c dispatch_mach_send_with_result_and_wait_for_reply$VARIANT$mp + 56

4 libxpc.dylib 0x1839c7d7c xpc_connection_send_message_with_reply_sync + 196

5 Security 0x18495147c securityd_message_with_reply_sync + 176

6 Security 0x1849517bc securityd_send_sync_and_do + 80

7 Security 0x1849e39ec __SecTrustEvaluateIfNecessary_block_invoke_3 + 432

8 Security 0x1849b2034 SecOSStatusWith + 52

9 Security 0x1849e3820 __SecTrustEvaluateIfNecessary_block_invoke_2 + 96

10 libsystem_trace.dylib 0x1839a8b54 _os_activity_initiate_impl + 60

11 Security 0x1849e37b0 __SecTrustEvaluateIfNecessary_block_invoke + 260

12 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

13 libdispatch.dylib 0x1836eb618 _dispatch_queue_barrier_sync_invoke_and_complete + 56

14 Security 0x1849e08a4 SecTrustEvaluateIfNecessary + 520

15 Security 0x1849e0bcc SecTrustEvaluate + 64

16 Security 0x1849b195c build_trust_chains + 484

17 CoreFoundation 0x183c40938 __CFDictionaryApplyFunction_block_invoke + 24

18 CoreFoundation 0x183c27e98 CFBasicHashApply + 132

19 CoreFoundation 0x183c319ec CFDictionaryApplyFunction + 288

20 Security 0x1849b168c SecPKCS12Import + 244

21 AppName 0x100749e60 +[NetworkManager extractIdentity::] (NetworkManager.m:174)

22 AppName 0x100749084 __44-[NetworkManager authenticateWithSSLPinning]_block_invoke (NetworkManager.m:72)

23 AppName 0x100869a2c -[AFURLSessionManager URLSession:didReceiveChallenge:completionHandler:] (AFURLSessionManager.m:975)

24 Foundation 0x184739ba0 __NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK__ + 16

25 Foundation 0x184679894 -[NSBlockOperation main] + 72

26 Foundation 0x1846694c4 -[__NSOperationInternal _start:] + 848

27 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

28 libdispatch.dylib 0x1836ea200 _dispatch_block_invoke_direct$VARIANT$mp + 288

29 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

30 libdispatch.dylib 0x1836ea200 _dispatch_block_invoke_direct$VARIANT$mp + 288

31 libdispatch.dylib 0x1836ea0ac dispatch_block_perform$VARIANT$mp + 104

32 Foundation 0x18473b878 __NSOQSchedule_f + 376

33 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

34 libdispatch.dylib 0x1836eaf08 _dispatch_continuation_pop$VARIANT$mp + 428

35 libdispatch.dylib 0x1836e980c _dispatch_async_redirect_invoke$VARIANT$mp + 604

36 libdispatch.dylib 0x1836efcf4 _dispatch_root_queue_drain + 600

37 libdispatch.dylib 0x1836efa38 _dispatch_worker_thread3 + 120

38 libsystem_pthread.dylib 0x18398b06c _pthread_wqthread + 1268

39 libsystem_pthread.dylib 0x18398ab6c start_wqthread + 4



#10. com.twitter.crashlytics.ios.MachExceptionServer

0 libsystem_kernel.dylib 0x183857568 mach_msg_trap + 8

1 libsystem_kernel.dylib 0x1838573e0 mach_msg + 72

2 AppName 0x1008f6bbc CLSMachExceptionServer (CLSMachException.c:180)

3 libsystem_pthread.dylib 0x18398c2b4 _pthread_body + 308

4 libsystem_pthread.dylib 0x18398c180 _pthread_body + 310

5 libsystem_pthread.dylib 0x18398ab74 thread_start + 4



#11. com.twitter.crashlytics.ios.logging

0 AppName 0x100910834 CLSUserLoggingWriteInternalKeyValue (CLSUserLogging.m:59)

1 libdispatch.dylib 0x1836e2a54 _dispatch_call_block_and_release + 24

2 libdispatch.dylib 0x1836e2a14 _dispatch_client_callout + 16

3 libdispatch.dylib 0x1836ec96c _dispatch_queue_serial_drain$VARIANT$mp + 528

4 libdispatch.dylib 0x1836ed2fc _dispatch_queue_invoke$VARIANT$mp + 340

5 libdispatch.dylib 0x1836edd20 _dispatch_root_queue_drain_deferred_wlh$VARIANT$mp + 404

6 libdispatch.dylib 0x1836f603c _dispatch_workloop_worker_thread$VARIANT$mp + 644

7 libsystem_pthread.dylib 0x18398af1c _pthread_wqthread + 932

8 libsystem_pthread.dylib 0x18398ab6c start_wqthread + 4



#12. com.apple.NSURLConnectionLoader

0 libsystem_kernel.dylib 0x183857568 mach_msg_trap + 8

1 libsystem_kernel.dylib 0x1838573e0 mach_msg + 72

2 CoreFoundation 0x183d0b108 __CFRunLoopServiceMachPort + 196

3 CoreFoundation 0x183d08cd4 __CFRunLoopRun + 1424

4 CoreFoundation 0x183c28c58 CFRunLoopRunSpecific + 436

5 CFNetwork 0x184517b08 -[__CoreSchedulingSetRunnable runForever] + 780

6 Foundation 0x18475f0f4 __NSThread__start__ + 996

7 libsystem_pthread.dylib 0x18398c2b4 _pthread_body + 308

8 libsystem_pthread.dylib 0x18398c180 _pthread_body + 310

9 libsystem_pthread.dylib 0x18398ab74 thread_start + 4

Replies

Hello,

did you solved your issue ?

Our situation is pretty much identical to yours. Check out this thread: https://forums.developer.apple.com/thread/95387