cloudflare / mitm.watch

MIT License
13 stars 4 forks source link

Production (minified) build of the client has incorrect behavior #3

Closed Lekensteyn closed 6 years ago

Lekensteyn commented 6 years ago

During development I build the server with make -C server DEV=1 (after setting GOROOT and GOPATH to use tris). For some reason, the production build (without DEV=1) resulted in strange test failures.

A closer look showed that the Client Hello packet contained version 0x304 ("TLS 1.3") which should not have happened (TLS 1.3 is negotiated via the supported_versions extension). I smell a bug in the minification functionality of gopherjs, but this needs further investigation to confirm.

As a workaround, tls13.mitm.watch currently uses the build without minification.

Software versions:

Lekensteyn commented 6 years ago

An outdated version of crypto/tls was built, I had to remove $GOPATH/pkg/linux_js_min/ to make it work properly. Will deploy a new version with other fixes as well.