going-flying.com gemini git repository
7eb2ee30e12c8911904dddf85ccacfd9714357c2 - Matthew Ernisse - 1614385166
missed a couple "qs"
diff --git a/cgi-bin/gmicgi/__init__.py b/cgi-bin/gmicgi/__init__.py index c96d06c..1bb85c1 100755 --- a/cgi-bin/gmicgi/__init__.py +++ b/cgi-bin/gmicgi/__init__.py @@ -97,7 +97,7 @@ class GeminiCGI(object): def __init__(self): self.path_info = os.environ.get('PATH_INFO') self.script_path = os.environ.get('SCRIPT_PATH') - self.query_string = os.environ.get('QUERY_STRING') + self.query_string = os.environ.get('QUERY_STRING').strip() self.query_dequoted = '' self.query_parsed = {} diff --git a/cgi-bin/vfdsay.py b/cgi-bin/vfdsay.py index 2a62a32..f6a03d1 100755 --- a/cgi-bin/vfdsay.py +++ b/cgi-bin/vfdsay.py @@ -53,20 +53,21 @@ if __name__ == '__main__': sys.exit(0) try: - qs = unquote(qs).strip() - list(map(unicodeCheck, cgi.query_string)) + list(map(unicodeCheck, cgi.query_dequoted)) except Exception as e: cgi.Response.Fail() + sys.stderr.write('Unicode in query string.\n') sys.exit(0) - if len(cgi.query_string) > 24: + if len(cgi.query_dequoted) > 24: cgi.Response.Fail() + sys.stderr.write('query_string too long\n') sys.exit(0) try: resp = requests.get( 'http://wy60.internal.ub3rgeek.net/update', - params={'msg': qs} + params={'msg': cgi.query_dequoted} ) resp.raise_for_status() @@ -91,7 +92,7 @@ CONNECT 9600 ENTERING ARPS 331... -VFD "{qs}" +VFD "{cgi.query_dequoted}" OK +++ OK