and_cesbo icon

Auth for Astra Relay and Stalker

and_cesbo | PRO | 11/26/14 01:23:20 PM UTC | 0 ⭐ | 1162 👁️ | Never ⏰ | []
Python |

990 B

|

None

|

0 👍

/

0 👎

#!/usr/bin/env python
# -*- coding: utf-8 -*-
 
host = '0.0.0.0'
port = 9001
 
db_host = 'localhost'
db_name = 'stalker'
db_user = 'stalker'
db_pass = '*******'
 
# ---
 
import MySQLdb
from flask import Flask, request, abort
from datetime import datetime, timedelta
 
app = Flask(__name__)
db = MySQLdb.connect (host = db_host, user = db_user, passwd = db_pass, db = db_name)
 
@app.route('/')
def page(path = ''):
    serial = request.args.get('serial', None)
    if not serial:
        abort(403)
    ip = request.args.get('ip', None)
    if not ip:
        abort(403)
    cursor = db.cursor()
    timeout = datetime.now() - timedelta(minutes=10)
    query = 'SELECT id FROM users WHERE serial_number=%s AND ip=%s AND keep_alive>%s'
    cursor.execute(query, (serial, ip, timeout.strftime("%Y-%m-%d %H:%M:%S")))
    row = cursor.fetchone()
    cursor.close()
    if row == None:
        abort(403)
    return 'OK', 200
 
if __name__ == '__main__':
    app.run(host=host, port=port)

Comments