diff options
| author | unitexe <unitexe70@gmail.com> | 2026-01-04 12:52:20 -0600 |
|---|---|---|
| committer | unitexe <unitexe70@gmail.com> | 2026-01-04 12:52:20 -0600 |
| commit | b70976e4e40a3b5332cc713c5d1db595930a6266 (patch) | |
| tree | 00498c478fad080801fc8a00213aa615f728d6e3 /banner.py | |
| parent | 0db069f3a76b3cad2dcd300cbcdcafa42a091010 (diff) | |
Add python script to serve banner
Diffstat (limited to 'banner.py')
| -rw-r--r-- | banner.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/banner.py b/banner.py new file mode 100644 index 0000000..98d7ef6 --- /dev/null +++ b/banner.py @@ -0,0 +1,46 @@ +#!/usr/bin/env python3 +from http.server import HTTPServer, BaseHTTPRequestHandler +import signal +import threading + +BANNER = """ + ###### ###### ###### + ## ## ## ## ## ## + ## ## ## + ## ## ## + ## ## ## + ## ## ## ## ## ## + ###### ###### ###### + +""" + +class BannerHandler(BaseHTTPRequestHandler): + def do_GET(self): + self.send_response(200) + self.send_header("Content-type", "text/plain") + self.end_headers() + self.wfile.write(BANNER.encode()) + + def log_message(self, format, *args): + print(f"{self.client_address[0]} - {format % args}") + +server = None + +def signal_handler(sig, frame): + print("Shutting down...") + if server: + threading.Thread(target=server.shutdown).start() + +def run(port=8080): + global server + server = HTTPServer(("0.0.0.0", port), BannerHandler) + + signal.signal(signal.SIGTERM, signal_handler) + signal.signal(signal.SIGINT, signal_handler) + + print(f"Starting banner server on port {port}...") + server.serve_forever() + print(f"Server stopped") + +if __name__ == '__main__': + run() |
