We now bypass the global proxy if trying to connect to localhost (as some of our tests do) and we also hand the actual target URL to the potential proxy auto configuration (PAC) script.
The cf::wrap function returns a temporary object that can be converted to a CFType, but this object’s lifetime is that of the temporary object returned. By putting the result of cf::wrap into a C array we keep the CFTypeRef around longer than the temporary object.
Previously this was under the OakSystem framework which depends on the io framework meaning that the io framework itself was unable to obtain a basic environment, which is necessary for next commit.
GlimmerBlocker (http://GlimmerBlocker.org) and other proxies may intercept the web data and replace the HTTP/1.0 response with a HTTP/1.1 response.
Modified test to accept either.