public void AddFriend(SFriend friend) { krnGateway.AddFriend(friend.ID, friend.Port, friend.ServerIP, friend.UserHash, 0, friend.OurName, friend.Name, friend.Software, friend.Version, friend.FriendSlot); InterfaceClient source = new InterfaceClient(); source.Name = friend.OurName; source.ID = friend.ID; source.Port = friend.Port; if (friend.UserHash != null) { source.UserHash = friend.UserHash; } OnAddingFriend(source); }
private void buttonAddFriendOk_Click(object sender, System.EventArgs e) { bool validate = false; uint ip; ip = 0; if ((textBoxIP.Text != "") && (textBoxName.Text != "") && (textBoxPort.Text != "")) { //validate ip or id //if (Regex.IsMatch(textBoxIP.Text, @"^(((?<=255\\d{1,3})\.){3}(?<=255\\d{1,3}))$")) if (Regex.IsMatch(textBoxIP.Text, @"^(((\d{1,3})\.){3}(\d{1,3}))$")) { try { IPAddress DirectionIP = IPAddress.Parse(textBoxIP.Text); ip = BitConverter.ToUInt32(DirectionIP.GetAddressBytes(), 0); } catch { ip = 0; } } if ((ip == 0) && (Regex.IsMatch(textBoxIP.Text, @"^\d{9,12}$"))) { ip = Convert.ToUInt32(textBoxIP.Text); } //validate port if ((ip != 0) && (Regex.IsMatch(textBoxPort.Text, @"^\d{1,5}$")) && Convert.ToInt32(textBoxPort.Text) <= 65535) { validate = true; } if ((!textBoxIP.Enabled) && (!textBoxPort.Enabled)) { validate = true; } } if (validate) { SFriend friend = new SFriend(); friend.Name = textBoxName.Text; friend.OurName = textBoxName.Text; if (textBoxUserHash.Text != "") { byte[] x = new byte[textBoxUserHash.Text.Length]; x = Convert.FromBase64String(textBoxUserHash.Text); friend.UserHash = x; } friend.ID = ip; friend.FriendSlot = false; friend.Port = Convert.ToUInt16(textBoxPort.Text); listViewFriends.Height += panelAddFriend.Height - buttonAddFriend.Height; panelAddFriend.Visible = false; krnGateway.AddFriend(friend); buttonAddFriend.Visible = true; } else { //send a message box } }
public SFriend[] GetFriends() { if (apw) { SFriend[] response= new SFriend[CKernel.FriendsList.List.Count]; for (int i=0; i!=CKernel.FriendsList.List.Count; i++) { //response[i] = new SFriend(); response[i] = (SFriend)CKernel.FriendsList.List[i]; } return response; } else return null; }