Ipop.SocialVPN.SocialNode.AddFriend C# (CSharp) Method

AddFriend() public method

public AddFriend ( string address, string cert, string uid, string ip ) : SocialUser
address string
cert string
uid string
ip string
return SocialUser
    public SocialUser AddFriend(string address, string cert, string uid, 
      string ip) {

      if(_friends.ContainsKey(address)) {
        throw new Exception("Address already exists");
      }

      Address addr = AddressParser.Parse(address);
      string new_ip = _marad.AddIPMapping(ip, addr);
      SocialUser user = new SocialUser(cert, new_ip, null);

      Bso.CertificateHandler.AddCACertificate(user.X509);
      _managed_co.Set(addr);
      _friends = _friends.InsertIntoNew(address, user);

      return user;
    }

Usage Example

        protected void AddFriend(string address, string cert)
        {
            SocialUser user = _node.AddFriend(address, cert, null, null);

            if (_pending.Contains(user.Address))
            {
                _pending = _pending.RemoveFromNew(user.Address);
            }

            if (!_auto_allow && !IsVerified(user))
            {
                _node.Block(user.Address);
            }
        }