GameServerManagers / LinuxGSM

The command-line tool for quick, simple deployment and management of Linux dedicated game servers.
https://linuxgsm.com
MIT License
4.19k stars 802 forks source link

[Bug]: Ignored Null Byte in Input (sdtdserver) #4607

Open warderkeeju opened 5 days ago

warderkeeju commented 5 days ago

User story

Looking for a fix for the telnet error when issues stop/restart commands to sdtdserver

Game

7 Days to Die ver. 1.0 B313

Linux distro

Ubuntu 22.04

Command

command: restart

Further information

When issuing a restart or stop command and LinuxGSM attempts to stop an 7D2D server gracefully -- there is an error posted to console as follows: image

Relevant log output

2024-07-04T10:46:57 60332.810 INF Telnet connection closed: 127.0.0.1:53664
2024-07-04T10:46:57 60332.810 INF Exited thread TelnetClient_127.0.0.1:53664
2024-07-04T10:46:57 60332.910 INF Executing command 'shutdown' by Telnet from 127.0.0.1:34982
2024-07-04T10:47:08 60343.483 INF Telnet connection from: 127.0.0.1:60676
2024-07-04T10:47:08 60343.483 INF Started thread TelnetClient_127.0.0.1:60676
2024-07-04T10:47:08 60343.494 ERR IOException in TelnetClient_127.0.0.1:34982: Unable to write data to the transport connection: The socket has been shut down.
2024-07-04T10:47:08 60343.495 EXC Unable to write data to the transport connection: The socket has been shut down. ---> The socket has been shut down
  at System.Net.Sockets.Socket.Send (System.Byte[] buffer, System.Int32 offset, System.Int32 size, System.Net.Sockets.SocketFlags socketFlags) [0x00016] in <bcb2428cc11d4f819c07c640b17b2d4b>:0
  at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, System.Int32 offset, System.Int32 size) [0x00065] in <bcb2428cc11d4f819c07c640b17b2d4b>:0
Rethrow as IOException: Unable to write data to the transport connection: The socket has been shut down.
  at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, System.Int32 offset, System.Int32 size) [0x000ac] in <bcb2428cc11d4f819c07c640b17b2d4b>:0
  at TelnetConnection.handleWriting () [0x0004b] in <e964412161274dc68df2fb9c0c8aaaa3>:0
  at TelnetConnection.HandlerThread (ThreadManager+ThreadInfo _tInfo) [0x00022] in <e964412161274dc68df2fb9c0c8aaaa3>:0
UnityEngine.StackTraceUtility:ExtractStringFromException(Object)
Log:Exception(Exception)
TelnetConnection:HandlerThread(ThreadInfo)
ThreadManager:myThreadInvoke(Object)
System.Threading.QueueUserWorkItemCallback:System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
System.Threading.ThreadPoolWorkQueue:Dispatch()
System.Threading._ThreadPoolWaitCallback:PerformWaitCallback()

Steps to reproduce

Run './sdtdserver restart' or './sdtdserver stop' and get multiple repeating errors shown in log entries and initial description.