def cmd_connect(self, arg): global CURRENT_PROTOCOL_VERSION np = arg.split(',') if len(np) != 3: print("mal-formatted connect command from " + self.addr + ": " + arg) return self.name = encoding.safefilename(encoding.dequote(np[0])) pw = encoding.dequote(np[1]) proto = int(np[2]) if (proto != CURRENT_PROTOCOL_VERSION): print("bad version in connect from " + self.addr + ": " + np[2]) return ok = 0 try: file = None try: file = open("user/" + self.name, "rb") except: pass if not file: # look for a back-up file, if we died while trying a rename() operation file = open("user/" + self.name + ".tmp", "rb") self.userdata = pickle.load(file) file.close() ok = (self.userdata["password"] == pw) except Exception, x: print("User file open exception " + str(x) + " on file " + self.name);
def main(argv=None): if argv == None: argv = sys.argv if len(argv) != 3: raise BadArguments("mkuser needs two args: username and password") os.chdir("data") user = {"password": argv[2]} p = player.Player() p.name = encoding.safefilename(argv[1]) user["entityrep"] = p.getrep() file = open("user/" + p.name, "wb") pickle.dump(user, file) print("User " + p.name + " created") return 0
def main(argv = None): if argv == None: argv = sys.argv if len(argv) != 3: raise BadArguments("mkuser needs two args: username and password") os.chdir("data") user = { "password" : argv[2] } p = player.Player() p.name = encoding.safefilename(argv[1]) user["entityrep"] = p.getrep() file = open("user/" + p.name, "wb") pickle.dump(user, file) print("User " + p.name + " created") return 0