Page 1 of 2

Unknown Char-Server Failure

Posted: 03 Nov 2013, 14:09
by Wombat
I receive an "unknown char-setver failure" after updates. Seems related to playing on my laptop, then my mobile device or just a coincidence.

Re: Unknown Char-Server Failure

Posted: 03 Nov 2013, 14:11
by 4144
Wombat wrote:I receive an "unknown char-setver failure" after updates. Seems related to playing on my laptop, then my mobile device or just a coincidence.
You always getting this error?
It may related to server or your connection lags.

Re: Unknown Char-Server Failure

Posted: 03 Nov 2013, 17:27
by o11c
That error message is sent when the client does not handle the value from this packet: https://wiki.themanaworld.org/index.php/Net:0x006C

The only unhandled value is 0x42, which is sent when 0x2713 fails.

0x2713 fails when the login server does not find your auth when the char-server requests it.

the check is:

Code: Select all

src/login/login.cpp-1028       -                    int acc = RFIFOL(fd, 2);
src/login/login.cpp-1029       -                    int i;
src/login/login.cpp-1030       -                    for (i = 0; i < AUTH_FIFO_SIZE; i++)
src/login/login.cpp-1031       -                    {
src/login/login.cpp-1032       -                        if (auth_fifo[i].account_id == acc &&
src/login/login.cpp-1033       -                            auth_fifo[i].login_id1 == RFIFOL(fd, 6) &&
src/login/login.cpp-1034       -                            auth_fifo[i].login_id2 == RFIFOL(fd, 10) &&    // relate to the versions higher than 18
src/login/login.cpp-1035       -                            auth_fifo[i].sex == RFIFOB(fd, 14) &&
src/login/login.cpp-1036       -                            (!check_ip_flag
src/login/login.cpp-1037       -                             || auth_fifo[i].ip == RFIFOL(fd, 15))
src/login/login.cpp-1038       -                            && !auth_fifo[i].delflag)
The most likely cause of failure is that the IP check fails. This can happen, say, if you are running a server on localhost but configure access to it using an external IP. A proper lan_support.conf should be able to fix this though.

You can check "use same IP for game sub-servers" to see if it is IP-related. Note that disabling the server's check_ip flag is NOT supported (it works, but is dangerous).


It is also possible, for a highly-contested server, to be randomly dropped if more than 256 players try to connect at once.

Re: Unknown Char-Server Failure

Posted: 05 Nov 2013, 13:29
by Wombat
Well whatever the problem is, I can't play. This would seem to be a priority as I'm sure other people experience the same without reporting it.

Re: Unknown Char-Server Failure

Posted: 05 Nov 2013, 14:51
by Frost
I think it's necessary to understand why people cannot connect to the game.
If someone can duplicate the problem, contact me and I'll watch network traffic at the server. We can probably find out where the problem is happening, which would be a useful step towards identifying the cause.

Re: Unknown Char-Server Failure

Posted: 05 Nov 2013, 17:12
by o11c
On the main server? That is very unusual ...

Does your IP remain constant or does it change? http://www.whatsmyip.org/

Re: Unknown Char-Server Failure

Posted: 06 Nov 2013, 08:14
by Wombat
IIt would appear mobile phones aren't able to play tmw unless they offer a fixed ip. address. This is too bad.

Re: Unknown Char-Server Failure

Posted: 06 Nov 2013, 16:20
by o11c
It is a very strange thing for a mobile phone to not have an IP address that stays constant for at least a short duration.

In any case, we can't compromise the security of the server just to work around crappy ISPs.

Re: Unknown Char-Server Failure

Posted: 06 Nov 2013, 17:00
by Frost
Can someone explain what the problem is? Plenty of people use dynamic IP addresses, and are able to play the game.

Also, what is the security concern? As far as I know, the Linux network stack properly handles most TCP/IP level situations, including reassembling fragments, maintaining state, processing (or not) ToS flags, managing window sizes, etc. Is there a problem at the application level that would e.g. leak information or allow a DoS because of certain practices by ISPs?

Re: Unknown Char-Server Failure

Posted: 06 Nov 2013, 17:32
by o11c
Frost wrote:Can someone explain what the problem is? Plenty of people use dynamic IP addresses, and are able to play the game.
Most people with dynamic IPs have them change maybe once a day, not between the time of connection to the login-server and the connection to the char-server.
Frost wrote:Also, what is the security concern? As far as I know, the Linux network stack properly handles most TCP/IP level situations, including reassembling fragments, maintaining state, processing (or not) ToS flags, managing window sizes, etc. Is there a problem at the application level that would e.g. leak information or allow a DoS because of certain practices by ISPs?
Not OS-level security, account level security.

Because TMWA does not encrypt the connection, it is possible for anyone to snoop on the connection and retrieve the auth token.

If we did not check that the source IP matched, that means you could log in as anybody using the token.

Re: Unknown Char-Server Failure

Posted: 06 Nov 2013, 20:41
by Wombat
Could havibg non-alphanumeric password effect things? I was able to play on my mobile phone until recently.

Re: Unknown Char-Server Failure

Posted: 06 Nov 2013, 20:53
by o11c
No, I looked at the logs and the failure was definitely caused by your IP changing.

Re: Unknown Char-Server Failure

Posted: 06 Nov 2013, 22:06
by Wombat
Why now rather than before?

Re: Unknown Char-Server Failure

Posted: 06 Nov 2013, 22:18
by o11c
You just moved, right?

Even if you're nominally connected to the same ISP, it's going through different systems.

Re: Unknown Char-Server Failure

Posted: 06 Nov 2013, 23:36
by Wombat
Well, had my hopes. Guess I'll be around at some later time.