[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Problem with PostgreSQL



On Thu, 2006-03-16 at 18:16 +0100, Stefan Bellon wrote:
> bellonsn@cube:~$ cat -n /usr/sbin/pg_maintenance | head -50 | tail -7
>     44          @options = ('--cluster', "$v/$c", '-a');
>     45          push @options, '-f' if $full;
>     46          push @options, '-z' if $analyze;
>     47          push @options, '-v' if $verbose;
>     48          push @options, '-q' unless $verbose;
>     49          exec '/usr/bin/vacuumdb', @options or
>     50              error 'could not execute vacuumdb';
> bellonsn@cube:~$ grep -- "-T" /usr/sbin/pg_maintenance

You won't find it that way, because it is a command-line switch combined
with another:

#!/usr/bin/perl -wT

The -T switch is an added (but not fool proof) security check to make
sure the user doesn't execute any (malicious) shell commands he doesn't
intend to:

http://www.perl.com/doc/manual/html/pod/perlsec.html

However, AFAICT, the code in pg_maintenance looks like it is secure
enough for -T.  In fact, it doesn't fail when I run it.  Can you
run /usr/sbin/pg_maintenance from the shell without error?

You could also try testing without the -T in line 1--to see if it
works--but I wouldn't recommend leaving it that way.

Casey




Reply to: