From e8e86ecf9f9deb490248db84eba53e024999b642 Mon Sep 17 00:00:00 2001 From: Concedo <39025047+LostRuins@users.noreply.github.com> Date: Fri, 16 Feb 2024 17:04:07 +0800 Subject: [PATCH] fixed SSL not working with streaming --- koboldcpp.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/koboldcpp.py b/koboldcpp.py index a18f9feae..ae80cb1b6 100644 --- a/koboldcpp.py +++ b/koboldcpp.py @@ -1069,11 +1069,20 @@ Enter Prompt:
def RunServerMultiThreaded(addr, port, embedded_kailite = None, embedded_kcpp_docs = None): - global exitcounter + global exitcounter, sslvalid sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + if args.ssl and sslvalid: + import ssl + certpath = os.path.abspath(args.ssl[0]) + keypath = os.path.abspath(args.ssl[1]) + context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH) + context.load_cert_chain(certfile=certpath, keyfile=keypath) + sock = context.wrap_socket(sock, server_side=True) + sock.bind((addr, port)) - sock.listen(12) + numThreads = 12 + sock.listen(numThreads) class Thread(threading.Thread): def __init__(self, i): @@ -1083,19 +1092,12 @@ def RunServerMultiThreaded(addr, port, embedded_kailite = None, embedded_kcpp_do self.start() def run(self): - global exitcounter, sslvalid + global exitcounter handler = ServerRequestHandler(addr, port, embedded_kailite, embedded_kcpp_docs) with http.server.HTTPServer((addr, port), handler, False) as self.httpd: try: self.httpd.socket = sock self.httpd.server_bind = self.server_close = lambda self: None - - if args.ssl and sslvalid: - import ssl - certpath = os.path.abspath(args.ssl[0]) - keypath = os.path.abspath(args.ssl[1]) - self.httpd.socket = ssl.wrap_socket(self.httpd.socket, keyfile=keypath, certfile=certpath, server_side=True) - self.httpd.serve_forever() except (KeyboardInterrupt,SystemExit): exitcounter = 999 @@ -1110,7 +1112,6 @@ def RunServerMultiThreaded(addr, port, embedded_kailite = None, embedded_kcpp_do exitcounter = 999 self.httpd.server_close() - numThreads = 12 threadArr = [] for i in range(numThreads): threadArr.append(Thread(i))