pricecharts

track prices of consumer electronics
Log | Files | Refs | README

commit dd6c05bd26697e8f4f1ee434b8382683f5b64f80
parent 0dcc22ba4ffc0e56bf2ad617e19abdb317160019
Author: kyle <kyle@getaddrinfo.net>
Date:   Mon,  2 Nov 2015 20:23:21 -0700

fcgi: two small fixes

- run perl interpreter with -T as this daemon handles dirty input
- give the program half a chance to find the tt/ directory in a chroot

Diffstat:
Mps_fcgi | 13+++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/ps_fcgi b/ps_fcgi @@ -1,4 +1,4 @@ -#!/usr/bin/env perl +#!/usr/bin/env perl -T use strict; use warnings; @@ -58,9 +58,6 @@ my $uid = getpwnam($user) or die "error: user $user does not exist\n"; my $gid = getgrnam($group) or die "error: group $group does not exist\n"; chown $uid, $gid, $http_cfg{socket} or die "error: chown $uid:$gid: $!"; -my $config = { INCLUDE_PATH => "$http_cfg{htdocs}/tt" }; -my $template = Template->new($config) || die $Template::ERROR . "\n"; - if (fork()) { # parent $0 = "ps_fcgi [priv]"; @@ -97,6 +94,14 @@ print "info: child: uid:gid appears to be $<:$(\n" if ($args{v}); $SIG{INT} = \&child_sig_handler; $SIG{TERM} = \&child_sig_handler; +# remove chroot dir from beginning of htdocs dir +my $chroot_tt_dir = "$http_cfg{htdocs}/tt"; +$chroot_tt_dir =~ s/$http_cfg{chroot}//; +print "chroot tt dir is $chroot_tt_dir\n"; + +my $config = { INCLUDE_PATH => $chroot_tt_dir }; +my $template = Template->new($config) || die $Template::ERROR . "\n"; + syslog(LOG_INFO, "child: ready"); print "info: child: ready\n" if ($args{v});