From: cvs2git Date: Thu, 5 Jan 2006 09:34:33 +0000 (+0000) Subject: This commit was manufactured by cvs2svn to create tag 'freeside_1_5_7'. X-Git-Tag: freeside_1_5_7 X-Git-Url: http://git.freeside.biz/gitweb/?a=commitdiff_plain;h=a3e67e6833d7231ad7a8a724bf6b9688b5b4b203;p=freeside.git This commit was manufactured by cvs2svn to create tag 'freeside_1_5_7'. --- a3e67e6833d7231ad7a8a724bf6b9688b5b4b203 diff --cc rt/bin/webmux.pl index 96e7ebf8d,96e7ebf8d,21cb83f5e..000000000 deleted file mode 100755,100755,100755 --- a/rt/bin/webmux.pl +++ /dev/null @@@@ -1,148 -1,148 -1,125 +1,0 @@@@ ---#!/usr/bin/perl ---# BEGIN LICENSE BLOCK ---# ---# Copyright (c) 1996-2003 Jesse Vincent ---# ---# (Except where explictly superceded by other copyright notices) ---# ---# This work is made available to you under the terms of Version 2 of ---# the GNU General Public License. A copy of that license should have ---# been provided with this software, but in any event can be snarfed ---# from www.gnu.org. ---# ---# This work is distributed in the hope that it will be useful, but ---# WITHOUT ANY WARRANTY; without even the implied warranty of ---# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ---# General Public License for more details. ---# ---# Unless otherwise specified, all modifications, corrections or ---# extensions to this work which alter its source code become the ---# property of Best Practical Solutions, LLC when submitted for ---# inclusion in the work. ---# ---# ---# END LICENSE BLOCK --- ---use strict; --- ---BEGIN { --- $ENV{'PATH'} = '/bin:/usr/bin'; # or whatever you need --- $ENV{'CDPATH'} = '' if defined $ENV{'CDPATH'}; --- $ENV{'SHELL'} = '/bin/sh' if defined $ENV{'SHELL'}; --- $ENV{'ENV'} = '' if defined $ENV{'ENV'}; --- $ENV{'IFS'} = '' if defined $ENV{'IFS'}; -- ---} --- ---use lib ("/opt/rt3/local/lib", "/opt/rt3/lib"); ---use RT; --- ---package RT::Mason; --- ---use CGI qw(-private_tempfiles); #bring this in before mason, to make sure we --- #set private_tempfiles --- ---BEGIN { -- if ($mod_perl::VERSION >= 1.9908) { -- require Apache::RequestUtil; -- no warnings 'redefine'; -- my $sub = *Apache::request{CODE}; -- *Apache::request = sub { -- my $r; -- eval { $r = $sub->('Apache'); }; -- # warn $@ if $@; -- return $r; -- }; -- } --- if ($CGI::MOD_PERL) { --- require HTML::Mason::ApacheHandler; --- } --- else { --- require HTML::Mason::CGIHandler; --- } ---} --- ---use HTML::Mason; # brings in subpackages: Parser, Interp, etc. --- ---use vars qw($Nobody $SystemUser $r); --- ---#This drags in RT's config.pm ---RT::LoadConfig(); --- ---use Carp; --- ---{ --- package HTML::Mason::Commands; --- use vars qw(%session); --- --- use RT::Tickets; --- use RT::Transactions; --- use RT::Users; --- use RT::CurrentUser; --- use RT::Templates; --- use RT::Queues; --- use RT::ScripActions; --- use RT::ScripConditions; --- use RT::Scrips; --- use RT::Groups; --- use RT::GroupMembers; --- use RT::CustomFields; --- use RT::CustomFieldValues; --- use RT::TicketCustomFieldValues; --- --- use RT::Interface::Web; --- use MIME::Entity; --- use Text::Wrapper; --- use CGI::Cookie; --- use Time::ParseDate; --- use HTML::Entities; ---} --- --- ---# Activate the following if running httpd as root (the normal case). ---# Resets ownership of all files created by Mason at startup. ---# Note that mysql uses DB for sessions, so there's no need to do this. ---unless ($RT::DatabaseType =~ /(mysql|Pg)/) { --- # Clean up our umask to protect session files --- umask(0077); --- ---if ( $CGI::MOD_PERL) { --- chown( Apache->server->uid, Apache->server->gid, [$RT::MasonSessionDir] ) --- if Apache->server->can('uid'); --- } --- # Die if WebSessionDir doesn't exist or we can't write to it --- stat($RT::MasonSessionDir); --- die "Can't read and write $RT::MasonSessionDir" --- unless ( ( -d _ ) and ( -r _ ) and ( -w _ ) ); ---} --- -- my $ah = &RT::Interface::Web::NewApacheHandler(@RT::MasonParameters) if $CGI::MOD_PERL; -my $ah = &RT::Interface::Web::NewApacheHandler() if $CGI::MOD_PERL; --- ---sub handler { --- ($r) = @_; -- -- local $SIG{__WARN__}; -- local $SIG{__DIE__}; --- --- RT::Init(); --- --- # We don't need to handle non-text items --- return -1 if defined( $r->content_type ) && $r->content_type !~ m|^text/|io; --- --- my %session; -- my $status; -- eval { $status = $ah->handle_request($r) }; -- if ($@) { -- $RT::Logger->crit($@); -- } -- - my $status = $ah->handle_request($r); --- undef (%session); --- -- if ($RT::Handle->TransactionDepth) { -- $RT::Handle->ForceRollback; -- $RT::Logger->crit("Transaction not committed. Usually indicates a software fault. Data loss may have occurred") ; -- } - $RT::Logger->crit("Transaction not committed. Usually indicates a software fault. Data loss may have occurred") if $RT::Handle->TransactionDepth; --- return $status; ---} --- ---1;