summaryrefslogtreecommitdiff
path: root/vdr.c
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2005-12-30 15:11:16 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2005-12-30 15:11:16 +0100
commit3f21bf20c52599cc6dbe252488dc3dda36402f3c (patch)
tree57bb30be8f24e013ec15bcdcea60c307a3d7baf2 /vdr.c
parent924827fcbe0e7276c458c051d1f56cb8f4ca19a1 (diff)
downloadvdr-3f21bf20c52599cc6dbe252488dc3dda36402f3c.tar.gz
vdr-3f21bf20c52599cc6dbe252488dc3dda36402f3c.tar.bz2
New option '-g'; fixed security hole CAN-2005-0071 when grabbing to file
Diffstat (limited to 'vdr.c')
-rw-r--r--vdr.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/vdr.c b/vdr.c
index 61f8a54c..0d22f257 100644
--- a/vdr.c
+++ b/vdr.c
@@ -22,7 +22,7 @@
*
* The project's page is at http://www.cadsoft.de/vdr
*
- * $Id: vdr.c 1.222 2005/12/18 14:38:30 kls Exp $
+ * $Id: vdr.c 1.223 2005/12/30 15:07:47 kls Exp $
*/
#include <getopt.h>
@@ -144,6 +144,7 @@ int main(int argc, char *argv[])
{ "daemon", no_argument, NULL, 'd' },
{ "device", required_argument, NULL, 'D' },
{ "epgfile", required_argument, NULL, 'E' },
+ { "grab", required_argument, NULL, 'g' },
{ "help", no_argument, NULL, 'h' },
{ "lib", required_argument, NULL, 'L' },
{ "lirc", optional_argument, NULL, 'l' | 0x100 },
@@ -164,7 +165,7 @@ int main(int argc, char *argv[])
};
int c;
- while ((c = getopt_long(argc, argv, "a:c:dD:E:hl:L:mp:P:r:s:t:v:Vw:", long_options, NULL)) != -1) {
+ while ((c = getopt_long(argc, argv, "a:c:dD:E:g:hl:L:mp:P:r:s:t:v:Vw:", long_options, NULL)) != -1) {
switch (c) {
case 'a': AudioCommand = optarg;
break;
@@ -183,6 +184,8 @@ int main(int argc, char *argv[])
break;
case 'E': EpgDataFileName = (*optarg != '-' ? optarg : NULL);
break;
+ case 'g': cSVDRP::SetGrabImageDir(*optarg != '-' ? optarg : NULL);
+ break;
case 'h': DisplayHelp = true;
break;
case 'l': {
@@ -290,6 +293,10 @@ int main(int argc, char *argv[])
" '-E-' disables this\n"
" if FILE is a directory, the default EPG file will be\n"
" created in that directory\n"
+ " -g DIR --grab=DIR write images from the SVDRP command GRAB into the\n"
+ " given DIR; DIR must be the full path name of an\n"
+ " existing directory, without any \"..\", double '/'\n"
+ " or symlinks (default: none, same as -g-)\n"
" -h, --help print this help and exit\n"
" -l LEVEL, --log=LEVEL set log level (default: 3)\n"
" 0 = no logging, 1 = errors only,\n"