diff options
Diffstat (limited to 'esp8266/scripts')
-rw-r--r-- | esp8266/scripts/webrepl_setup.py | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/esp8266/scripts/webrepl_setup.py b/esp8266/scripts/webrepl_setup.py deleted file mode 100644 index d0bf8465d5..0000000000 --- a/esp8266/scripts/webrepl_setup.py +++ /dev/null @@ -1,83 +0,0 @@ -import sys -import socket -import time - -from websocket import * -import websocket_helper - - -def setup_server(): - s = socket.socket() - s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - - ai = socket.getaddrinfo("0.0.0.0", 8266) - addr = ai[0][4] - - s.bind(addr) - s.listen(1) - return s - -def getpass(stream, prompt): - stream.write(prompt) - passwd = b"" - while 1: - c = stream.read(1) - if c in (b"\r", b"\n"): - stream.write("\r\n") - return passwd - passwd += c - stream.write("*") - -def handle_conn(listen_sock): - cl, remote_addr = listen_sock.accept() - - print(""" - -First-time WebREPL connection has been received. WebREPL initial setup -will now start over this connection. During setup, UART REPL will be -non-responsive. After setup finishes, the board will be rebooted. In -case of error during setup, current session will continue. - -If you receive this message unexpectedly, it may mean that your WebREPL -connection is being hacked (power off board if unsure). -""") - - websocket_helper.server_handshake(cl) - ws = websocket(cl) - - ws.write("""\ -Welcome to MicroPython WebREPL!\r -\r -This is the first time you connect to WebREPL, so please set a password\r -to use for the following WebREPL sessions. Once you enter the password\r -twice, your board will reboot with WebREPL running in active mode. On\r -some boards, you may need to press reset button or reconnect power.\r -\r -""") - - while 1: - passwd1 = getpass(ws, "New password: ") - if len(passwd1) < 4: - ws.write("Password too short\r\n") - continue - elif len(passwd1) > 9: - ws.write("Password too long\r\n") - continue - passwd2 = getpass(ws, "Confirm password: ") - if passwd1 == passwd2: - break - ws.write("Passwords do not match\r\n") - - with open("port_config.py", "w") as f: - f.write("WEBREPL_PASS = %r\n" % passwd1.decode("ascii")) - - ws.write("Password successfully set, restarting...\r\n") - cl.close() - time.sleep(2) - import machine - machine.reset() - - -def test(): - s = setup_server() - handle_conn(s) |