Allow custom URLProtocol classes to be registered in URLSessionConfiguration's default configuration

Number:rdar://36151971 Date Originated:20-dic-2017 10:28 a. m.
Status:Open Resolved:
Product:iOS + SDK Product Version:iOS 11.x
Classification:Other Bug Reproducible:Always
Custom URLProtocols registered via `registerClass:` do not affect URLSessionConfiguration's default configuration. 

While a URLSession can be customized at construction time using a custom URLSessionConfiguration object, it’s not always possible to inject the desired parameters (i.e.: if the session is used by a 3rd party framework).

Steps to Reproduce:
1. Register a custom URLProtocol using `registerClass:`
2. Inspect `URLSessionConfiguration.default.protocolClasses`

Expected Results:
The custom URLProtocol is listed there.

Actual Results:
Only system level protocols are listed.

iOS 11.x



Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!