Mercurial > hg
diff mercurial/streamclone.py @ 37011:02221d6fb041
url: add HTTP handler that uses a proxied socket
Now that we have a socket proxy that can log I/O, we need to teach
mechanisms that open URLs how to use it.
We invent a custom HTTP handler class that knows how to proxy
sockets as soon as they are opened. We teach the high-level
opener() to accept logging arguments so a logging HTTP handler
can be constructed.
We don't yet support intercepting HTTPS sockets because I
don't want to go down that rabbit hole.
For the record, the urllib API is crazy and it took way too long
to figure out at what levels I needed to plug in to modify
the socket.
# no-check-commit because we must name http_open that way
Differential Revision: https://phab.mercurial-scm.org/D2722
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Mon, 12 Mar 2018 15:43:36 -0700 |
parents | 2d3e486d09d0 |
children | 65b86ee69383 |