1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-09 17:38:00 +00:00
putty-source/proxy
Simon Tatham 3c21fa54c5 HTTP proxy: implement Digest authentication.
In http.c, this drops in reasonably neatly alongside the existing
support for Basic, now that we're waiting for an initial 407 response
from the proxy to tell us which auth mechanism it would prefer to use.

The rest of this patch is mostly contriving to add testcrypt support
for the function in cproxy.c that generates the complicated output
header to go in the HTTP request: you need about a dozen assorted
parameters, the actual response hash has two more hashes in its
preimage, and there's even an option to hash the username as well if
necessary. Much more complicated than CHAP (which is just plain
HMAC-MD5), so it needs testing!

Happily, RFC 7616 comes with some reasonably useful test cases, and
I've managed to transcribe them directly into cryptsuite.py and
demonstrate that my response-generator agrees with them.

End-to-end testing of the whole system was done against Squid 4.13
(specifically, the squid package in Debian bullseye, version 4.13-10).
2021-11-20 15:08:19 +00:00
..
cproxy.c HTTP proxy: implement Digest authentication. 2021-11-20 15:08:19 +00:00
cproxy.h HTTP proxy: implement Digest authentication. 2021-11-20 15:08:19 +00:00
http.c HTTP proxy: implement Digest authentication. 2021-11-20 15:08:19 +00:00
interactor.c Fix Plink's handling of interactor_announce() blank lines. 2021-11-06 14:48:26 +00:00
nocproxy.c HTTP proxy: implement Digest authentication. 2021-11-20 15:08:19 +00:00
noproxy.c Pass an Interactor to new_connection(). 2021-10-30 18:19:56 +01:00
nosshproxy.c Pass an Interactor to new_connection(). 2021-10-30 18:19:56 +01:00
pproxy.c Move proxy-related source files into a subdirectory. 2021-10-30 17:29:24 +01:00
proxy.c Send ProxyNegotiator output even when pn->done is set. 2021-11-19 16:39:25 +00:00
proxy.h HTTP proxy: implement Digest authentication. 2021-11-20 15:08:19 +00:00
socks4.c Reorganise proxy system into coroutines. 2021-11-19 15:09:17 +00:00
socks5.c Support interactive password prompts in SOCKS 5. 2021-11-19 15:40:10 +00:00
socks.h Pull out SOCKS protocol constants into a header. 2021-11-19 15:09:17 +00:00
sshproxy.c New Seat query, has_mixed_input_stream(). 2021-11-06 14:48:26 +00:00
telnet.c Telnet proxy: censor the password in the log file. 2021-11-19 18:34:10 +00:00