Example #1
0
        public void KickOff(ENetError reason)
        {
            pnAuth2Cli_KickedOff kick = new pnAuth2Cli_KickedOff();
            kick.fReason = reason;

            lock (fStream) {
                kick.Send(fStream);
            }

            Close();
        }
Example #2
0
 public override void Read(hsStream s)
 {
     fTransID = s.ReadUInt();
     fResult = (ENetError)s.ReadInt();
     fAcctGuid = pnHelpers.ReadUuid(s);
     fPermissions = s.ReadInt();
     fAvatars = new pnVaultAvatarInfo[s.ReadInt()];
     for (int i = 0; i < fAvatars.Length; i++) {
         fAvatars[i] = new pnVaultAvatarInfo();
         fAvatars[i].Read(s);
     }
 }
Example #3
0
 protected virtual void OnAuthGotPublicAges(uint transID, ENetError result, NetAgeInfo[] ages)
 {
     //Fire callback
     // - Method: ISomething(NetAgeInfo[] ages, ...)
     IFireAuthCallback(transID, new object[] { ages });
 }
Example #4
0
 public override void Read(hsStream s)
 {
     fTransID = s.ReadUInt();
     fResult = (ENetError)s.ReadInt();
     fPlayerID = s.ReadUInt();
     fPlayerName = pnHelpers.ReadString(s, 40);
     fShape = pnHelpers.ReadString(s, 64);
 }
Example #5
0
 public override void Read(hsStream s)
 {
     fTransID = s.ReadUInt();
     fResult = (ENetError)s.ReadInt();
     fNodeIDs = new uint[s.ReadInt()];
     for (int i = 0; i < fNodeIDs.Length; i++)
         fNodeIDs[i] = s.ReadUInt();
 }
Example #6
0
        private void IEndLogin(ENetError result, uint flags, uint[] droid, Guid uuid)
        {
            fParent.LogInfo(String.Format("Login Complete [RESULT: {0}]", result.ToString().Substring(7)));
            fAcctUuid = uuid;

            switch (result) {
                case ENetError.kNetErrAccountBanned:
                    MessageBox.Show(this, "Your account has been banned", "Banned", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    break;
                case ENetError.kNetErrAccountNotActivated:
                    MessageBox.Show(this, "Your account is not activated", "Not Activated", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    break;
                case ENetError.kNetErrAccountNotFound:
                    MessageBox.Show(this, "Your account was not found on the server.", "Account Not Found", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    break;
                case ENetError.kNetErrAuthenticationFailed:
                    MessageBox.Show(this, "Your password is invalid. Please ensure CAPS LOCK is off.", "Invalid Password", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    break;
                case ENetError.kNetErrLoginDenied:
                    MessageBox.Show(this, "The server is denying login attempts. Please try again later.", "Login Denied", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;
                case ENetError.kNetErrTooManyFailedLogins:
                    MessageBox.Show(this, "You have failed to authenticate too many times. Please try again later.", "Login Denied", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    break;
                case ENetError.kNetSuccess:
                    DialogResult = DialogResult.OK;
                    Close();
                    break;
                default:
                    MessageBox.Show(this, "Unhandled Error Code: " + result.ToString().Substring(4), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    break;
            }

            //Reenable button
            fLogin.Enabled = true;
        }
Example #7
0
 private void IOnNodeRefsFetched(ENetError result, pnVaultNodeRef[] refs, object param)
 {
     pnAuth2Cli_VaultNodeRefsFetched reply = new pnAuth2Cli_VaultNodeRefsFetched();
     reply.fNodeRefs = refs;
     reply.fResult = result;
     reply.fTransID = (uint)param;
     lock (fStream) reply.Send(fStream);
 }
Example #8
0
        private void IOnNodeFetched(ENetError result, pnVaultNode node, object param)
        {
            pnAuth2Cli_VaultNodeFetched reply = new pnAuth2Cli_VaultNodeFetched();
            reply.fTransID = (uint)param;

            if (result == ENetError.kNetSuccess &&
                node != null && fPermissions < pnAcctPerms.CCR) {
                switch (node.NodeType) {
                    case ENodeType.kNodeAdmin:
                    case ENodeType.kNodeCCR:
                    case ENodeType.kNodeGameServer:
                    case ENodeType.kNodeInvalid:
                    case ENodeType.kNodeUNUSED:
                    case ENodeType.kNodeVaultServer:
                    case ENodeType.kNodeVNodeMgrHigh:
                    case ENodeType.kNodeVNodeMgrLow:
                        reply.fResult = ENetError.kNetErrVaultNodeAccessViolation;
                        break;
                    case ENodeType.kNodeAgeInfoList:
                        pnVaultAgeInfoListNode ages = new pnVaultAgeInfoListNode(node);
                        if (ages.FolderType == EStandardNode.kPublicAgesFolder)
                            reply.fResult = ENetError.kNetErrVaultNodeAccessViolation;
                        break;
                    case ENodeType.kNodeFolder:
                        // Yay, moar switching
                        pnVaultFolderNode folder = new pnVaultFolderNode(node);
                        switch (folder.FolderType) {
                            case EStandardNode.kAllAgeGlobalSDLNodesFolder:
                            case EStandardNode.kGameScoresFolder: // Currently unused
                            case EStandardNode.kVaultMgrGlobalDataFolder:
                                reply.fResult = ENetError.kNetErrVaultNodeAccessViolation;
                                break;
                        }
                        break;
                    case ENodeType.kNodePlayer:
                        if (fPlayerID != node.CreatorID)
                            reply.fResult = ENetError.kNetErrVaultNodeAccessViolation;
                        break;
                    case ENodeType.kNodePlayerInfoList:
                        pnVaultPlayerInfoListNode players = new pnVaultPlayerInfoListNode(node);
                        switch (players.FolderType) {
                            case EStandardNode.kAllPlayersFolder:
                            case EStandardNode.kCCRPlayersFolder: // Currently unused
                                reply.fResult = ENetError.kNetErrVaultNodeAccessViolation;
                                break;
                        }
                        break;
                    case ENodeType.kNodeSDL:
                        pnVaultSDLNode sdl = new pnVaultSDLNode(node);
                        if (sdl.StateIdent != EStandardNode.kAgeInstanceSDLNode)
                            reply.fResult = ENetError.kNetErrVaultNodeAccessViolation;
                        break;
                    default:
                        reply.fResult = result;
                        break;
                }
            } else
                reply.fResult = result;

            if (result == ENetError.kNetSuccess)
                reply.fNode = node;
            reply.Send(fStream);
        }
Example #9
0
 protected void OnAuthVaultNodeSaveReply(uint transID, ENetError result)
 {
     //Fire callback
     // - Method: ISomething(ENetError result, ...)
     IFireAuthCallback(transID, new object[] { result });
 }
Example #10
0
 protected virtual void OnAuthVaultNodeFound(uint transID, ENetError result, uint[] nodeIDs)
 {
     //Simply fire the callback...
     //We don't know what the caller wants these nodes for anyway...
     // - Method: ISomething(uint[] nodeIDs, ...)
     IFireAuthCallback(transID, new object[] { nodeIDs });
 }
Example #11
0
 protected virtual void OnAuthVaultNodeFetched(uint transID, ENetError result, byte[] data)
 {
     //Fire callback
     // - Method: ISomething(VaultNode fetched);
     IFireAuthCallback(transID, new object[] { VaultNode.Parse(data) });
 }
Example #12
0
 protected virtual void OnAuthVaultNodeCreated(uint transID, ENetError result, uint nodeID)
 {
     //Fire callback
     // - Method: ISomething(ENetError result, uint nodeID, ...);
     IFireAuthCallback(transID, new object[] { result, nodeID });
 }
Example #13
0
 protected virtual void OnAuthPlayerSet(uint transID, ENetError result)
 {
     //Fire callback
     // - Method: ISomething(ENetError result, ...)
     IFireAuthCallback(transID, new object[] { result });
 }
Example #14
0
 protected virtual void OnAuthLoggedIn(uint transID, ENetError result, uint flags, uint[] droidKey, uint billing, Guid acctUuid)
 {
     //Fire callback
     // - Method: ISomething(ENetError result, uint flags, uint[] droidKey, Guid acctUuid, ...)
     IFireAuthCallback(transID, new object[] { result, flags, droidKey, acctUuid });
 }
Example #15
0
 protected virtual void OnAuthKickedOff(ENetError reason)
 {
 }
Example #16
0
 public override void Read(hsStream s)
 {
     fReason = (ENetError)s.ReadInt();
 }
Example #17
0
 public override void Read(hsStream s)
 {
     fTransID = s.ReadUInt();
     fResult = (ENetError)s.ReadInt();
     if (s.ReadInt() != 0) { // Vault Node buffer size
         fNode = new pnVaultNode();
         fNode.Read(s);
     }
 }
Example #18
0
 protected virtual void OnAuthVaultTreeFetched(uint transID, ENetError result, VaultNodeRef[] refs)
 {
     //Fire callback
     // - Method: ISomething(VaultNodeRef[] refs, ...)
     IFireAuthCallback(transID, new object[] { refs });
 }
Example #19
0
 private void IOnNodeFound(ENetError result, uint[] nodeIDs, object param)
 {
     pnAuth2Cli_VaultNodeFindReply reply = new pnAuth2Cli_VaultNodeFindReply();
     reply.fNodeIDs = nodeIDs;
     reply.fResult = result;
     reply.fTransID = (uint)param;
     lock (fStream) reply.Send(fStream);
 }
Example #20
0
 protected virtual void OnFileGotBuildID(uint transID, ENetError result, uint buildID)
 {
     //Fire callback
     // - Method ISomething(uint buildID, ...)
     IFireFileCallback(transID, new object[] { buildID });
 }
Example #21
0
        private void ITreeFetchRequest(ENetError result, pnVaultNode node, object param)
        {
            ENetError decision = ENetError.kNetErrVaultNodeAccessViolation;
            if (result != ENetError.kNetSuccess)
                // If something bad happens vault side, we cannot proceed :(
                decision = result;
            else if (node == null)
                // Successful node fetch but node is null? O.o
                result = ENetError.kNetErrInternalError;
            else if (node.NodeType == ENodeType.kNodeAge || node.NodeType == ENodeType.kNodeAgeInfo)
                // We will fetch the tree of ages when we link to them
                decision = ENetError.kNetSuccess;
            else if (node.NodeType == ENodeType.kNodePlayer)
                // We can only fetch our player
                if (fPlayerID == node.NodeID)
                    decision = ENetError.kNetSuccess;

            if (decision == ENetError.kNetSuccess)
                fVaultCli.FetchNodeRefs(node.NodeID, new pnCallback(new pnVaultNodeRefsFetched(IOnNodeRefsFetched), param));
            else {
                pnAuth2Cli_VaultNodeRefsFetched reply = new pnAuth2Cli_VaultNodeRefsFetched();
                reply.fResult = decision;
                reply.fTransID = (uint)param;
                lock (fStream) reply.Send(fStream);
            }
        }
Example #22
0
 protected virtual void OnGameAgeJoined(uint transID, ENetError result)
 {
     //Fire callback
     // - Method: ISomething(ENetError result, ..)
     IFireGameCallback(transID, new object[] { result });
 }
Example #23
0
        public override void Read(hsStream s)
        {
            fTransID = s.ReadUInt();
            fResult = (ENetError)s.ReadInt();

            // I'm not eap, so just embed the vault node into the stream
            // Forget crazy buffer hacks.
            if (s.ReadBool()) {
                fNode = new pnVaultNode();
                fNode.Read(s);
            }
        }
Example #24
0
 public static string GetErrorString(ENetError result)
 {
     switch (result) {
         case ENetError.kNetErrAccountAlreadyExists:
             return "Account Already Exists";
         case ENetError.kNetErrAccountBanned:
             return "Account Banned";
         case ENetError.kNetErrAccountNotActivated:
             return "Account Not Activated";
         case ENetError.kNetErrAccountNotFound:
             return "Account Not Found";
         case ENetError.kNetErrActivationCodeNotFound:
             return "Activation Code Not Found";
         case ENetError.kNetErrAgeNotFound:
             return "Age not Found";
         case ENetError.kNetErrAuthenticationFailed:
             return "Authentication Failed";
         case ENetError.kNetErrAuthTokenTooOld:
             return "Authentication Token Too Old";
         case ENetError.kNetErrBadServerData:
             return "Bad Server Data";
         case ENetError.kNetErrCircularReference:
             return "Circular Reference";
         case ENetError.kNetErrConnectFailed:
             return "Connection Failed";
         case ENetError.kNetErrDisconnected:
             return "Disconnected";
         case ENetError.kNetErrFileNotFound:
             return "File Not Found";
         case ENetError.kNetErrGameTapConnectionFailed:
             return "Could Not Connect To GameTap";
         case ENetError.kNetErrGTMissingParameter:
             return "Missing GameTap Paramater";
         case ENetError.kNetErrGTServerError:
             return "GameTap Error";
         case ENetError.kNetErrGTTooManyAuthOptions:
             return "Too Many GameTap Authentication Options";
         case ENetError.kNetErrInternalError:
             return "Internal Error";
         case ENetError.kNetErrInvalidParameter:
             return "Invalid Parameter";
         case ENetError.kNetErrInviteNoMatchingPlayer:
             return "No Matching Player for Invitation";
         case ENetError.kNetErrInviteTooManyHoods:
             return "Too Many Neighborhoods for Invitation";
         case ENetError.kNetErrKeyAlreadyUsed:
             return "Key Already Used";
         case ENetError.kNetErrKeyNotFound:
             return "Key Not Found";
         case ENetError.kNetErrKickedByCCR:
             return "Kicked Off";
         case ENetError.kNetErrLoggedInElsewhere:
             return "Logged in Elsewhere";
         case ENetError.kNetErrLoginDenied:
             return "Login Denied";
         case ENetError.kNetErrMaxPlayersOnAcct:
             return "Maxmium Number of Players on Account";
         case ENetError.kNetErrMustUseGameTapClient:
             return "Must use GameTap Client";
         case ENetError.kNetErrNameLookupFailed:
             return "Name Lookup Failed";
         case ENetError.kNetErrNeedToPay:
             return "You Need to Pay";
         case ENetError.kNetErrNotSupported:
             return "Not Supported";
         case ENetError.kNetErrOldBuildId:
             return "Old Build";
         case ENetError.kNetErrPlayerAlreadyExists:
             return "Player Already Exists";
         case ENetError.kNetErrPlayerNameInvalid:
             return "Player Name Incorrect";
         case ENetError.kNetErrPlayerNotFound:
             return "Player Not Found";
         case ENetError.kNetErrRemoteShutdown:
             return "Remote Shutdown";
         case ENetError.kNetErrScoreAlreadyExists:
             return "Score Already Exists";
         case ENetError.kNetErrScoreNoDataFound:
             return "No Score Data Found";
         case ENetError.kNetErrScoreNotEnoughPoints:
             return "Not Enough Points";
         case ENetError.kNetErrScoreWrongType:
             return "Wrong Score Type";
         case ENetError.kNetErrServerBusy:
             return "Server Busy";
         case ENetError.kNetErrServiceForbidden:
             return "Service Forbidden";
         case ENetError.kNetErrStateObjectNotFound:
             return "State Object Not Found";
         case ENetError.kNetErrTimeout:
             return "Timeout";
         case ENetError.kNetErrTimeoutOdbc:
             return "ODBC Timeout";
         case ENetError.kNetErrTooManyFailedLogins:
             return "Too Many Failed Logins";
         case ENetError.kNetErrVaultNodeAccessViolation:
             return "Vault Node Access Violation";
         case ENetError.kNetErrVaultNodeNotFound:
             return "Vault Node Not Found";
         case ENetError.kNetPending:
             return "Pending...";
         case ENetError.kNetSuccess:
             return "Success!";
         default:
             throw new ArgumentException("Unknown Result Code: " + result.ToString());
     }
 }
Example #25
0
 public override void Read(hsStream s)
 {
     fTransID = s.ReadUInt();
     fResult = (ENetError)s.ReadInt();
     fNodeRefs = new pnVaultNodeRef[s.ReadInt()];
     for (int i = 0; i < fNodeRefs.Length; i++) {
         fNodeRefs[i] = new pnVaultNodeRef();
         fNodeRefs[i].Read(s);
     }
 }
Example #26
0
 public void Read(UruStream s)
 {
     fTransID = s.ReadUInt();
     fResult = (ENetError)s.ReadInt();
     fNodeData = s.ReadBytes(s.ReadInt());
 }
Example #27
0
 public override void Read(hsStream s)
 {
     fTransID = s.ReadUInt();
     fResult = (ENetError)s.ReadInt();
 }
Example #28
0
 public void Read(UruStream s)
 {
     fTransID = s.ReadUInt();
     fResult = (ENetError)s.ReadInt();
     fRefs = new VaultNodeRef[s.ReadInt()];
     for (int i = 0; i < fRefs.Length; i++) {
         fRefs[i] = new VaultNodeRef();
         fRefs[i].Read(s);
     }
 }
Example #29
0
 public void Read(UruStream s)
 {
     fTransID = s.ReadUInt();
     fResult = (ENetError)s.ReadInt();
 }
Example #30
0
 public override void Read(hsStream s)
 {
     fTransID = s.ReadUInt();
     fResult = (ENetError)s.ReadInt();
     fAcctGuid = pnHelpers.ReadUuid(s);
     fFlags = s.ReadUInt();
     fBillingType = s.ReadUInt();
     fDroidKey = new uint[4];
     for (int i = 0; i < fDroidKey.Length; i++)
         fDroidKey[i] = s.ReadUInt();
 }