From 3a21710bab830dbbb666b836f8f858dc03494947 Mon Sep 17 00:00:00 2001 From: tbrehm Date: Wed, 25 Jul 2012 15:21:04 +0000 Subject: [PATCH] Implemented: FS#2326 - Extend vlogger to check for symlinks --- server/scripts/vlogger | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/server/scripts/vlogger b/server/scripts/vlogger index 858617de9..5bc50f318 100755 --- a/server/scripts/vlogger +++ b/server/scripts/vlogger @@ -171,9 +171,9 @@ if ( $OPTS{'h'} || !$ARGV[0] ) { # log directory my $LOGDIR; if ( $ARGV[0] ) { - if ( !-d $ARGV[0] ) { + if ( !-d $ARGV[0] || -l $ARGV[0]) { print STDERR - "[vlogger] target directory $ARGV[0] does not exist - exiting.\n\n"; + "[vlogger] target directory $ARGV[0] does not exist or is a symlink - exiting.\n\n"; exit; } $LOGDIR = $ARGV[0]; @@ -429,6 +429,11 @@ else { unless ( -d "${vhost}" ) { mkdir("${vhost}"); } + + # Dont log to symlinks + if( -l "${vhost}/".time2str( $TEMPLATE, time() ) ) { + die("Log target is a symlink: $LOGDIR/${vhost}/".time2str( $TEMPLATE, time() )); + } # open the file using the template open $vhost, ">>${vhost}/" . time2str( $TEMPLATE, time() ) -- GitLab