This repository has been archived on 2025-06-04. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
fl0w-old/Server/Server.py
2015-10-25 17:32:23 +01:00

47 lines
No EOL
1.3 KiB
Python

import Logging
import DataTypes
from .AsyncServer import Server
class vHandler(Server.Handler):
def setup(self):
Logging.info("Handler for '%s' initalised." % self.info[0])
self.authed = False
self.users = self.kwargs.pop("users")
def handle(self, data, type):
if not self.authed:
if type == DataTypes.json:
self.auth(data)
def finish(self):
Logging.info("%s disconnected." % self.info[0])
def auth(self, collection):
if "auth" in collection:
if "user" and "pw" in collection["auth"]:
temp_user = User(collection["auth"]["user"], collection["auth"]["pw"])
if temp_user in self.users:
self.sock.send({"auth" : "success"})
self.authed = True
return
self.sock.close()
class User:
def __init__(self, username, password):
self.username = username
self.password = password
def __eq__(self, other):
if self.username == other.username and self.password == other.password:
return True
return False
def __repr__(self):
return self.username
server = Server("127.0.0.1", 1337, vHandler, {"users" : [User("test", "123")]})