public static void Process_MsgRegisterPacket(Player client, RegisterPacket packet) { if (!Common.ValidChars.IsMatch(packet.CharacterName) || packet.CharacterName.Length < 3 || packet.CharacterName.Length >= 16 || packet.CharacterName.ToLower().Contains("admin")) { client.Send(new TalkPacket(ChatType.Register, "Invalid character name")); return; } if (Database.ServerDatabase.Context.Characters.GetByName(packet.CharacterName) != null) { client.Send(new TalkPacket(ChatType.Register, "Character name already in use")); return; } if (!Common.ValidCharacterMeshes.Contains(packet.Mesh)) { client.Send(new TalkPacket(ChatType.Register, "Invalid character mesh " + packet.Mesh)); return; } if (!Common.ValidBaseProfessions.Contains(packet.Profession)) { client.Send(new TalkPacket(ChatType.Register, "Invalid character profession " + packet.Profession)); return; } client.CreateDbCharacter(packet.CharacterName, packet.Mesh, packet.Profession); client.Send(new TalkPacket(ChatType.Register, Constants.REPLY_OK_STR)); }
public void Register(string username, string password) { SHA256Managed sha = new SHA256Managed(); StringBuilder hashedPassword = new System.Text.StringBuilder(); byte[] crypto = sha.ComputeHash(Encoding.UTF8.GetBytes(password), 0, Encoding.UTF8.GetByteCount(password)); foreach (byte theByte in crypto) { hashedPassword.Append(theByte.ToString("x2")); } RegisterPacket packet = new RegisterPacket(); packet.username = username; packet.password = hashedPassword.ToString(); SendPacket(packet); }
public ResponseCode Register(string name, string email, string pass) { RegisterPacket packet = new RegisterPacket() { Username = name, Email = email, Password = pass }; UdpClient receiver = new UdpClient((int)Port.Client_ResponseReceive); SendPacket(Crypto.SimEncrypt(packet.BuildPacket())); ResponseCode responseCode = GetResponseCode(ReceiveResponse(receiver).Split('%')[1]); receiver.Close(); return(responseCode); }
private void handleRegister(RegisterPacket p, Client client) { User user = User.createUser(p.username, p.password, 0); string token; RegisterResponsePacket packet = new RegisterResponsePacket(); try { token = UserManager.Instance.addNewUser(user, client); packet.token = token; Console.WriteLine("[Auth] Client registered : " + p.username); try { packet.rank = UserManager.Instance.getUserRank(packet.token); packet.message = ""; packet.username = UserManager.Instance.getUsernameFromToken(token); packet.success = true; } catch (Exception e) { packet.success = false; packet.message = e.Message; packet.rank = -1; } } catch (Exception e) { Console.WriteLine("[Auth] Failed to register client : " + p.username); Console.WriteLine("[ERROR] " + e.Message); packet.success = false; packet.message = e.Message; } client.SendPacket(packet); }