diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2006-01-09 16:54:35 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2006-01-09 16:54:35 +0100 |
commit | f415169064b21ab8e025f1f36cdcb3258d2de679 (patch) | |
tree | 14e773884f1a60cf6aa423cc46badca49b13b86c | |
parent | df65f4a2f142fa6759d88cdca125ddef63ade65a (diff) | |
download | vdr-f415169064b21ab8e025f1f36cdcb3258d2de679.tar.gz vdr-f415169064b21ab8e025f1f36cdcb3258d2de679.tar.bz2 |
Skipping all SetCaps() and SetUser() calls when it is started as 'root' and "-u root" is given
-rw-r--r-- | HISTORY | 5 | ||||
-rw-r--r-- | vdr.c | 20 |
2 files changed, 15 insertions, 10 deletions
@@ -4135,7 +4135,7 @@ Video Disk Recorder Revision History Schneider). - Cleaned up some trailing white space. -2006-01-08: Version 1.3.39 +2006-01-09: Version 1.3.39 - The SVDRP command LSTT now accepts the new option 'id' to have the channels of the timers listed with their unique channel ids instead of their numbers @@ -4147,3 +4147,6 @@ Video Disk Recorder Revision History (thanks to Peter Bieringer). If you are using the PC keyboard as remote control input you may need to make VDR newly learn the keys by removing the remote.conf file. +- To avoid problems with access rights when VDR shall run as 'root' it now skips + all SetCaps() and SetUser() calls when it is started as 'root' and "-u root" + is given. @@ -22,7 +22,7 @@ * * The project's page is at http://www.cadsoft.de/vdr * - * $Id: vdr.c 1.233 2006/01/08 11:49:03 kls Exp $ + * $Id: vdr.c 1.234 2006/01/09 16:44:15 kls Exp $ */ #include <getopt.h> @@ -339,14 +339,16 @@ int main(int argc, char *argv[]) if (getuid() == 0) { StartedAsRoot = true; - if (!SetKeepCaps(true)) - return 2; - if (!SetUser(VdrUser)) - return 2; - if (!SetKeepCaps(false)) - return 2; - if (!SetCapSysTime()) - return 2; + if (strcmp(VdrUser, "root")) { + if (!SetKeepCaps(true)) + return 2; + if (!SetUser(VdrUser)) + return 2; + if (!SetKeepCaps(false)) + return 2; + if (!SetCapSysTime()) + return 2; + } } // Help and version info: |