GameServerManagers / GameServerManagers/LinuxGSM

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

Open
#4,607 2 comments 0 reactions 0 assignees View on GitHub
command: console command: restart distro: Ubuntu game: 7 Days to Die type: bug
Dominant language
Shell
Stars
4.9k
Forks
864
PR merge metrics
No merged PRs in 30d

Description

### 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](https://github.com/GameServerManagers/LinuxGSM/assets/145716068/dfd36ed3-d7c3-44f0-9596-b38b65d03904)

### Relevant log output

```shell
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 :0
at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, System.Int32 offset, System.Int32 size) [0x00065] in :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 :0
at TelnetConnection.handleWriting () [0x0004b] in :0
at TelnetConnection.HandlerThread (ThreadManager+ThreadInfo _tInfo) [0x00022] in :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.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.