From a57fd2599050e2d5ee7b90eca9c193c7c8bbce1b Mon Sep 17 00:00:00 2001 From: Winter Hille Date: Mon, 20 May 2024 20:40:11 -0700 Subject: [PATCH] switched to https and added main.md --- client-handler.fnl | 4 +++- pages/main.md | 5 +++++ server.fnl | 21 +++++++++++++++++---- 3 files changed, 25 insertions(+), 5 deletions(-) create mode 100644 pages/main.md diff --git a/client-handler.fnl b/client-handler.fnl index 0f32afa..dd5aac3 100644 --- a/client-handler.fnl +++ b/client-handler.fnl @@ -7,7 +7,9 @@ (fn client-handler.handle-client [client] (let [request (client:receive :*l)] - (print (: "Request from: %s:%s" :format (client:getpeername))) + (io.stdout:setvbuf :no) + + (print (: "Request from: %s:%s" :format _G.client-address _G.client-port)) (print request) (while true (local request (client:receive :*l)) diff --git a/pages/main.md b/pages/main.md new file mode 100644 index 0000000..63b9f1b --- /dev/null +++ b/pages/main.md @@ -0,0 +1,5 @@ + diff --git a/server.fnl b/server.fnl index 29d9f43..fbe5b17 100644 --- a/server.fnl +++ b/server.fnl @@ -1,16 +1,29 @@ (local socket (require :socket)) +(local ssl (require :ssl)) (local handle-client (. (require :client-handler) :handle-client)) -(local port 8080) +(local port 50625) (local server (socket.tcp)) (server:bind "*" port) (server:listen) +(local params {:mode "server" + :protocol "tlsv1_2" + :key "../privkey.pem" + :certificate "../fullchain.pem" + :cafile "../chain.pem" + :verify "none" + :options "all"}) + (while true - (local client (server:accept)) + (var client (server:accept)) - (local co (coroutine.create (fn [] (handle-client client)))) + (set (_G.client-address _G.client-port) (client:getpeername)) - (coroutine.resume co)) + (set client (ssl.wrap client params)) + (client:dohandshake) + + (let [co (coroutine.create (fn [] (handle-client client)))] + (coroutine.resume co)))