since a week I'm hosting a small Pyspades server on a linux machine (Vserver). Im amazed how smoothly it ran until now, but yesterday I had the second crash in two days. So I have two questions, but beforehand I'll show you the tracesback:
- Code: Select all
2012-06-27 11:38:28+0000 [-] Unhandled Error
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/twisted/internet/base.py", line 1169, in run
self.mainLoop()
File "/usr/lib/python2.7/dist-packages/twisted/internet/base.py", line 1178, in mainLoop
self.runUntilCurrent()
File "/usr/lib/python2.7/dist-packages/twisted/internet/base.py", line 800, in runUntilCurrent
call.func(*call.args, **call.kw)
File "/usr/lib/python2.7/dist-packages/twisted/internet/task.py", line 215, in __call__
d = defer.maybeDeferred(self.f, *self.a, **self.kw)
--- <exception caught here> ---
File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 134, in maybeDeferred
result = f(*args, **kw)
File "../pyspades/server.py", line 1570, in update
self.world.update(UPDATE_FREQUENCY)
File "world.pyx", line 377, in pyspades.world.World.update (./pyspades/world.cpp:6239)
File "world.pyx", line 352, in pyspades.world.Grenade.update (./pyspades/world.cpp:5702)
File "../pyspades/server.py", line 1022, in grenade_exploded
grenade = grenade)
File "../pyspades/server.py", line 854, in set_hp
self.kill(hit_by, type, grenade)
File "../pyspades/server.py", line 894, in kill
if self.on_kill(by, type, grenade) is False:
File "/home/u148754/pyspades/feature_server/scripts/ratio.py", line 41, in on_kill
return connection.on_kill(self, killer, type, grenade)
File "/home/u148754/pyspades/feature_server/scripts/squad.py", line 261, in on_kill
return connection.on_kill(self, killer, type, grenade)
File "/home/u148754/pyspades/feature_server/scripts/airstrike.py", line 120, in on_kill
connection.on_kill(self, killer, type, grenade)
File "/home/u148754/pyspades/feature_server/scripts/ratio.py", line 41, in on_kill
return connection.on_kill(self, killer, type, grenade)
File "/home/u148754/pyspades/feature_server/scripts/rampage.py", line 133, in on_kill
killer = killer.name)
exceptions.UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)
Is it possible for some capable person to send malformed packets that can lead to a crash? It doesn't necessarily be the cause of _this_ problem here, but I'd be interested if ppl know something about it and if yes so, if there is some sort of enhancement coming.
Second thing is: What exactly led to the server crash here? From what i read out of that traceback, there's some ASCII symbol that cant be encoded connected to the rampage script- is that the common Ä/Ö/Ü/ß problem pyspades got? Or is it something special here? Maybe there is someone with special characters in name going on rampage? I dunno...
Thanks for your help in advance,
Jouh