Skip to content
Snippets Groups Projects
Commit 4e1b6384 authored by Ferenc Schulcz's avatar Ferenc Schulcz
Browse files

Dyndns registration: provide token seed

parent 5c1e5122
No related branches found
No related tags found
No related merge requests found
......@@ -4,6 +4,8 @@ import os
import requests
import datetime
import config
import random
import hashlib
from werkzeug.security import check_password_hash
......@@ -48,12 +50,15 @@ def dyndnsRegister(**kwargs):
if not x is None:
db.sendMessage(session['username'], 'This domain is already registered by someone.')
return rqtools.redirect(rqtools.url_for('service', servicename='dyndns'))
r = requests.get(url = config.get('DYNDNS_SERVER_URL') + '/register', params = {'domain': request.form['domainname']})
tokenseed = str(random.randint(1, 2**32)) + str(random.randint(1, 2**32))
domain = request.form['domainname']
r = requests.get(url = config.get('DYNDNS_SERVER_URL') + '/register', params = {'domain': domain, 'tokenseed': tokenseed})
reply = r.json()
if r.status_code > 299:
db.sendMessage(session['username'], reply['message'])
return rqtools.redirect(rqtools.url_for('service', servicename='dyndns'))
x = db.db['dyndns-records'].insert_one({'username': session['username'], 'domain': reply['domainName'], 'token': reply['token'], 'ip': "null", 'lastupdate': "never"})
token = hashlib.md5((domain + tokenseed).encode()).hexdigest()
x = db.db['dyndns-records'].insert_one({'username': session['username'], 'domain': reply['domainName'], 'token': token, 'ip': "null", 'lastupdate': "never"})
db.sendMessage(session['username'], reply['message'])
return rqtools.redirect(rqtools.url_for('service', servicename='dyndns'))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment