PlaneShift

  • Status Closed
  • Percent Complete
    100%
  • Task Type Bug Report
  • Category Engine → Guilds/Groups
  • Assigned To
    Thom
    Lanarel
    Mike Gist
    Keith
    Steven Schwartfeger
  • Operating System
  • Severity High
  • Priority
  • Reported Version
  • Due in Version Undecided
  • Due Date Undecided
  • Votes 1
  • Private
Attached to Project: PlaneShift
Opened by Ausuna Eleves - 07.10.2008
Last edited by Tuathanach - 27.02.2021

FS#2354 - Server send out my email address instead of character name to buddies

Client crashed during loading and instead of the usual character name, my email address is send out!

And it read @ just logged in in system log.

This is so critical.

Even there is no fix soon, please check the nickname you will send out, and if it is the same as player’s registered email address, do not send it! Please do this asap.

My people like me are not that smart, they only have one of two email boxes and use them for all purposes every day!

Closed by  Tuathanach
27.02.2021 21:48
Reason for closing:  Fixed
Caarrie commented on 07.10.2008 14:16

what is the exact email address that the char is named now? what name was it before? Kerol can you and the gms look into this?

Ausuna Eleves commented on 07.10.2008 14:27

The name of the char did not change, it just happen once so far. The server send out the email address used to register the char, instead of the char’s name.

Edit: But anyway, most of the times I crash, I have no idea what name is send out.

peeg commented on 09.10.2008 10:04

– link removed displaying email address –

weltall showed me that shot yesterday. Guess that’s enough to make this report “new”.

A. Kiefner commented on 10.10.2008 04:55

Aiken and I couldn’t reproduce the bug by randomly killing the client during startup. It has to be a very specific point during loading. I’m removing the link to the screenshot displaying the mail address and make the bug public. We need more information on when the crash happens exactly. Best would be system output when starting the client through commandline.

We tested on trunk and on stable.

weltall commented on 10.10.2008 05:27

When you connect till you select the char the client name variable (which is used to show things in who) is the email adress (actually it’s the account name but as laanx uses emails as username that’s what’s being used) but it isn’t shown because there isn’t an actor “connected” to. So the teorical reason for something like this is that an actor gets associated to the client before changing it’s name (so the fix would be swapping the actor setting to name setting) but i couldn’t find the part of code where this happens…

A. Kiefner commented on 10.10.2008 06:12

The only hypothesis I can think of at this time of day is that creationmanager screws up at some point and returns the wrong thing to the server since there are some not-so-clear (at least to me) assignments going on involving client→GetAccountID()

Project Manager
Lanarel commented on 26.10.2008 19:51

Can someone explain what is send when where? I have no clue what this bug is :). When my client crashes, nothing is send, since it crashed.

weltall commented on 26.10.2008 19:56

a /who would give the email for the char afflicted. the problem is that this bug is extremely difficult to reproduce and quite casual so we can only follow theory to fix this.

Caarrie commented on 27.10.2008 14:37

removing all assignees as this is public again.

Arerano Areramau commented on 16.11.2008 15:28

if you try to log in with a second client while you’re at the char selection screen with the first client, you will get “you are already logged in as <youremail@address>”, otherwise you will recieve the character name. Whilst this isn’t a bug, it possibly has to do with the “sending out email address to those who have you in the buddy list”. The server possibly knows your “character ID” already but didn’t set the right name yet, but the ID is used to check in whose buddy lists you are.

In my oppinion the sending of “XYZ just joined PlaneShift” happens too early, the client isn’t really ready yet to recieve tells for example (there’s another report concerning this). There is some mechanism which makes the client request the list of nearby entities not before they moved first. (effect: you don’t see others who are near till you moved.) Maybe that would be a good time to send out that someone joined – however, they could join unnoticed and read the guild chat without being noticed.
..so.. just some suggestion, not a real solution but maybe a better idea will come from that.

Project Manager
Lanarel commented on 27.04.2009 18:25

In line 319 of authentserver.cpp it indeed does client→SetName(msg.sUser);

A simple way to avoid this bug (no matter what strange thing causes it to appear in who) is to not set name with this. If there is no use for it, maybe a string with the accountid (which is known at this point) would be sufficient.

Project Manager
Lanarel commented on 27.04.2009 22:12

Weltall is correct. If client→actor is not set, it should not print the name in /who at all. THe buddy list is only notified after the actor is created, which does not happen if there is no character data, which only exists two commands before the name is set. In other words, this should not happen.
However, many of these are done in messages that are send. My guess is, that in very rare cases due to UDP jitter these get out of sync, possibly having an actor without the name being set.
There is one more secure way to test whether the name is set, which is checking if client→getPID()!=0, as this is set directly before all cases where the name is changed.
For /who, this means changing line 894 in usermanager.cpp to

  if (curr->IsSuperClient() || !curr->GetActor() || curr->GetPID()==0)
Anonymous Submitter commented on 15.07.2009 16:17

Sending out for community love.

Kaerli Stronwylle commented on 16.07.2009 02:41

Lanarel’s fix sounds correct; however, we need a consistent way to reproduce this information leak, if we don’t have one already.

Anonymous Submitter commented on 22.07.2009 16:32

Can’t we do this Dr. House style and apply the patch, close it, and then wait for the client to start sending out bank account numbers while frothing at the mouth?

Lanarel I am assigning to you.

Mario Rohkrämer commented on 09.08.2009 15:15

I just received an email address in the form “*.*@*.* just joined PlaneShift”, and “*.*@*.* has quit”. Details on request.

Brian commented on 09.08.2009 15:39

Two more players just reported seeing the same thing. Said they have seen this the past two weeks.

Rizin commented on 10.08.2009 07:06

Confirmed. I’ve seen this in game while playing, and had the person I was chatting with say “Did you see that?” Tweaking the assign information a bit to try and get this addressed.

Project Manager
Lanarel commented on 13.08.2009 19:16

Fixed by Vengeance a few days ago. Waiting to see if this can be moved to stable (and game servers), or wait for coming release.

Project Manager
Lanarel commented on 15.08.2009 13:16

Since we are all pretty sure this is fixed, and just want to make sure this is not forgotten, I will keep this open, but demote to high priority.

Project Manager
Lanarel commented on 15.08.2009 21:57

Vengeance patched the stable code so it has the line that fixes this. It is on Laanx now, so this bug can be closed!

Minks commented on 27.08.2010 19:49

(I took a screenshot if you want to see it, but I won’t post it in public ;-) )

RlyDontKnow commented on 27.08.2010 19:55

that’s a different bug Minks which already has it’s own report (though that one is private as you can imagine)

Minks commented on 28.05.2020 19:04

Lilura just spotted an email on the server’s char stat page http://62.173.168.9/index.php?page=char_stats

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing