From 9a65204a4540a261f5026b435e1b89b9ee75273f Mon Sep 17 00:00:00 2001
From: Chris Fiege <chris@tinyhost.de>
Date: Wed, 27 Oct 2021 21:35:59 +0200
Subject: [PATCH] cgi: Remove scripts unused in parker

---
 cgi/approve_key   | 43 -------------------------
 cgi/deny_key      | 38 ----------------------
 cgi/gwstatus_push | 33 -------------------
 cgi/newkey        | 80 -----------------------------------------------
 4 files changed, 194 deletions(-)
 delete mode 100755 cgi/approve_key
 delete mode 100755 cgi/deny_key
 delete mode 100755 cgi/gwstatus_push
 delete mode 100755 cgi/newkey

diff --git a/cgi/approve_key b/cgi/approve_key
deleted file mode 100755
index f3adcd7..0000000
--- a/cgi/approve_key
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/usr/bin/env python2
-# coding=utf-8
-import cgi
-import cgitb
-import re
-import subprocess
-cgitb.enable()
-
-NAME_PATTERN = '^[a-zA-Z0-9-_\. äÄöÖüÜß]+$'
-CODE_PATTERN = '^[a-zA-Z0-9]{64}$'
-
-KEY_DIR='/home/kasalehlia/keys/'
-KEY_SCRIPT = '/home/kasalehlia/bin/ffbs_keys'
-GIT_DIR = '/home/kasalehlia/peers'
-
-print "Content-Type: text/html;charset=utf-8"
-print ""
-
-form = cgi.FieldStorage()
-
-try:
-    name = form['name'].value
-    code = form['code'].value
-    if re.match(NAME_PATTERN, name) and re.match(CODE_PATTERN, code) and name not in ['.','..']:
-        with open(KEY_DIR+'codes/'+code, 'r') as f:
-            validate = f.read()
-        if validate == name:
-            try:
-                print subprocess.check_output([KEY_SCRIPT, 'approve', name])
-                _ = subprocess.check_output(['/usr/bin/git', 'pull'], cwd=GIT_DIR)
-                _ = subprocess.check_output(['/usr/bin/git', 'add', 'peers/'+name], cwd=GIT_DIR)
-                _ = subprocess.check_output(['/usr/bin/git', 'commit', '-m', 'automated commit'], cwd=GIT_DIR)
-                _ = subprocess.check_output(['/usr/bin/git', 'push'], cwd=GIT_DIR)
-            except subprocess.CalledProcessError as e:
-                print e.output
-        else:
-            print "invalid request"
-    else:
-        print "invalid request"
-except Exception as e:
-    print "Die Anfrage ist ungültig"
-
-
diff --git a/cgi/deny_key b/cgi/deny_key
deleted file mode 100755
index 2b8faab..0000000
--- a/cgi/deny_key
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/usr/bin/env python2
-# coding=utf-8
-import cgi
-import cgitb
-import re
-import subprocess
-cgitb.enable()
-
-NAME_PATTERN = '^[a-zA-Z0-9-_\. äÄöÖüÜß]+$'
-CODE_PATTERN = '^[a-zA-Z0-9]{64}$'
-
-KEY_DIR='/home/kasalehlia/keys/'
-KEY_SCRIPT = '/home/kasalehlia/bin/ffbs_keys'
-
-print "Content-Type: text/html"
-print ""
-
-form = cgi.FieldStorage()
-
-try:
-    name = form['name'].value
-    code = form['code'].value
-    if re.match(NAME_PATTERN, name) and re.match(CODE_PATTERN, code) and name not in ['.','..']:
-        with open(KEY_DIR+'codes/'+code, 'r') as f:
-            validate = f.read()
-        if validate == name:
-            try:
-                print subprocess.check_output([KEY_SCRIPT, 'deny', name])
-            except subprocess.CalledProcessError as e:
-                print e.output
-        else:
-            print "invalid request"
-    else:
-        print "invalid request"
-except Exception as e:
-    print template % "Die Anfrage ist ungültig"
-
-
diff --git a/cgi/gwstatus_push b/cgi/gwstatus_push
deleted file mode 100755
index d839de3..0000000
--- a/cgi/gwstatus_push
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/usr/bin/env python2
-# coding=utf-8
-
-import cgi
-import cgitb
-import datetime
-import json
-
-SECRET = "ahqu2Choshi7sahDme8aePh4iegh8Wee"
-
-print "Content-Type: text/html"
-print ""
-
-params = cgi.FieldStorage()
-
-if 'secret' in params and params['secret'].value == SECRET:
-    info = dict()
-    info['updated'] = datetime.datetime.now().isoformat()
-    for i in xrange(100): # be prepared for many gateways
-        key = "gw"+str(i).zfill(2)
-        if key in params:
-            try:
-                info[key] = int(params[key].value)
-            except ValueError: # value is not a number
-                pass
-    print "accepted status for "+str(len(info))+" gateways"
-    with open('/home/kasalehlia/ffbs-website/gatewaystatus.json','w') as f:
-        json.dump(info, f)
-else:
-    print "nothing to see here"
-
-
-
diff --git a/cgi/newkey b/cgi/newkey
deleted file mode 100755
index 12c1322..0000000
--- a/cgi/newkey
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/usr/bin/env python2
-# coding=utf-8
-
-import cgi
-import cgitb
-import os
-import random
-import re
-import smtplib
-import string
-import time
-from email.mime.text import MIMEText
-from subprocess import Popen, PIPE, check_output, CalledProcessError
-cgitb.enable()
-
-KEY_DIR='/home/kasalehlia/keys/'
-CONTACT_FILE='/home/kasalehlia/contacts.txt'
-
-KEY_PATTERN = r'# ([a-zA-Z0-9-_\. äÄöÖüÜß]+) ?#? ?([\S ]+)?\r?\n([0-9a-f]{64})$';
-#KEY_PATTERN = r'# ([\w.- ]+) ?#? ?([\S ]+)?\r?\n([0-9a-f]{64})$';
-EMAIL_FROM = 'keys@freifunk-bs.de'
-EMAIL_TO = 'ffbs-admin@stratum0.org'
-#EMAIL_TO = 'kasa@shakik.de'
-EMAIL_TEXT = """Key approval request: {name} with key {key}.\n
-To approve: http://www.freifunk-bs.de/approve_key?name={name}&code={code}\n
-To deny: http://www.freifunk-bs.de/deny_key?name={name}&code={code}\n
-\n`{quote}`"""
-QUOTES = list(open('/home/kasalehlia/portal.quotes'))
-
-print "Content-Type: application/json; charset=utf-8"
-print ""
-
-form = cgi.FieldStorage()
-
-try:
-    inp = form['key'].value.strip()
-    contact = form.getfirst('contact','').strip()
-    match = re.match(KEY_PATTERN, inp)
-    if match:
-        name,_contact,key = match.groups()
-        name = name.strip()
-        if not contact:
-            contact = _contact
-        code = ''.join(random.choice(string.letters + string.digits) for _ in xrange(64))
-        if os.path.isfile(KEY_DIR+name):
-            print '{"success":false, "message":"Dieser Name oder dieser Schlüssel ist bereits eingetragen"}'
-        else:
-            try:
-                res = check_output(['/bin/grep','-r','--exclude-dir=codes',key,KEY_DIR])
-            except CalledProcessError as e:
-                res = e.output
-            if len(res):
-                print '{"success":false, "message":"Dieser Name oder dieser Schlüssel ist bereits eingetragen"}'
-            else:
-                with open(KEY_DIR+name,'w') as f:
-                    f.write('key "%s";\n' % key)
-                with open(KEY_DIR+'/codes/'+code,'w') as f:
-                    f.write(name)
-                with open(CONTACT_FILE, 'a') as f:
-                    f.write('{},{},{},{}\n'.format(time.time(),key,name,contact))
-                #s = smtplib.SMTP('localhost')
-                if 'NOMAIL' not in name:
-                    msg = MIMEText(EMAIL_TEXT.format(name=name.replace(' ', '%20'), key=key, code=code, quote=random.choice(QUOTES)[:-1]),'plain','utf-8')
-                    msg['From'] = EMAIL_FROM
-                    msg['To'] = EMAIL_TO
-                    msg['Subject'] = 'Key approval request for %s' % name
-                    #s.sendmail(EMAIL_FROM, [EMAIL_TO], msg.as_string())
-                    #s.quit()
-                    p = Popen(["/usr/sbin/sendmail", "-t", "-oi"], stdin=PIPE)
-                    p.communicate(msg.as_string())
-                    print '{"success":true, "message":"Dein Schlüssel wurde eingetragen, muss aber noch von einem Administrator bestätigt werden"}'
-                else:
-                    print '{"success":true, "message":"debug input accepted"}'
-    else:
-        print '{"success":false, "message":"Die Eingabe ist fehlerhaft"}'
-except Exception as e:
-    print '{"success":false, "message":"Die Eingabe ist fehlerhaft", "err":"'+repr(e)+'"}'
-    #raise e
-
-
-- 
GitLab