add command-line options "-g", "-u", "-p" #97
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
-g GROUP, --group GROUP change eGID to this group (default: None)
-p PIDFILE, --pidfile PIDFILE name of the file to write the current pid to (default: None)
-u USER, --user USER change eUID to this user (default: None)
Purpose of proposed changes
With these changes, it is easier to run the daemon as a daemon (although it still doesn't daemonize :-).
That is, you can specify a pidfile for the daemon to write its PID to, and specify a username/groupname to have the daemon change to at startup. This allows you to kick off mta-sts-daemon via normal startup scripts as root and then have the daemon run unprivileged without having to play sudo/su games.
Essential steps taken
At daemon startup time, try to write the pid (prior to changing eUID), then change group (prior to changing eUID), then finally change eUID.