0.13.17 Headless server rcon crash
Posted: Thu Aug 18, 2016 8:09 pm
Sending "garbage" data (tested with anything over 40 characters) to the rcon port crashes the Factorio server, and is fully reproducible.
Running:
To reproduce:
- Start a Factorio headless server.
- Then, netcat to the rcon port and paste anything over 40 characters.
-The server will then crash.
Let me know if you need any other information.
Running:
Code: Select all
factorio@factorio:~/game/factorio_0_13_17$ ./bin/x64/factorio --version
Version: 0.13.17 (build 23946, linux64, headless)
Binary version: 64
Map input version: 0.10.0-0
Map output version: 0.13.17-0
- Start a Factorio headless server.
Code: Select all
factorio@factorio:~/game/factorio_0_13_17$ ./bin/x64/factorio --start-server map.zip --rcon-password pass --server-settings data/server-settings.json --rcon-port 9999
Code: Select all
➜ ~ nc ser.ver.ip.addr 9999
This will crash Factorio. This will crash Factorio.
Code: Select all
2.204 Info RemoteCommandProcessor.cpp:198: New RCON connection from cli.ent.src.ip:52884
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
sh: 1: addr2line: not found
13.835 Warning Logger.cpp:356: Couldn't symbolize stacktrace: (resolving symbol failed: fread)
Factorio crashed. Generating symbolized stacktrace, please wait ...
sh: 1: addr2line: not found
13.837 Warning Logger.cpp:356: Couldn't symbolize stacktrace: (resolving symbol failed: fread)
#0 0x503c2b
#1 0x503ea4
#2 0x7fd62c9f64a0
#3 0x7fd62c9f6418
#4 0x7fd62c9f801a
#5 0x10a4e6d
#6 0x1099616
#7 0x1099661
#8 0x10a4ac8
#9 0x109972c
#10 0x10c62e9
#11 0x10c70cb
#12 0x10c7174
#13 0x10c754a
#14 0x6f1e1a
#15 0x108c9d3
#16 0x7fd62d6bc6fa
#17 0x7fd62cac7b5d
13.837 Error CrashHandler.cpp:106: Map tick at moment of crash: 1217
13.837 Error Util.cpp:77: Unexpected error occurred. If you're running the latest version of the game you can help us solve the problem by posting the contents of the log file on the Factorio forums.
Please also include the save file(s), any mods you may be using, and any steps you know of to reproduce the crash.