rustdesk / rustdesk/rustdesk-server

[Signals] Options/Params to disable signal handling

Open
#199 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement help wanted
Dominant language
Rust
Stars
10.4k
Forks
2.6k
PR merge metrics
No merged PRs in 30d

Description

Is your feature request related to a problem? Please describe.
The problem is, that when running the server processes manually even with & or nohup the processes end when ssh session is closed.
(no docker available on embedded / router).

I expect this is the source:
https://github.com/rustdesk/rustdesk-server/blob/master/src/common.rs#L154

Describe the solution you'd like
Would be good to have the option to disable specific signal handlers or all, by env vars or commandline arguments.

Describe alternatives you've considered
I tried nohup without luck and the only alternative might be to have a wrapper that blocks these signals for child processes.

https://stackoverflow.com/questions/4515274/externally-disabling-signals-for-a-linux-program
https://github.com/rust-lang/rust/pull/100737

Might be possible with pthread_sigmask somehow.

Currently I use a workaround using the crontab that works but is not ideal.

Additional context
Add any other context about the feature request here.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in src/common.rs around line 154 and inspect how the server installs its signal handlers. Review the linked Rust signal-handling context and determine whether environment variables or command-line arguments can control specific handlers or all handlers. Done means a documented, tested way to disable the requested signal handling for manually run server processes.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
backend, operating-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.