Završite parsiranje CONNECT zaglavlja prije prenošenja klijentskog toka
Proxy server koji prenosi samo nakon linije zahtjeva može poslati vlastito Host zaglavlje na TLS port odredišta.
Nakon linije CONNECT zahtjeva ovi bajtovi još uvijek pripadaju proxyju:
CONNECT service.example:443 HTTP/1.1\r\n
Host: service.example:443\r\n
User-Agent: example-client\r\n
\r\nProsljeđivanje Host ili User-Agent na port 443 daje odredištu obične tekstualne zaglavlja tamo gdje očekuje TLS. Ta greška može nastupiti prije nego što izbor šifre uopće postane važan.
- Čitajte i parsirajte do završetka zaglavlja praznom linijom, u okviru roka za postavljanje i ograničenja veličine zaglavlja.
- Primijenite autentifikaciju proxyja i politiku odredišta.
- Uspostavite odobrenu vezu s ciljem.
- Pošaljite uspješan CONNECT odgovor i uđite u tunelski način rada.
Sačuvajte međuspremljene bajtove nakon granice za odgovarajuće sljedeće stanje. Ne odbacujte ih i ne tretirajte zaglavlja proxy zahtjeva kao kasniji zahtjev web stranice.
Klijent ima odgovarajuću obvezu na strani odgovora: završite čitanje uspješnog CONNECT odgovora prije početka tunelskog protokola. Obje strane moraju se složiti oko granice na kojoj tok mijenja uloge.