## ======================= INSTALL VARIABLES =========================== #
## The lines above this point were insterted by the installation program.  
##
## $install_path is the directory where net.Thread.pl, net.Thread.config.pl,
## and parseform.pl are located. There should not be a trailing slash on 
## this string (i.e., "/tmp" not "/tmp/").
##--------------------------------------------------------------------
## This software is the property of net.Genesis Corp.
## Copyright (c) net.Genesis 1994, 1995
##
## It may not be copied, ditributed or modified, in part or in whole, by
## any means whatsoever, without the explicit written permission of
## net.Genesis Corp. This copyright notice MUST be included in all
## copies or portions of the software.
##
## THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
## EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
## MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
## IN NO EVENT SHALL NET.GENESIS CORP. BE HELD LIABLE FOR ANY CLAIM,
## DAMAGES OR OTHER LIABILITY, WHETHER IN ACTIOIN OF CONTRACT, TORT OR
## OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
## THE USE OR OTHER DEALINGS IN THE SOFTWARE.
##
##
##---------------------------------------------------------------------
$lllaab = 0; $lllaac = 1; $lllaad = 1; $lllaae = 0; $lllaaf = 1; $lllaag = 2; $lllaah = 3; $lllaai = 86400;        $lllaaj = time(); $lllaak = 1; if($ARGV[0] eq "\55\166") { print("\n\124\150\151\163\40\151\163\40\156\145\164\56\124\150\162\145\141\144\56\n"); print("\126\145\162\163\151\157\156\40\72\40\61\56\62\142\n"); print("\123\160\145\143\151\145\163\40\72\40\146\165\154\154\137\125\116\111\130\n"); print("\102\165\151\154\164\40\40\40\72\40\115\157\156\40\112\165\156\40\40\63\40\61\71\72\60\66\72\60\62\40\105\104\124\40\61\71\71\66\n\n"); print("\124\150\151\163\40\145\166\141\154\165\141\164\151\157\156\40\143\157\160\171\40\151\163\40\147\157\157\144\40\165\156\164\151\154\40\66\57\61\65\57\61\71\71\66\n\n") if 0; print("\124\150\151\163\40\163\157\146\164\167\141\162\145\40\151\163\40\164\150\145\40\160\162\157\160\145\162\164\171\40\157\146\40\156\145\164\56\107\145\156\145\163\151\163\40\103\157\162\160\56\n"); print("\103\157\160\171\162\151\147\150\164\40\50\143\51\40\156\145\164\56\107\145\156\145\163\151\163\40\61\71\71\64\54\40\61\71\71\65\n"); exit; } $lllaal = "\150\164\164\160\72\57\57\167\167\167\56\156\145\164\147\145\156\56\143\157\155\57"; $lllaam = "\150\164\164\160\72\57\57\167\167\167\56\156\145\164\147\145\156\56\143\157\155\57\151\155\141\147\145\163\57\156\145\164\147\145\156\56\163\155\141\154\154\56\147\151\146"; $lllaan = "\150\164\164\160\72\57\57\167\167\167\56\156\145\164\147\145\156\56\143\157\155\57\160\162\157\144\165\143\164\163\57\156\145\164\56\124\150\162\145\141\144\57"; $lllaao = 'http://www.netgen.com/products/email.inquiry.html'; $lllaap = 'thread-sales\@netgen.com'; $lllaaq = '617-577-9800'; $lllaar = '617-577-9850'; $lllaas = 15 * 60;  $lllaat = 3; $lllaau = 7; $lllaav = "\144\145\163\143\162\151\160\164\151\157\156"; $lllaaw = "\157\154"; $lllaax = 4; @lllaay = (); $lllaaz = ''; $lllaba = 1; @lllabb = ("\165\163\145\162\156\141\155\145\146\157\162\155", "login", "logout", "threadview", "message","postform", "post", "delete", "delold", "editform","update", "purge", "subscribe", "approve", "reject", "undelete"); $lllabc = 5; $lllabd{$lllabc}  = "\124\150\151\163\40\146\151\154\145\40\150\141\163\40\142\145\145\156\40\155\157\144\151\146\151\145\144\56\n"; if ("\125\116\111\130" eq "UNIX")  { umask(022); } &lllabe;                           $debug = $config'debug; $lllabf = $ENV{'PATH_INFO'};     $lllabf =~ s/\\/\//g; $lllabf =~ s/^[\/\\]//; &debug_print ( "Thread Action: $lllabf" ) if ( $debug >= 3 ); $lllabg = $ENV{'QUERY_STRING'};   &debug_print ( "Thread State: $lllabg" ) if ( $debug >= 3 ); if($ENV{"\122\105\121\125\105\123\124\137\115\105\124\110\117\104"} eq "POST") { read(STDIN, $lllabh, $ENV{"\103\117\116\124\105\116\124\137\114\105\116\107\124\110"}); &debug_print("\122\145\141\144\151\156\147\40\120\117\123\124\40\144\141\164\141\40\146\162\157\155\40\123\124\104\111\116")  if ($debug >= 2); &debug_print("\124\150\145\40\161\165\145\162\171\40\151\163\72\40" . $lllabh) if ($debug >= 2); $lllabh =~ s/\+/ /g;	         %lllabi = &parseform'parseform($lllabh); } $sn = $ENV{'SCRIPT_NAME'};       $lllabf =~ s/\\/\//g; $sn =~ s/[\/\\]$//; ##############################################################################
##############################################################################i
if ( $ENV{'SERVER_SOFTWARE'} =~ /Purveyor/ ) { if (( $ENV{'SERVER_SOFTWARE'} =~ / v(\d+\.\d+) /) && ($1 >= 1.2)) {} else { local( $lllabj ) = $ENV{'REQUEST_LINE'}; $sn = (split("\40", $lllabj ))[1]; if ($sn =~ /^([\/\\][^\/\\\?]+[\/\\][^\/\\\?]+)/) { $sn = $1; &debug_print( "Applying Purveyor Patch: $lllabj -- $sn"); } else { &debug_print( "Didn't match Regexp: $sn\n" ); } } } &debug_print ( "Thread Script Name: $sn" ) if ( $debug >= 3 ); %lllabk = &parseform'parseform($lllabg); @lllabl = split($parseform'parseform_delim, $lllabk{'email'}); $lllabk{'email'} = @lllabl[0]; @lllabm = split($parseform'parseform_delim, $lllabk{'user'}); $lllabk{'user'} = @lllabm[0]; $lllabk{'depth'} = $lllaat unless ($lllabk{'depth'}); &lllabn(); if(0) { &debug_print ("\103\150\145\143\153\151\156\147\40\105\170\160\151\162\141\164\151\157\156\40\104\141\164\145")  if ($debug > 0); &lllabo; } $lllabp  = ($ARGV[0] eq "\55\163\164\141\162\142\165\143\153"); if(!0)  {  &lllabq(!$lllabp); } if($lllabp) { exit; } $lllabm = &lllabr();           if ($lllabk{'user'}) { &debug_print("Thread User: $lllabk{'user'}")  if ($debug >= 2); } else { &debug_print("\116\157\40\124\150\162\145\141\144\40\125\163\145\162\40\163\165\142\155\151\164\164\145\144\56")  if ($debug >= 2); } &lllabs;                       if ($lllabt) { &debug_print("\125\163\145\162\40\154\157\147\147\145\144\40\151\156\40\141\163\40\141\144\155\151\156\151\163\164\162\141\164\157\162") if ( $debug >= 1 ); } elsif ($lllabu) { &debug_print("\105\162\162\157\162\40\167\150\151\154\145\40\154\157\147\147\151\156\147\40\151\156\40\141\163\40\141\144\155\151\156\151\163\164\162\141\164\157\162") if ( $debug >= 1 ); } $lllabg = &lllabv();   if ($lllabf =~ /($lllabb)\/(.*)/)  { $lllabw = $1; $lllabx = $2; } elsif ($lllabf =~ /($lllabb)/)  { $lllabw = $1; $lllabx = ""; } else  { $lllabw = ""; $lllabx = ""; }; if( $lllabt && ($lllabw eq "\154\157\147\157\165\164") ) { local ($lllaby) = "$lllabz/timed";  &debug_print("\125\163\145\162\40\154\157\147\147\151\156\147\40\157\165\164")  if ($debug >= 1); $lllabk{'user'} = ""; $lllabm = ""; $lllabk{'p1'} = ""; $lllabk{'p2'} = ""; if ( -e $lllaby ) { unlink ($lllaby); } $lllabt = 0; $lllabg = &lllabv();   &lllaca($lllabx);         } if ($config'require_login) { if (!$lllabm) { &debug_print( "\125\163\145\162\40\146\151\145\154\144\40\151\163\40\142\154\141\156\153\40\55\55\40\155\165\163\164\40\154\157\147\40\151\156\56" ) if ( $debug >= 1 ); &lllacb($lllabx, $lllabw); } } if  (($lllacc) && (!$lllabt)) { &debug_print( "\127\145\142\155\141\163\164\145\162\40\151\163\40\156\157\164\40\143\165\162\162\145\156\164\154\171\40\163\145\143\165\162\145\40\55\55\40\155\165\163\164\40\154\157\147\40\151\156\56" ) if ( $debug >= 1 ); &lllacb($lllabx, $lllabw); } if ($lllabk{'lastread'} < 0) { &debug_print( "\111\156\166\141\154\151\144\40\104\141\164\145\40\151\156\40\114\157\147\151\156\40\106\157\162\155\40\55\55\40\155\165\163\164\40\154\157\147\40\151\156\56" ) if ( $debug >= 1 ); &lllacb($lllabx, $lllabw); } &lllacd($lllabx, $lllabw); &debug_print("Dispatching on command: \'$lllabw\'")  if ($debug >= 2); $lllace = &lllacf ($lllabx); &lllacg( $lllabx ); if($lllabw eq "\154\157\147\151\156") { &debug_print("\125\163\145\162\40\154\157\147\147\151\156\147\40\151\156")  if ($debug >= 1); &lllach($lllabx);         } elsif($lllabw eq "\164\150\162\145\141\144\166\151\145\167") { &debug_print("User viewing thread: $lllabx")  if ($debug >= 1); &lllaci($lllabx);          } elsif($lllabw eq "\155\145\163\163\141\147\145") { &debug_print("User viewing message: $lllabx")  if ($debug >= 1); &lllaca($lllabx);         } elsif($lllabw eq "\160\157\163\164\146\157\162\155") { &debug_print("User filling in post form: $lllabx")  if ($debug >= 1); if ($lllace == $lllaah) { if ( $lllabt ) { &lllacj($lllabx); } else { &lllaci( $lllabx ); } } elsif (($lllace == $lllaag) || ($lllace == $lllaaf)) { &lllack($lllabx); } } elsif($lllabw eq "\160\157\163\164")  { if (((($lllabk{'type'} eq "\141\162\145\141") || ($lllabk{'type'} eq "group")) && $lllabt ) || ( $lllabk{'type'} eq "\155\145\163\163\141\147\145" )) { &debug_print("User posting to message: $lllabx")  if ($debug >= 1); &lllacl($lllabx);           } else { &lllaci( $lllabx ); } } elsif($lllabw eq "\145\144\151\164\146\157\162\155") { &debug_print("User editting message: $lllabx")  if ($debug >= 1); if ( $lllabt ) { if (($lllace == $lllaah) || ($lllace == $lllaag)) { &lllacj($lllabx); } elsif ($lllace == $lllaaf) { &lllack($lllabx); } } else { &lllaca( $lllabx ); } } elsif($lllabw eq "\165\160\144\141\164\145") { if ( $lllabt ) { &debug_print("User updating message: $lllabx")  if ($debug >= 1); &lllacm($lllabx);             } else { &lllaca( $lllabx ); } } elsif($lllabw eq "\144\145\154\145\164\145") { if ( $lllabt ) { &debug_print("User deleting message: $lllabx")  if ($debug >= 1); &lllacn($lllabx);              } else { &lllaca( $lllabx ); } } elsif($lllabw eq "\165\156\144\145\154\145\164\145") { if ( $lllabt ) { &debug_print("User undeleting message: $lllabx")  if ($debug >= 1); &lllaco($lllabx);              } else { &lllaca( $lllabx ); } } elsif($lllabw eq "\141\160\160\162\157\166\145") { if ( $lllabt ) { &debug_print("User approving message: $lllabx")  if ($debug >= 1); &lllacp($lllabx);              } else { &lllaca( $lllabx ); } } elsif($lllabw eq "\162\145\152\145\143\164") { if ( $lllabt ) { &debug_print("User rejecting message: $lllabx")  if ($debug >= 1); &lllacq($lllabx);              } else { &lllaca( $lllabx ); } } elsif($lllabw eq "\160\165\162\147\145") { if ( $lllabt ) { &debug_print("\125\163\145\162\40\160\165\162\147\151\156\147")  if ($debug >= 1); &lllacr($lllabx);            } else { &lllaca( $lllabx ); } } elsif($lllabw eq "\144\145\154\157\154\144") { if ( $lllabt ) { &debug_print("\125\163\145\162\40\144\145\154\145\164\151\156\147\40\157\154\144\40\155\145\163\163\141\147\145\163")  if ($debug >= 1); &lllacs($lllabx); } else { &lllaca( $lllabx ); } } elsif($lllabw eq "\165\163\145\162\156\141\155\145\146\157\162\155") { &debug_print ("\107\157\151\156\147\40\164\157\40\164\150\145\40\154\157\147\40\151\156\40\163\143\162\145\145\156\56") if ($debug >= 1);       &lllacb($lllabx, "\155\145\163\163\141\147\145"); } elsif($lllabw eq "\163\165\142\163\143\162\151\142\145") { &debug_print ("\103\150\141\156\147\145\40\123\165\142\163\143\162\151\160\164\151\157\156\40\111\156\146\157\162\155\141\164\151\157\156\56") if ($debug >= 1);       &lllact($lllabx); } else { if ($config'require_login) { &debug_print ("\116\157\40\142\145\150\141\166\151\157\162\40\163\160\145\143\151\146\151\145\144\56\40\40\104\151\163\160\154\141\171\151\156\147\40\114\157\147\151\156\56") if ($debug >= 1);       &lllacb($lllabx, "\155\145\163\163\141\147\145"); } { &debug_print ("\116\157\40\142\145\150\141\166\151\157\162\40\163\160\145\143\151\146\151\145\144\56\40\40\126\151\145\167\151\156\147\40\115\145\163\163\141\147\145\56") if ($debug >= 1);       &lllaca($lllabx);        }  } sub lllaca { local($lllabx) = @_; local($lllacu) = 0; local($lllace) = &lllacf ($lllabx); local(@lllacv); &debug_print ( "\105\156\164\145\162\151\156\147\40\126\151\145\167\115\145\163\163\141\147\145" ) if ( $debug >= 3); if ($lllace == $lllaah) { &debug_print( "\115\145\163\163\141\147\145\40\151\163\40\141\40\164\150\162\145\141\144\56\40\123\167\151\164\143\150\151\156\147\40\164\157\40\124\150\162\145\141\144\40\126\151\145\167" ) if ( $debug >= 2 ); &lllaci($lllabx); } $lllacw = &lllacx( "", $lllabx ); &debug_print( "Looking for message at $lllacw" ) if ( $debug >= 2 ); if (!-x $lllacw) {				 &debug_print( "\124\150\145\40\162\145\161\165\145\163\164\145\144\40\155\145\163\163\141\147\145\40\144\157\145\163\40\156\157\164\40\145\170\151\163\164\56" ) if ( $debug >= 1 ); $lllabd  = "\124\150\145\40\162\145\161\165\145\163\164\145\144\40\155\145\163\163\141\147\145\40\144\157\145\163\40\156\157\164\40\145\170\151\163\164\56\n"; $lllabd .= "\120\154\145\141\163\145\40\162\145\55\143\150\145\143\153\40\164\150\145\40\125\122\114\40\141\156\144\40\164\162\171\40\141\147\141\151\156\56\n"; &lllacy(NULL, NULL); } $lllacz = &lllada ("\107\162\160\101\143\143\145\163\163\120\141\163\163\167\144", &llladb ($lllabx)); if ($lllacz) { &debug_print("This group is password protected: \'$lllacz\'") if ($debug >= 2); } else {    &debug_print("\124\150\151\163\40\147\162\157\165\160\40\151\163\156\47\164\40\160\141\163\163\167\157\162\144\40\160\162\157\164\145\143\164\145\144") if ($debug >= 2); } $llladc = &llladd( $lllabx ); print("<title>$llladc</title>\n"); if ($config'button_bar_at_top) { &lllade($lllabx); print "\n\74\150\162\76\n"; } &llladf ($lllabx); if ($lllace == $lllaag)  { print &lllada ("\110\145\141\144\145\162", $lllabx); } else  { $llladg = &lllada ("\115\163\147\150\144\162", &llladb ($lllabx)); if ($llladg !~ /^\s*$/) { print $llladg; print "\74\150\162\76\n"; } print("<h1>$llladc</h1>\n"); $lllacu = &llladh ($lllabx, 1) - 1; print ("$llladi" x $lllacu); print ("\74\150\162\76"); print "<strong>$llladc</strong><br>\n";  local ($llladj) = &llladk( $lllabx ); local ($llladl) = &llladm (&llladn ($lllabx)); print("\74\145\155\76\142\171\40", $llladj , ", $llladl</em><p>\n"); local($lllado) = &llladp( $lllabx ); print "$lllado\n"; print "\74\150\162\76"; } print ("$llladq" x $lllacu); if (&llladr($lllabx, 1, "\115\145\163\163\141\147\145") == 0) { print "\74\142\162\76\n"; print "$llladq\n"; print "\74\163\164\162\157\156\147\76\74\145\155\76\116\157\40\122\145\160\154\151\145\163\74\57\145\155\76\74\57\163\164\162\157\156\147\76\n"; print "$llladi"  } print ("$llladi" x $lllacu); print &lllada ("\106\157\157\164\145\162", $lllabx) if ($lllace == $lllaag); if ((($config'button_bar_at_bottom == 0) && ($config'button_bar_at_top == 0)) || ($config'button_bar_at_bottom)) { print "\n\74\150\162\76\n"; &lllade($lllabx); } &lllads($lllabx); &llladt($lllabx); &llladu(); exit; } sub lllacl { local($lllabx) = @_; local($llladv); local($lllace) = &lllacf ($lllabx); local($llladw); local($llladx); &debug_print ( "\105\156\164\145\162\151\156\147\40\120\157\163\164" ) if ( $debug >= 3); if (($lllabk{'type'} eq "\155\145\163\163\141\147\145") &&  (!$lllabt) && (&lllady( $lllabx ))) { $llladx = 1; } else { $llladx = 0; } &llladz () if ( &lllaea() ); if (($lllace != $lllaah) && !$lllabk{'confirm'}) { &lllaeb($lllabx); } local ($lllaec) = &lllaed($lllabx) + 1; if ( $lllabx ) { $llladv = "$lllabx/$lllaec"; } else { $llladv = $lllaec; } if ($llladx) { $llladv .= "\56\115"; } if ( $lllabk{'NewGrpPasswd'} ) { &lllaee( $llladv, "\160\157\163\164" ); }		 local ($lllaef) = 0; $lllaef = mkdir("$lllabz/$llladv", 0755); if (!$lllaef) { $lllaeg = $!; &debug_print("Failed to create directory when posting message: $lllaeg"); $lllabd  = "\124\150\145\40\146\157\154\154\157\167\151\156\147\40\145\162\162\157\162\40\167\141\163\40\145\156\143\157\165\156\164\145\162\145\144\40\167\150\145\156\n"; $lllabd .= "attempting to post the message: $lllaeg.\n"; $lllabd .= "\124\150\145\40\155\145\163\163\141\147\145\40\167\141\163\40\156\157\164\40\143\162\145\141\164\145\144\56\n"; &lllacy($lllabx, $lllabw); } local($lllaeh, $lllaei, $lllaeg); $lllaeh = 1; if( $config'strictHTML ) { $llladc = &lllaej( $lllabk{'title'} ); } else { $llladc = $lllabk{ 'title' }; } ($lllaei, $lllaeg) =  &lllaek("\124\151\164\154\145", &lllael( $llladc ),  "$llladv"); $lllaeh = $lllaeh && $lllaei; &debug_print ("Message Type: $lllabk{'type'}")  if ( $debug >= 1 ); if (($lllabk{'type'} eq "\141\162\145\141") || ($lllabk{'type'} eq "group")) { if ( $lllabk{'NewGrpPasswd'} ) { &lllaem($llladv); } if ( $lllabk{'moderation'} eq "\157\156" ) { &lllaek("\115\157\144\145\162\141\164\145\144", "", $llladv ); } elsif ( -e &lllacx( "\115\157\144\145\162\141\164\145\144", $llladv ) ) {	 unlink &lllacx( "\115\157\144\145\162\141\164\145\144", $llladv ); } ($lllaei, $lllaeg) =  &lllaek("\110\145\141\144\145\162", $lllabk{'header'}, "$llladv"); $lllaeh = $lllaeh && $lllaei; ($lllaei, $lllaeg) =  &lllaek("\115\163\147\150\144\162", $lllabk{'msghdr'}, "$llladv"); $lllaeh = $lllaeh && $lllaei; ($lllaei, $lllaeg) =  &lllaek("\106\157\157\164\145\162", $lllabk{'footer'}, "$llladv"); $lllaeh = $lllaeh && $lllaei; if ($lllabk{'type'} eq "\141\162\145\141")  { ($lllaei, $lllaeg) =  &lllaek("\101\162\145\141", "Area", "$llladv"); $lllaeh = $lllaeh && $lllaei; } } elsif ($lllabk{'type'} eq "\155\145\163\163\141\147\145")  { if ($config'usernameOverride) { $lllaen = &lllabr(); } else { $lllaen = $lllabk{'from'}; } if( $config'strictHTML ) { $lllaen = &lllaej( $lllaen ); } ($lllaei, $lllaeg) =  &lllaek("\101\165\164\150\157\162", &lllael( $lllaen ) , "$llladv" ); $lllaeh = $lllaeh && $lllaei; if( $config'strictHTML ) { $lllaeo = &lllaej( $lllabk{'body'} ); } else { $lllaeo = $lllabk{'body'}; } $lllaep = &lllaeq( $lllaeo , $lllabk{'format'} ); ($lllaei, $lllaeg) =  &lllaek("\102\157\144\171", $lllaep, "$llladv"); $lllaeh = $lllaeh && $lllaei; } if (!$lllaeh) { local ($lllaer) = &lllaes ($lllabx); &lllaet($lllabx); $lllabd  = "\124\150\145\40\146\157\154\154\157\167\151\156\147\40\145\162\162\157\162\40\167\141\163\40\145\156\143\157\165\156\164\145\162\145\144\40\167\150\145\156\n"; $lllabd .= "attempting to post the message: $lllaeg.\n"; $lllabd .= "\124\150\145\40\155\145\163\163\141\147\145\40\167\141\163\40\156\157\164\40\143\162\145\141\164\145\144\56\n"; &lllacy($lllaer, "\155\145\163\163\141\147\145"); } &debug_print("\127\151\160\151\156\147\40\103\141\143\150\145\163\56\56\56")  if ( $debug >= 2); &lllaeu($lllabx); if ($lllabk{'type'} eq "\141\162\145\141") {			 if ( $debug >= 2 ) { &debug_print ("\104\141\164\145\72\40" . date ); &debug_print ("\101\156\40\141\162\145\141\40\167\141\163\40\163\165\143\143\145\163\163\146\165\154\154\171\40\143\162\145\141\164\145\144\56"); &debug_print ("The area is entitled '$lllabk{'title'}'."); } } elsif ($lllabk{'type'} eq "\147\162\157\165\160") { if ( $debug >= 2 ) { &debug_print ("\104\141\164\145\72\40" . date ); &debug_print ("\101\156\40\147\162\157\165\160\40\167\141\163\40\163\165\143\143\145\163\163\146\165\154\154\171\40\143\162\145\141\164\145\144\56"); &debug_print ("The group is entitled '$lllabk{'title'}'."); } } elsif ($lllabk{'type'} eq "\155\145\163\163\141\147\145")  { local($lllaev)  = &llladd( $lllabx ); local($lllaew)     = &llladd( &llladb($lllabx) ); local(@lllaex)          = localtime(); local($lllaey)      = sprintf("%2.2d:%2.2d:%2.2d", @lllaex[2], @lllaex[1], @lllaex[0]); local($lllaez)      = sprintf("%d/%d/%d", @lllaex[4]+1, @lllaex[3], @lllaex[5]); local($lllafa)    = $lllabk{'from'}; local($lllafb)   = $lllabk{'title'}; local($lllafc)      = $llladv; if (( $config'admin_notification ) && ( $config'admin_notification_recipient ) && ( $config'admin_notification_body )) { $lllafd  = "To: $config'admin_notification_recipient\n"; $lllafd .= "From: $config'admin_notification_sender\n"; $lllafd .= "Subject: $config'admin_notification_subject\n"; $lllafd .= "\n"; $lllafd .= $config'admin_notification_body; $lllafd =~ s/{PostResponse}/$lllaev/ig; $lllafd =~ s/{PostGroup}/$lllaew/ig; $lllafd =~ s/{PostTime}/$lllaey/ig; $lllafd =~ s/{PostDate}/$lllaez/ig; $lllafd =~ s/{PostAuthor}/$lllafa/ig; $lllafd =~ s/{PostSubject}/$lllafb/ig; $lllafd =~ s/{PostMessage}/$lllafb/ig; $lllafd =~ s/{PostBody}/$lllaep/ig; $lllafd =~ s/{PostNumber}/net.Thread:$llladv/ig; &lllafe ( $lllaff, $lllafd ); } if ((!$llladx) && ( $config'user_notification ) && ( $config'user_notification_body )) { $lllaff = join ("\54", &lllafg( $llladv, 0 )); ($lllafh = $llladv) =~ s/\//\./g; $lllafh = "NETTHREAD.$lllafh\@$ENV{'SERVER_NAME'}"; $lllafi = "Message-Id: <$lllafh>\n"; $lllafi  .= "To: $lllaff\n"; $lllafi .= "From: $config'user_notification_sender\n"; $lllafi .= "Subject: $config'user_notification_subject\n"; $lllafi .= "\n"; $lllafi .= $config'user_notification_body; $lllafi =~ s/{PostResponse}/$lllaev/ig; $lllafi =~ s/{PostGroup}/$lllaew/ig; $lllafi =~ s/{PostTime}/$lllaey/ig; $lllafi =~ s/{PostDate}/$lllaez/ig; $lllafi =~ s/{PostAuthor}/$lllafa/ig; $lllafi =~ s/{PostSubject}/$lllafb/ig; $lllafi =~ s/{PostMessage}/$lllafb/ig; $lllafi =~ s/{PostBody}/$lllaep/ig; $lllafi =~ s/{PostNumber}/net.Thread:\/$llladv/ig; &lllafe ( $lllaff, $lllafi ); } } &lllact($llladv); } sub lllafg { local ($lllafj, $lllafk) = @_; local (%lllacv); local(@lllafl); &debug_print("Looking for Subscribed Users for $lllafj") if ( $debug >= 1 ); if ($lllafk == 0) { &debug_print ("Looking for all the users that should recieve mail about $lllafj") if ( $debug >= 2 ); $lllafm = &lllaes($lllafj); local($lllafn) =  &lllacx( "\104\151\162\145\143\164\123\165\142\163", $lllafm ); push(@lllafl, $lllafn); local($lllafo); for ($lllafm = &lllaes($lllafj);  $lllafm;  $lllafm = &lllaes($lllafm)) { $lllafo = &lllacx( "\124\150\162\145\141\144\123\165\142\163", $lllafm ); &debug_print("Adding file $lllafo"); push(@lllafl, $lllafo); } $lllafo = &lllacx("\124\150\162\145\141\144\123\165\142\163", "/"); push(@lllafl, $lllafo); } elsif ($lllafk == 1) { &debug_print ("Looking for all the users that are directly subscribed to $lllafj") if ( $debug >= 2 ); local($lllafn) =  &lllacx( "\104\151\162\145\143\164\123\165\142\163", $lllafj ); push(@lllafl, $lllafn); } elsif ($lllafk == 2) { &debug_print ("Looking for all the users that are subscribed to the $lllafj thread") if ( $debug >= 2); local($lllafo) =  &lllacx( "\124\150\162\145\141\144\123\165\142\163", $lllafj ); push(@lllafl, $lllafo); } foreach $lllafp (@lllafl) { if (-r $lllafp) { &debug_print("Reading new subscription file: $lllafp") if ( $debug >= 2 ); open (SUBS, $lllafp); while ($lllafq = <SUBS>) { chop($lllafq); if (!$lllacv{$lllafq}) { &debug_print("Found a new subscribed user: $lllafq") if ( $debug >= 2 ); $lllacv{$lllafq} = 1; } } close ( SUBS ); } }   return (keys %lllacv); } sub lllact { local($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\123\165\142\163\143\162\151\142\145" ) if ( $debug >= 3); if (($lllabk{'email'}) && ($lllabk{'subscribe'})) { local ($lllafr) = $lllabk{'email'}; local ($lllafs) = $lllabk{'subscribe'}; if ( $lllafs eq 'none' ) { &lllaft ( $lllabx, $lllafr, 'DirectSubs' ); &lllaft ( $lllabx, $lllafr, 'ThreadSubs' ); } elsif ( $lllafs eq 'direct' ) { &lllafu ( $lllabx, $lllafr, 'DirectSubs' ); &lllaft ( $lllabx, $lllafr, 'ThreadSubs' ); } elsif ( $lllafs eq 'thread' ) { &lllaft ( $lllabx, $lllafr, 'DirectSubs' ); &lllafu ( $lllabx, $lllafr, 'ThreadSubs' ); } } &lllaca ($lllabx); } sub lllafu { local( $lllabx, $lllafr, $lllafs ) = @_; $lllafp = &lllacx ( $lllafs, $lllabx ); &debug_print ( "Adding $lllafr to $lllafp" ) if ( $debug >= 1 ); open ( SUB , ">> $lllafp" ); print SUB "$lllafr\n"; close ( SUB ); } sub lllaft { local( $lllabx, $lllafr, $lllafs ) = @_; local( @lllafv, $lllafw ); local( $sub, $lllafp ); if ($lllafs eq 'DirectSubs') { @lllafv = &lllafg ( $lllabx, 1 ); } elsif ($lllafs eq 'ThreadSubs') { @lllafv = &lllafg ( $lllabx, 2 ); } else { } foreach $sub ( @lllafv ) { if (( $sub ne $lllafr ) && ( $sub !~ /^\s*$/)) { $lllafw .= "$sub\n"; } } $lllafp = &lllacx ( $lllafs, $lllabx ); open ( SUB , "> $lllafp" ); print SUB "$lllafw"; close ( SUB ); } sub lllafe { local( $lllafx, $lllafy ) = @_; if("\125\116\111\130" eq "UNIX") {				 if($debug >= 1) { &debug_print ("Sending Mail to $lllafx."); } local($sm) = "$config'sm_loc -t"; open(SM, "| $sm"); print SM $lllafy; close(SM); } elsif("\125\116\111\130" eq "NT") { #####################################################################
#####################################################################
&lllafz($lllaga,$lllagb,$lllagc,$to,$lllagd); } } sub lllafz { local($lllage,$lllagf,$lllagc, $lllagg, $lllagh) = @_; local($lllagi) = "\57\164\155\160\57\155\141\151\154\142\157\144\171"; &debug_print("\156\164\137\155\141\151\154",1);  print BODY $lllagf; close(BODY); &debug_print("From: $lllagh",2);  &debug_print("Subject: $lllagc",2);  &debug_print("To: $lllagg",2); &debug_print("Body: $lllagf",2); $lllagj = "$lllage $lllagi -s \"$lllagc\" -t \"$lllagg\" -f \"$lllagh\""; &debug_print ("blat_command: $lllagj") if $debug; $lllagk = `$lllagj`; &debug_print ("Blat result:\n *-*-*-*\n $lllagk *-*-*-*\n");     &debug_print ("unlinking \"$lllagi\"") if $debug>=3; unlink($lllagi) || &debug_print("Couldn't unlink \"$lllagi\"",1); }    sub lllacn  { local($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\104\145\154\145\164\145" ) if ( $debug >= 3); if ($lllabt)  { if ($lllabk{'confirm'})  { local ($lllaer) = &lllaes ($lllabx); &lllaeu($lllabx); &lllaet ($lllabx); &lllaca ($lllaer); } else  { &lllaca ($lllabx); } } else { &lllaca ($lllabx); } } sub lllaco { local($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\125\156\144\145\154\145\164\145" ) if ( $debug >= 3); if ($lllabt)  { if ($lllabk{'confirm'})  { local ($lllagl) = &lllagm ($lllabx); &lllaca ($lllagl); } else  { &lllaca ($lllabx); } } else { &lllaca ($lllabx); } } sub lllacp { local($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\101\160\160\162\157\166\145" ) if ( $debug >= 3); if (( $lllabt ) && (&lllagn( $lllabx ))) { if ($lllabk{'confirm'})  { local ($lllago) = &lllagp( $lllabx ); &lllaca( $lllago ); } else  { &lllaca( $lllabx ); } } else { &lllaca ( $lllabx ); } } sub lllacq { local($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\122\145\152\145\143\164" ) if ( $debug >= 3); if (( $lllabt ) && (&lllagn( $lllabx ))) { if ($lllabk{'confirm'})  { local ( $lllaer ) = &lllaes( $lllabx ); &lllagq( $lllabx ); &lllaca( $lllaer ); } else  { &lllaca( $lllabx ); } } else { &lllaca ( $lllabx ); } } sub lllaci  { local($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\126\151\145\167\124\150\162\145\141\144" ) if ( $debug >= 3); local ($llladc) = &llladd( $lllabx ); print ("<title>$llladc</title>\n"); if ($config'button_bar_at_top) { &lllade($lllabx); print "\n\74\150\162\76\n"; } &llladf ($lllabx); print (&lllada("\110\145\141\144\145\162", $lllabx)); print ("\n\74\150\62\76\104\151\163\143\165\163\163\151\157\156\40\101\162\145\141\163\74\57\150\62\76\n"); &llladr($lllabx, 1, "\124\150\162\145\141\144"); print (&lllada("\106\157\157\164\145\162", $lllabx)); if ((($config'button_bar_at_bottom == 0)  && ($config'button_bar_at_top == 0)) || ($config'button_bar_at_bottom)) {			        print "\n\74\150\162\76\n"; &lllade($lllabx); } &llladt($lllabx); &lllads($lllabx); &llladu(); exit; } sub lllacr { local ($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\120\165\162\147\145" ) if ( $debug >= 3); local($lllagr) = &lllacx( "", $lllabx ); $lllagr = $lllabz if (!$lllabx); if ($lllabt)  { &llladf ($lllabx); &lllaeu($lllabx); &lllags ($lllagr, 0); if ($lllagt) { $lllabd  = "\120\162\157\142\154\145\155\163\40\167\145\162\145\40\145\156\143\157\165\156\164\145\162\145\144\40\167\150\151\154\145\40\160\165\162\147\151\156\147\n"; $lllabd .= "\164\150\145\40\146\157\154\154\157\167\151\156\147\40\155\145\163\163\141\147\145\163\56\40\40\102\145\143\141\165\163\145\40\157\146\40\164\150\151\163\54\n"; $lllabd .= "\163\157\155\145\40\157\162\40\141\154\154\40\157\146\40\164\150\145\40\155\145\163\163\141\147\145\163\40\155\141\171\40\156\157\164\40\150\141\166\145\40\142\145\145\156\n"; $lllabd .= "\144\145\154\145\164\145\144\56"; &lllacy(NULL, NULL); } if ($lllabk{'confirm'})  { &lllaca ($lllabx); } }                else  { &lllaca( $lllabx ); } exit; } sub lllags  { local ($lllagu, $lllagv) = @_; if ($debug >= 3) { &debug_print ( "\105\156\164\145\162\151\156\147\40\160\165\162\147\145\164\162\145\145"); &debug_print ( "  Path: $lllagu"); &debug_print ( "  Deleting: $lllagv"); } local ($lllagw) = $lllagu; $lllagw =~ s/^$lllabz\/?//; local(@lllagx)= (); local($d) = ""; local($lllagy) = 0; local($lllagz); local($lllaha) = &llladd ( $lllagw ); local($lllahb) = &llladk( $lllagw ); local($lllahc) = "<em><strong>$lllaha</strong> by $lllahb</em><br>\n"; local(*THREADDIR); if (!$lllagv && ($lllagu =~ m/.*\.d$/i))  { $lllagv = 1; } if (opendir (THREADDIR, $lllagu))  { (@lllagx) = readdir (THREADDIR); closedir (THREADDIR); for $d (@lllagx)  { if (($d ne "\56") && ($d ne "..")) { if (-d "$lllagu/$d")  { &lllags ("$lllagu/$d", $lllagv); } elsif ($lllagv && $lllabk{'confirm'})  { $lllahd = unlink ("$lllagu/$d"); if (!($lllahd))  { $lllaeg = $!; &debug_print("Could not delete file $lllagu/$d: $lllaeg"); $lllagz .= "<li>Could not delete file $lllagu/$d: $lllaeg<br>"; $lllagy  = 1; } } } } if ($lllagv)  { if ($lllabk{'confirm'}) { $lllahe = rmdir ("$lllagu"); if (!($lllahe))  { $lllaeg = $!; &debug_print("Could not delete directory $lllagu: $lllaeg"); $lllagz .= "<li>Could not delete directory $lllagu: $lllaeg<br>"; $lllagy = 1; } if ($lllagy) { $lllagt .= "Errors deleting message: $lllahc\n"; $lllagt .= "\74\165\154\76\n"; $lllagt .= $lllagz; $lllagt .= "\74\57\165\154\76\n"; } } else { print $lllahc;  } } } else  { print("Unable to open directory $lllagu for deleting."); &debug_print("ERROR: $!"); }                         } sub lllacs { local ($lllabx) = @_; local ($lllahf); &debug_print ( "\105\156\164\145\162\151\156\147\40\104\145\154\117\154\144" ) if ( $debug >= 3); if ($lllabt)  {            &lllaeu($lllabx); if ((defined $lllabk{'age'}) && ($lllabk{'age'} >= 0)) { &llladf ($lllabx); $lllahf = &lllahg ($lllabx); if ($lllabk{'confirm'})  {                                if ($lllahf)  { &lllaca (&lllaes ($lllabx)); }                                                                else  { &lllaca ($lllabx); } } } else  { &lllahh ($lllabx); } } else  { &lllaca ($lllabx); } exit; } sub lllahh { local ($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\144\145\154\157\154\144\146\157\162\155" ) if ( $debug >= 3); local ($lllahi) = &lllahj(); print "\74\124\111\124\114\105\76\40\104\145\154\145\164\145\40\117\154\144\40\115\145\163\163\141\147\145\163\40\74\57\124\111\124\114\105\76\n"; print "\74\150\61\76\104\145\154\145\164\145\40\117\154\144\40\115\145\163\163\141\147\145\163\74\57\150\61\76\n"; print "<form action = \"$sn/delold/$lllabx\">\n"; print "$lllahi\n"; print "\74\163\164\162\157\156\147\76\104\145\154\145\164\145\40\155\145\163\163\141\147\145\163\40\147\162\145\141\164\145\162\40\164\150\141\156\40\74\57\163\164\162\157\156\147\76\n"; print "<input name=\"age\" size=5><strong> days old</strong><p>\n"; print "<input type=\"submit\" value=\"Proceed\">\n"; print "\74\57\146\157\162\155\76\n"; } sub lllahg  { local ($lllabx) = @_; if ($debug >= 3) { &debug_print ( "\105\156\164\145\162\151\156\147\40\144\145\154\157\154\144\164\162\145\145"); &debug_print ( "  Path: $lllabx"); } local(@lllagx)= (); local($d) = ""; local($lllahk); local($lllahl); local($lllaha) = &llladd( $lllabx ); local($lllahb) = &llladk( $lllabx); local($lllahc) = "<em><strong>$lllaha</strong> by $lllahb</em><br>\n"; local($lllagv) = 1; local(*THREADDIR); local($lllagr); if ($lllabx) { $lllagr = "$lllabz/$lllabx"; } else { $lllagr = $lllabz if !$lllabx; } if (&lllahm( $lllabx )) { return (1); } if (opendir (THREADDIR, $lllagr))  { (@lllagx) = readdir (THREADDIR); closedir (THREADDIR); for $d (@lllagx)  { if ((-d "$lllagr/$d") && ($d ne ".") && ($d ne ".."))  { $lllahk = &lllahg ("$lllabx/$d"); $lllagv = 0 if !$lllahk; } } $lllahl = int (-C "$lllagr/Title"); if ($lllagv && ($lllahl >= $lllabk{'age'}) && (&lllacf ($lllabx) == $lllaaf)) { if ($lllabk{'confirm'}) { &lllaet ($lllabx); } else { print $lllahc; } } else  { $lllagv = 0; } } else  { $lllagv = 0; } return($lllagv); } sub lllacb  { local ($lllabx, $lllahn) = @_; &debug_print( "\105\156\164\145\162\151\156\147\40\125\163\145\162\156\141\155\145\106\157\162\155" )  if ( $debug >= 3 ); local ($lllaho) = &lllada ("\115\163\147\150\144\162", &llladb ($lllabx)); &debug_print( "Message Header: $lllaho" ) if ( $debug >= 3 ); local ($lllace) = &lllacf ($lllabx); &debug_print( "Message Header: $lllaho" ) if ( $debug >= 3 ); local ($lllahp) = $lllabk{'lastread'} || 0; local ($lllahq); $lllahq  = "\120\154\145\141\163\145\40\145\156\164\145\162\40\171\157\165\162\40\145\155\141\151\154\40\141\144\144\162\145\163\163\54\40\162\145\141\154\40\156\141\155\145\54\n"; $lllahq .= "\157\162\40\141\156\40\141\154\151\141\163\56\n"; if ($lllahp < 0) { $lllahq  = "You entered an invalid $lllahr in\n"; $lllahq .= "\164\150\145\40\114\141\163\164\40\114\157\147\151\156\40\146\151\145\154\144\56\74\142\162\76\n"; $lllahq .= "\120\154\145\141\163\145\40\145\156\164\145\162\40\141\40\166\141\154\151\144\40\144\141\164\145\40\146\157\162\40\171\157\165\162\40\154\141\163\164\40\154\157\147\151\156\56"; } local ($lllahs); $lllahp = 0 if ($lllahp < 0); $lllaht = &lllahu() - ($lllaai * $lllahp); $lllahs = &llladm ($lllaht); $lllahn = "\164\150\162\145\141\144\166\151\145\167" unless $lllahn; &debug_print( "Delaying Action: $lllahn" ) if ( $debug >= 3 ); local ($lllahv) = ""; local ($lllahw) = &lllahx();            if ($lllabw eq "\160\157\163\164")  { if ($lllace == $lllaah)  { $lllahv = &lllahy(); } else  { $lllahv = &lllahz(); } }                 elsif ($lllabw eq "\165\160\144\141\164\145")  { if ($lllace == $lllaaf)  { $lllahv = &lllahz(); } else  { $lllahv = &lllahy(); }; }; local ($lllaia) = $lllabk{'depth'} || $lllaat ; local ($lllaib) = &lllael ($lllabm); $lllaic = $lllaid = $lllaie = ""; if ($lllacc)  { if ($lllabk{'p2'} ne "\154\157\147\157\165\164")  { $lllaic  = "\74\160\76\74\164\162\76\n"; $lllaic .= "\74\164\144\40\141\154\151\147\156\75\162\151\147\150\164\76\74\163\164\162\157\156\147\76\120\141\163\163\167\157\162\144\72\74\57\163\164\162\157\156\147\76\74\57\164\144\76\n"; $lllaic .= "<td><input type=\"password\" name=\"p1\"></td>\n"; $lllaic .= "\74\57\164\162\76";  $lllaif  = "<input type=\"hidden\" name=\"p2\" value=\"$lllabk{'p2'}\">\n"; $lllaid  = "\74\160\76\74\164\162\76\n"; $lllaid .= "\74\164\144\40\143\157\154\163\160\141\156\75\62\76\74\150\162\76\74\57\164\144\76\n"; $lllaid .= "\74\57\164\162\76\n"; $lllaid .= "\74\164\162\76\n"; $lllaid .= "\74\164\144\40\141\154\151\147\156\75\162\151\147\150\164\76\74\163\164\162\157\156\147\76\116\145\167\40\120\141\163\163\167\157\162\144\72\74\57\163\164\162\157\156\147\76\74\57\164\144\76\n"; $lllaid .= "<td><input type=\"password\" name=\"p3\"></td>\n"; $lllaid .= "\74\57\164\162\76\n"; $lllaie  = "\74\160\76\74\164\162\76\n"; $lllaie .= "\74\164\144\40\141\154\151\147\156\75\162\151\147\150\164\76\74\163\164\162\157\156\147\76\103\157\156\146\151\162\155\72\74\57\163\164\162\157\156\147\76\74\57\164\144\76"; $lllaie .= "<td><input type=\"password\" name=\"p4\"></td>"; $lllaie .= "\74\57\164\162\76"; if ($lllaig) {				 $lllahq = $lllaig; } else  { $lllahq = "\105\156\164\145\162\40\164\150\145\40\141\144\155\151\156\151\163\164\162\141\164\157\162\40\160\141\163\163\167\157\162\144\56"; } } else  { $lllaib = ""; } } print "\74\164\151\164\154\145\76\40\156\145\164\56\124\150\162\145\141\144\40\114\157\147\151\156\40\74\57\164\151\164\154\145\76\n"; print "$lllaho\n"; print "\74\150\61\76\156\145\164\56\124\150\162\145\141\144\40\61\56\62\142\40\114\157\147\151\156\74\57\150\61\76\n"; print "\74\150\162\76\n"; print "<h4>$lllahq<h4>\n"; print "\74\150\162\76\n"; print "<form action = \"$sn/$lllahn/$lllabx\" method = \"POST\">\n"; print "\74\164\141\142\154\145\76\n"; print "\74\160\76\74\164\162\76\n"; print "\74\164\144\40\141\154\151\147\156\75\162\151\147\150\164\76\74\163\164\162\157\156\147\76\114\157\147\151\156\40\116\141\155\145\72\74\57\163\164\162\157\156\147\76\74\57\164\144\76"; print "<td><input name=\"user\" value=\"$lllaib\"></td>"; print "\74\57\164\162\76\n"; print "\74\160\76\74\164\162\76\n"; print "\74\164\144\40\141\154\151\147\156\75\162\151\147\150\164\76\74\163\164\162\157\156\147\76\115\141\170\151\155\165\155\40\104\151\163\160\154\141\171\40\104\145\160\164\150\72\74\57\163\164\162\157\156\147\76\74\57\164\144\76"; print "<td><input name=\"depth\" value=$lllaia></td>"; print "\74\57\164\162\76\n"; print "\74\160\76\74\164\162\76"; print "\74\164\144\40\141\154\151\147\156\75\162\151\147\150\164\76\74\163\164\162\157\156\147\76\114\141\163\164\40\114\157\147\151\156\72\74\57\163\164\162\157\156\147\76\74\57\164\144\76"; print "<td><input name=\"lastdate\" value=$lllahs></td>"; print "\74\57\164\162\76\n"; print "$lllaic\n"; print "$lllaif\n"; print "$lllaid\n"; print "$lllaie\n"; print "\74\57\164\141\142\154\145\76\n"; print "\74\150\162\76\n"; print "$lllahv\n"; print "$lllahw\n"; print "<p><input type=\"submit\" value=\"Login\">\n"; print "\74\57\146\157\162\155\76\n"; exit; } sub lllaih  { local ($lllabx, $lllahn) = @_; &debug_print( "\105\156\164\145\162\151\156\147\40\107\162\160\120\141\163\163\167\144\106\157\162\155" )  if ( $debug >= 3 ); local ($lllaho) = &lllada ("\115\163\147\150\144\162", &llladb ($lllabx)); &debug_print( "Message Header: $lllaho" ) if ( $debug >= 3 ); local ($lllace) = &lllacf ($lllabx); &debug_print( "Message Header: $lllaho" ) if ( $debug >= 3 ); local ($lllahp) = $lllabk{'lastread'} || 0; $lllahn = "\164\150\162\145\141\144\166\151\145\167" unless $lllahn; &debug_print( "Delaying Action: $lllahn" ) if ( $debug >= 3 ); local ($lllahv) = ""; local ($lllahw) = &lllahx();            if ($lllabw eq "\160\157\163\164")  { if ($lllace == $lllaah)  { $lllahv = &lllahy(); } else  { $lllahv = &lllahz(); } }                 elsif ($lllabw eq "\165\160\144\141\164\145")  { if ($lllace == $lllaaf)  { $lllahv = &lllahz(); } else  { $lllahv = &lllahy(); }; }; $lllaic  = "\74\160\76\74\164\162\76\n"; $lllaic .= "\74\164\144\40\141\154\151\147\156\75\162\151\147\150\164\76\74\163\164\162\157\156\147\76\107\162\157\165\160\40\120\141\163\163\167\157\162\144\72\74\57\163\164\162\157\156\147\76\74\57\164\144\76\n"; $lllaic .= "<td><input type=\"password\" name=\"GrpPasswd\"></td>\n"; $lllaic .= "\74\57\164\162\76";  if ($lllaig) { $lllahq = $lllaig; } else  { $lllahq  = "\124\150\151\163\40\144\151\163\143\165\163\163\151\157\156\40\147\162\157\165\160\40\151\163\40\160\141\163\163\167\157\162\144\40\160\162\157\164\145\143\164\145\144\56\n"; $lllahq .= "\120\154\145\141\163\145\40\145\156\164\145\162\40\164\150\145\40\160\141\163\163\167\157\162\144\40\146\157\162\40\164\150\151\163\40\147\162\157\165\160\56\n"; } local ($lllahi) = &lllahj(); print "\74\164\151\164\154\145\76\40\156\145\164\56\124\150\162\145\141\144\40\114\157\147\151\156\40\74\57\164\151\164\154\145\76\n"; print "$lllaho\n"; print "\74\150\61\76\156\145\164\56\124\150\162\145\141\144\40\61\56\62\142\40\114\157\147\151\156\74\57\150\61\76\n"; print "\74\150\162\76\n"; print "<h4>$lllahq<h4>\n"; print "\74\150\162\76\n"; print "<form action = \"$sn/$lllahn/$lllabx\" method = \"POST\">\n"; print "$lllahi\n"; print "$lllaic\n"; print "\74\57\164\141\142\154\145\76\n"; print "\74\150\162\76\n"; print "$lllahv\n"; print "$lllahw\n"; print "<p><input type=submit value=\"Submit Password\">\n"; print "\74\57\146\157\162\155\76\n"; exit; } sub lllack  { local($lllabx) = @_; local($lllagd); &debug_print ( "\105\156\164\145\162\151\156\147\40\105\144\151\164\115\145\163\163\141\147\145\106\157\162\155" ) if ( $debug >= 3); if ($lllabw eq "\160\157\163\164\146\157\162\155")  { &debug_print ("\101\144\144\151\156\147\40\141\40\156\145\167\40\155\145\163\163\141\147\145\56") if ($debug >= 1); $lllagd = &lllael ($lllabm); $lllaii= "$sn/post/$lllabx"; $lllaij = &llladd( $lllabx ); $lllaik = "Posting Response to \"$lllaij\""; } else { $lllaii = "$sn/update/$lllabx"; $llladc = &llladd( $lllabx ); $lllagd = &lllael (&llladk( $lllabx)); $lllagf = &llladp( $lllabx ); $lllagf =~ s/\r//g; $lllaik = "Editting \"$llladc\""; } local($lllahi) = &lllahj(); print "<TITLE> $lllaik </TITLE>\n"; $llladg = &lllada ("\115\163\147\150\144\162", &llladb ($lllabx)); if ($llladg !~ /^\s*$/) { print $llladg; } print "\74\110\122\76\n"; print "<form action = \"$lllaii\" method = \"POST\">\n"; print "$lllahi\n"; print "<input type=\"hidden\" name=\"type\" value=\"message\">\n"; print "\74\143\145\156\164\145\162\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\62\76\n"; print "$lllaik\n"; print "\74\57\146\157\156\164\76\n"; print "\74\142\162\40\143\154\145\141\162\75\141\154\154\76\n"; print "\74\57\143\145\156\164\145\162\76\n"; print "\74\110\122\76\n"; print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\115\145\163\163\141\147\145\40\124\151\164\154\145\57\123\165\142\152\145\143\164\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\123\145\164\40\164\150\145\40\155\145\163\163\141\147\145\47\163\40\164\151\164\154\145\40\157\162\40\163\165\142\152\145\143\164\40\150\145\162\145\56\n"; print "\124\150\151\163\40\164\151\164\154\145\40\167\151\154\154\40\142\145\40\144\151\163\160\154\141\171\145\144\40\141\164\40\164\150\145\40\164\157\160\40\157\146\40\164\150\145\40\155\145\163\163\141\147\145\56\n"; print "\111\164\40\167\151\154\154\40\141\154\163\157\40\142\145\40\165\163\145\144\40\141\163\40\164\150\145\40\163\165\142\152\145\143\164\40\146\157\162\40\164\150\145\n"; print "\155\145\163\163\141\147\145\40\151\156\40\164\150\145\40\144\151\163\143\165\163\163\151\157\156\40\164\150\162\145\141\144\56\n"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76"; print "<em>Message Title:   </em> <input name=\"title\" value=\"$llladc\" size=40>\n"; print "\74\57\160\162\145\76\n"; print "\74\110\122\76\n"; if ( $config'usernameOverride ) { print "\74\160\162\145\76\n"; print "<em>Message Author:   </em> $lllagd"; print "\74\57\160\162\145\76\n"; } else { print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\115\145\163\163\141\147\145\40\101\165\164\150\157\162\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\123\145\164\40\164\150\145\40\155\145\163\163\141\147\145\47\163\40\141\165\164\150\157\162\40\150\145\162\145\56\n"; print "\124\150\151\163\40\167\151\154\154\40\142\145\40\144\151\163\160\154\141\171\145\144\40\141\154\157\156\147\40\167\151\164\150\40\164\150\145\40\155\145\163\163\141\147\145\40\164\157\n"; print "\151\144\145\156\164\151\146\171\40\167\150\157\40\160\157\163\164\145\144\40\164\150\145\40\155\145\163\163\141\147\145\56\n"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76\n"; print "<em>Message Author:   </em> <input name=\"from\" value=\"$lllagd\" size=40>\n"; print "\74\57\160\162\145\76\n"; } print "\74\110\122\76\n"; print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\115\145\163\163\141\147\145\40\102\157\144\171\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\105\156\164\145\162\40\164\150\145\40\155\145\163\163\141\147\145\40\164\145\170\164\40\150\145\162\145\56\n"; print "\124\150\151\163\40\167\151\154\154\40\142\145\40\165\163\145\144\40\141\163\40\164\150\145\40\164\145\170\164\40\157\146\40\164\150\145\40\155\145\163\163\141\147\145\40\142\145\151\156\147\40\160\157\163\164\145\144\56\n"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76"; print "      <textarea name=\"body\" rows=10 cols=60 wrap=\"virtual\">$lllagf</textarea><p>\n"; print "\74\57\160\162\145\76\n"; print "\74\110\122\76\n"; print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\106\157\162\155\141\164\164\151\156\147\40\117\160\164\151\157\156\163\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\123\145\164\40\164\150\145\40\144\145\163\151\162\145\144\40\146\157\162\155\141\164\164\151\156\147\40\157\160\164\151\157\156\163\40\150\145\162\145\56\n"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76"; print "      <input type=\"radio\" name=\"format\" value=\"normal\" checked> "; print "\106\157\162\155\141\164\40\164\150\145\40\164\145\170\164\40\156\151\143\145\154\171\40\146\157\162\40\155\145\56\n"; print "      <input type=\"radio\" name=\"format\" value=\"HTML\"> "; print "\124\150\145\40\155\145\163\163\141\147\145\40\151\163\40\141\154\162\145\141\144\171\40\151\156\40\110\124\115\114\40\55\55\40\104\157\156\47\164\40\141\144\144\40\141\156\171\40\146\157\162\155\141\164\164\151\156\147\56\n"; print "      <input type=\"radio\" name=\"format\" value=\"pre\"> "; print "\106\157\162\155\141\164\40\164\150\145\40\155\145\163\163\141\147\145\40\145\170\141\143\164\154\171\40\141\163\40\151\164\40\151\163\40\163\150\157\167\156\56\n"; print "\74\57\160\162\145\76\n"; print "\74\110\122\76\n"; if ( ( $config'user_notification ) && ($lllabw eq "\160\157\163\164\146\157\162\155") ) { if(($config'secure_subscription && $lllabt) || !$config'secure_subscription){ print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\115\141\151\154\40\116\157\164\151\146\151\143\141\164\151\157\156\40\117\160\164\151\157\156\163\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\102\171\40\163\145\154\145\143\164\151\156\147\40\157\156\145\40\157\146\40\164\150\145\40\146\157\154\154\157\167\151\156\147\40\157\160\164\151\157\156\163\54\40\171\157\165\40\143\141\156\n"; print "\143\150\157\157\163\145\40\164\157\40\162\145\143\151\145\166\145\40\145\55\155\141\151\154\40\156\157\164\151\146\151\143\141\164\151\157\156\40\167\150\145\156\40\160\145\157\160\154\145\40\162\145\163\160\157\156\144\n"; print "\164\157\40\171\157\165\162\40\155\145\163\163\141\147\145\40\157\162\40\164\157\40\141\156\171\40\155\145\163\163\141\147\145\40\165\156\144\145\162\156\145\141\164\150\40\171\157\165\162\40\155\145\163\163\141\147\145\56\n"; print "\n"; print "\123\145\164\40\164\150\145\40\144\145\163\151\162\145\144\40\155\141\151\154\40\156\157\164\151\146\151\143\141\164\151\157\156\40\157\160\164\151\157\156\163\40\150\145\162\145\56\n"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76"; print "      <input type=\"radio\" name=\"subscribe\" value = \"none\" checked> "; print "\120\154\145\141\163\145\40\144\157\156\47\164\40\163\145\156\144\40\155\145\40\141\156\171\40\156\157\164\151\143\145\163\40\141\142\157\165\164\40\164\150\151\163\40\155\145\163\163\141\147\145\56\n"; print "      <input type=\"radio\" name=\"subscribe\" value=\"direct\"> "; print "\120\154\145\141\163\145\40\163\145\156\144\40\155\145\40\156\157\164\151\143\145\163\40\167\150\145\156\40\160\145\157\160\154\145\40\162\145\163\160\157\156\144\40\144\151\162\145\143\164\154\171\40\164\157\40\164\150\151\163\40\155\145\163\163\141\147\145\56\n"; print "      <input type=\"radio\" name=\"subscribe\" value=\"thread\"> "; print "\120\154\145\141\163\145\40\163\145\156\144\40\155\145\40\156\157\164\151\143\145\163\40\167\150\145\156\40\160\145\157\160\154\145\40\160\157\163\164\40\141\40\156\145\167\40\155\145\163\163\141\147\145\40\165\156\144\145\162\40\164\150\151\163\40\155\145\163\163\141\147\145\56\n"; print "\74\142\162\76\n"; print "\40\40\40\40\40\40\115\171\40\145\155\141\151\154\40\141\144\144\162\145\163\163\40\151\163\72\40"; print "<input type=\"text\" name=\"email\" value=\"$lllabk{'email'}\">\n"; print "\74\110\122\76\n"; } } print "<input type=\"checkbox\" name=\"confirm\"><strong> Post without previewing</strong><p>\n"; print "<input type=submit value=\"Post this message\"> <input type=reset value=\"Clear Form\">\n"; print "\74\57\146\157\162\155\76\n"; exit; } sub lllacj { local($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\105\144\151\164\107\162\157\165\160\106\157\162\155" ) if ( $debug >= 3); local($lllace) = &lllacf ($lllabx);       local ($lllail, $llladc, $lllaim, $lllain, $lllaho, $lllaio); if ($lllabw eq "\160\157\163\164\146\157\162\155")  { &debug_print ("\101\144\144\151\156\147\40\141\40\156\145\167\40\147\162\157\165\160\56") if ($debug >= 1); local ($llladv) = &lllaed($lllabx) + 1; local ($lllaip) = "$lllaiq/logo.gif"; $lllair = "\156\145\167"; $lllaik = "\116\145\167\40\107\162\157\165\160\40\103\157\156\146\151\147\165\162\141\164\151\157\156"; $llladc = "\50\120\165\164\40\107\162\157\165\160\40\114\151\163\164\151\156\147\40\124\151\164\154\145\40\110\145\162\145\51"; $lllaim  = "\74\150\61\76\50\120\165\164\40\107\162\157\165\160\40\110\157\155\145\40\120\141\147\145\40\124\151\164\154\145\40\110\145\162\145\51\74\57\150\61\76\n"; $lllaim .= "<img src=\"$lllaip\"><p><hr>"; $lllaho = "<img src=\"$lllaip\">"; $lllain = ""; $lllail = "\160\157\163\164"; }                                                    else  { &debug_print ("\105\144\151\164\151\156\147\40\141\156\40\145\170\151\163\164\151\156\147\40\147\162\157\165\160\56") if ($debug >= 1); $lllair = "\157\154\144"; $lllaik = "\107\162\157\165\160\40\103\157\156\146\151\147\165\162\141\164\151\157\156\40\125\160\144\141\164\145"; $llladc = &lllael (&llladd( $lllabx )); $lllaim = &lllada ("\110\145\141\144\145\162", $lllabx); $lllaim =~ s/\r//g; $lllaho = &lllada ("\115\163\147\150\144\162", $lllabx); $lllaho =~ s/\r//g; $lllain = &lllada ("\106\157\157\164\145\162", $lllabx); $lllain =~ s/\r//g; $lllaio = ""; $lllail = "\165\160\144\141\164\145"; } local ($lllahi) = &lllahj(); print "<TITLE> $lllaik </TITLE>\n"; print "$lllaim"; print "\74\110\122\76\n"; print "<form action = \"$sn/$lllail/$lllabx\" method = \"POST\">\n"; print "$lllahi\n"; print "\74\143\145\156\164\145\162\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\62\76\n"; print "$lllaik\n"; print "\74\57\146\157\156\164\76\n"; print "\74\142\162\40\143\154\145\141\162\75\141\154\154\76\n"; print "\74\57\143\145\156\164\145\162\76\n"; print "\74\110\122\76\n"; print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\107\162\157\165\160\40\124\151\164\154\145\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\123\145\164\40\164\150\145\40\147\162\157\165\160\40\164\151\164\154\145\40\150\145\162\145\56\n"; print "\124\150\151\163\40\164\151\164\154\145\40\167\151\154\154\40\142\145\40\144\151\163\160\154\141\171\145\144\40\141\164\40\164\150\145\40\164\157\160\40\157\146\40\164\150\145\40\147\162\157\165\160\47\163\n"; print "\160\141\147\145\56\40\40\111\164\40\167\151\154\154\40\141\154\163\157\40\142\145\40\165\163\145\144\40\141\163\40\164\150\145\40\163\165\142\152\145\143\164\40\146\157\162\40\164\150\145\40\164\157\160\40\154\145\166\145\154\n"; print "\155\145\163\163\141\147\145\40\151\156\40\164\150\145\40\144\151\163\143\165\163\163\151\157\156\40\164\150\162\145\141\144\56\n"; print "\74\57\144\154\76\n"; print "<pre>  <em>Group Title:   </em> <input name=\"title\" value=\"$llladc\" size=40>\n"; print "\74\57\160\162\145\76\n"; print "\74\110\122\76\n"; print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\107\162\157\165\160\40\110\145\141\144\145\162\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\123\145\164\40\164\150\145\40\147\162\157\165\160\40\150\145\141\144\145\162\40\150\145\162\145\56\n"; print "\124\150\151\163\40\150\145\141\144\145\162\40\167\151\154\154\40\142\145\40\144\151\163\160\154\141\171\145\144\40\141\164\40\164\150\145\40\164\157\160\40\157\146\40\164\150\145\40\147\162\157\165\160\47\163\n"; print "\160\141\147\145\56\40\40\124\150\151\163\40\163\150\157\165\154\144\40\142\145\40\165\163\145\144\40\164\157\40\144\145\163\143\162\151\142\145\40\164\150\145\40\163\165\142\152\145\143\164\40\155\141\164\164\145\162\n"; print "\157\146\40\164\150\145\40\147\162\157\165\160\56\40\111\164\40\143\141\156\40\141\154\163\157\40\142\145\40\165\163\145\144\40\164\157\40\160\165\164\40\151\155\141\147\145\163\40\141\164\40\164\150\145\40\164\157\160\n"; print "\157\146\40\164\150\145\40\147\162\157\165\160\40\160\141\147\145\163\56\n"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76\40\40\74\145\155\76\107\162\157\165\160\40\110\145\141\144\145\162\72\40\40\74\57\145\155\76\n"; print "      <textarea name=\"header\" rows=5 cols=60 wrap=\"virtual\">$lllaim</textarea><p>\n"; print "\74\57\160\162\145\76\n"; print "\74\110\122\76\n"; print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\107\162\157\165\160\40\106\157\157\164\145\162\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\123\145\164\40\164\150\145\40\147\162\157\165\160\40\146\157\157\164\145\162\40\150\145\162\145\56\n"; print "\124\150\151\163\40\146\157\157\164\145\162\40\167\151\154\154\40\142\145\40\144\151\163\160\154\141\171\145\144\40\141\164\40\164\150\145\40\142\157\164\164\157\155\40\157\146\40\164\150\145\40\147\162\157\165\160\47\163\n"; print "\160\141\147\145\56\40\111\164\40\143\141\156\40\141\154\163\157\40\142\145\40\165\163\145\144\40\164\157\40\160\165\164\40\155\145\163\163\141\147\145\163\40\157\162\40\151\155\141\147\145\163\40\141\164\40\164\150\145\40\142\157\164\164\157\155\n"; print "\157\146\40\164\150\145\40\147\162\157\165\160\40\160\141\147\145\163\56\n"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76\40\40\74\145\155\76\107\162\157\165\160\40\106\157\157\164\145\162\72\40\40\74\57\145\155\76\n"; print "      <textarea name=\"footer\" rows=5 cols=60 wrap=\"virtual\">$lllain</textarea><p>\n"; print "\74\57\160\162\145\76\n"; print "\74\110\122\76\n"; print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\115\145\163\163\141\147\145\40\110\145\141\144\145\162\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\123\145\164\40\164\150\145\40\155\145\163\163\141\147\145\40\150\145\141\144\145\162\40\150\145\162\145\56\n"; print "\124\150\151\163\40\155\145\163\163\141\147\145\40\167\151\154\154\40\142\145\40\144\151\163\160\154\141\171\145\144\40\141\164\40\164\150\145\40\164\157\160\40\157\146\40\145\141\143\150\40\144\151\163\143\165\163\163\151\157\156\40\164\150\162\145\141\144\n"; print "\167\151\164\150\151\156\40\164\150\145\40\147\162\157\165\160\56\40\40\124\150\151\163\40\143\141\156\40\142\145\40\165\163\145\144\40\164\157\40\160\162\157\166\151\144\145\40\141\40\163\164\141\156\144\141\162\144\40\154\157\157\153\40\164\150\162\157\165\147\157\165\164\n"; print "\164\150\145\40\155\145\163\163\141\147\145\163\40\157\146\40\141\40\147\162\157\165\160\56"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76\40\40\74\145\155\76\115\145\163\163\141\147\145\40\110\145\141\144\145\162\72\40\40\74\57\145\155\76\n"; print "      <textarea name=\"msghdr\" rows=5 cols=60 wrap=\"virtual\">$lllaho</textarea><p>\n"; print "\74\57\160\162\145\76\n"; if ($lllair eq "\156\145\167") { print "\74\110\122\76\n"; print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\107\162\157\165\160\40\124\171\160\145\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\123\145\164\40\164\150\145\40\164\171\160\145\40\157\146\40\147\162\157\165\160\40\150\145\162\145\56\n"; print "\107\162\157\165\160\163\40\143\141\156\40\145\151\164\150\145\162\40\143\157\156\164\141\151\156\40\155\145\163\163\141\147\145\163\40\157\162\40\163\165\142\55\147\162\157\165\160\163\56\n"; print "\125\163\145\162\163\40\143\141\156\40\157\156\154\171\40\160\157\163\164\40\164\157\40\147\162\157\165\160\163\40\157\146\40\155\145\163\163\141\147\145\163\56\40\40\117\156\154\171\40\164\150\145\n"; print "\141\144\155\151\156\151\163\164\162\141\164\157\162\40\143\141\156\40\160\157\163\164\40\164\157\40\147\162\157\165\160\163\40\157\146\40\147\162\157\165\160\163\56\n"; print "\124\150\151\163\40\166\141\154\165\145\40\143\141\156\40\156\157\164\40\142\145\40\143\150\141\156\147\145\144\40\141\146\164\145\162\40\164\150\145\40\147\162\157\165\160\40\151\163\40\143\162\145\141\164\145\144\56\n"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76\40\40\74\145\155\76\107\162\157\165\160\40\124\171\160\145\72\40\40\74\57\145\155\76\n"; print "      <input type=\"radio\" name=\"type\" value=\"group\" checked> Users will post messages to this group.\n"; print "      <input type=\"radio\" name=\"type\" value=\"area\"> This group will be the parent of sub-groups.\n"; print "\74\57\160\162\145\76\n"; } if ($config'moderation == 2) { if (-e &lllacx( "\115\157\144\145\162\141\164\145\144", $lllabx ) ) { $lllais = "\143\150\145\143\153\145\144"; } else { $lllait = "\143\150\145\143\153\145\144"; } print "\74\110\122\76\n"; print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\107\162\157\165\160\40\115\157\144\145\162\141\164\151\157\156\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\103\157\156\164\162\157\154\40\167\150\145\164\150\145\162\40\164\150\151\163\40\147\162\157\165\160\40\163\150\157\165\154\144\40\142\145\40\155\157\144\145\162\141\164\145\144\40\157\162\40\156\157\164\40\150\145\162\145\56\n"; print "\111\146\40\141\40\147\162\157\165\160\40\151\163\40\155\157\144\145\162\141\164\145\144\54\40\155\145\163\163\141\147\145\163\40\167\151\154\154\40\156\157\164\40\142\145\40\163\150\157\167\156\40\165\156\164\151\154\40\164\150\145\171\n"; print "\141\162\145\40\141\160\160\162\157\166\145\144\40\142\171\40\164\150\145\40\141\144\155\151\156\151\163\164\162\141\164\157\162\56\n"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76\40\40\74\145\155\76\107\162\157\165\160\40\115\157\144\145\162\141\164\151\157\156\72\40\40\74\57\145\155\76\n"; print "      <input type=\"radio\" name=\"moderation\" value=\"on\"  $lllais>  This group should be moderated.\n"; print "      <input type=\"radio\" name=\"moderation\" value=\"off\" $lllait> This group should not be moderated.\n"; print "\74\57\160\162\145\76\n"; } print "\74\110\122\76\n"; if (-e &lllacx( "\122\145\141\144\117\156\154\171", $lllabx ) ) { $lllais = "\143\150\145\143\153\145\144"; } else { $lllait = "\143\150\145\143\153\145\144"; } print "\74\110\122\76\n"; print "\74\144\154\76\n"; print "\74\144\164\76\n"; print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\122\145\141\144\40\117\156\154\171\40\107\162\157\165\160\163\72\74\57\146\157\156\164\76\n"; print "\74\160\76\n"; print "\74\144\144\76\n"; print "\103\157\156\164\162\157\154\40\167\150\145\164\150\145\162\40\157\162\40\156\157\164\40\165\163\145\162\163\40\50\157\164\150\145\162\40\164\150\141\156\40\167\145\142\155\141\163\164\145\162\51\40\143\141\156\40\160\157\163\164\40\164\157\40\164\150\151\163\40\147\162\157\165\160\56\n"; print "\74\57\144\154\76\n"; print "\74\160\162\145\76\40\40\74\145\155\76\122\145\141\144\40\117\156\154\171\72\40\40\74\57\145\155\76\n"; print "      <input type=\"radio\" name=\"read_only\" value=\"on\"  $lllais>  This group should be read only.\n"; print "      <input type=\"radio\" name=\"read_only\" value=\"off\" $lllait> Users should be able to post to this group.\n"; print "\74\57\160\162\145\76\n"; print (&lllaiu($lllabx)); print "\74\110\122\76\n"; if ($lllair eq "\156\145\167") { $lllaiv = "\103\162\145\141\164\145\40\164\150\151\163\40\107\162\157\165\160"; } else { $lllaiv = "\125\160\144\141\164\145\40\164\150\151\163\40\107\162\157\165\160"; } print "<input type=submit value=\"$lllaiv\">\n"; print "<input type=reset  value=\"Clear Values\">\n"; print "\74\57\146\157\162\155\76\n"; exit; } sub lllacm { local ($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\125\160\144\141\164\145" ) if ( $debug >= 3); if ($lllabt && $lllabk{'erase'})  { &debug_print ("\105\162\141\163\151\156\147\40\155\145\163\163\141\147\145\40\143\157\156\164\145\156\164\163\56") if ($debug >= 1); &lllaeu($lllabx); $lllabk{'title'} = "\115\145\163\163\141\147\145\40\145\162\141\163\145\144"; $lllabk{'body'} = "\124\150\151\163\40\155\145\163\163\141\147\145\40\150\141\163\40\142\145\145\156\40\145\162\141\163\145\144\40\142\171\40\164\150\145\40\141\144\155\151\156\151\163\164\162\141\164\157\162\56"; $lllabk{'from'} = $lllabm; } local($lllaeh, $lllaei, $lllaeg); $lllaeh = 1; if (&lllacf ($lllabx) == $lllaaf)  { &debug_print ("\125\160\144\141\164\151\156\147\40\164\150\145\40\101\165\164\150\157\162\56") if ($debug >= 2); ($lllaei, $lllaeg) =  &lllaek("\101\165\164\150\157\162", &lllael($lllabk{'from'}), "$lllabx"); $lllaeh = $lllaeh && $lllaei; &debug_print ("\125\160\144\141\164\151\156\147\40\164\150\145\40\115\145\163\163\141\147\145\40\102\157\144\171\56") if ($debug >= 2); ($lllaei, $lllaeg) =  &lllaek("\102\157\144\171", $lllabk{'body'}, "$lllabx"); $lllaeh = $lllaeh && $lllaei; }                elsif ((&lllacf ($lllabx) == $lllaag) || (&lllacf ($lllabx) == $lllaah)) { if ( $lllabk{'NewGrpPasswd'} ) { &lllaee( $lllabx, "\165\160\144\141\164\145" ); &lllaem( $lllabx, "\165\160\144\141\164\145" ); }		 &debug_print ( "\125\160\144\141\164\151\156\147\40\164\150\145\40\107\162\157\165\160\40\110\145\141\144\145\162\56" ) if ( $debug >= 2 ); ($lllaei, $lllaeg) =  &lllaek( "\110\145\141\144\145\162", $lllabk{'header'}, "$lllabx" ); $lllaeh = $lllaeh && $lllaei; &debug_print ( "\125\160\144\141\164\151\156\147\40\164\150\145\40\107\162\157\165\160\40\106\157\157\164\145\162\56" ) if ( $debug >= 2 ); ($lllaei, $lllaeg) =  &lllaek( "\106\157\157\164\145\162", $lllabk{'footer'}, "$lllabx" ); $lllaeh = $lllaeh && $lllaei; &debug_print ( "\125\160\144\141\164\151\156\147\40\164\150\145\40\107\162\157\165\160\40\115\145\163\163\141\147\145\40\110\145\141\144\145\162\56" ) if ( $debug >= 2 ); ($lllaei, $lllaeg) =  &lllaek( "\115\163\147\150\144\162", $lllabk{'msghdr'}, "$lllabx" ); $lllaeh = $lllaeh && $lllaei; &debug_print ( "\125\160\144\141\164\151\156\147\40\164\150\145\40\107\162\157\165\160\40\115\157\144\145\162\141\164\151\157\156\56" ) if ( $debug >= 2 ); if ( $lllabk{'moderation'} eq "\157\156" ) { &debug_print( "\115\157\144\145\162\141\164\151\157\156\40\164\165\162\156\145\144\40\157\156" ); &lllaek("\115\157\144\145\162\141\164\145\144", "", $lllabx ); } elsif ( -e &lllacx( "\115\157\144\145\162\141\164\145\144", $lllabx ) ) { &debug_print( "\115\157\144\145\162\141\164\151\157\156\40\164\165\162\156\145\144\40\157\146\146\56\56\56\102\154\141\163\164\151\156\147\40\157\154\144\40\146\151\154\145" ); unlink &lllacx( "\115\157\144\145\162\141\164\145\144", $lllabx ); } else { &debug_print( "\115\157\144\145\162\141\164\151\157\156\40\164\165\162\156\145\144\40\157\146\146\56\56\56" ); &debug_print(  &lllacx( "\115\157\144\145\162\141\164\145\144", $lllabx ) ); } &debug_print ( "\125\160\144\141\164\151\156\147\40\164\150\145\40\127\162\151\164\145\40\123\164\141\164\165\163\56" ) if ( $debug >= 2 ); if ( $lllabk{'read_only'} eq "\157\156" ) { &debug_print( "\122\145\141\144\40\117\156\154\171\40\164\165\162\156\145\144\40\157\156" ); &lllaek("\122\145\141\144\117\156\154\171", "", $lllabx ); } elsif ( -e &lllacx( "\122\145\141\144\117\156\154\171", $lllabx ) ) { &debug_print( "\122\145\141\144\117\156\154\171\40\164\165\162\156\145\144\40\157\146\146\56\56\56\102\154\141\163\164\151\156\147\40\157\154\144\40\146\151\154\145" ); unlink &lllacx( "\122\145\141\144\117\156\154\171", $lllabx ); } else { &debug_print( "\122\145\141\144\117\156\154\171\40\164\165\162\156\145\144\40\157\146\146\56\56\56" ); &debug_print(  &lllacx( "\122\145\141\144\117\156\154\171", $lllabx ) ); } } &debug_print ("\125\160\144\141\164\151\156\147\40\164\150\145\40\164\151\164\154\145\56") if ($debug >= 2); ($lllaei, $lllaeg) =  &lllaek("\124\151\164\154\145", &lllael ($lllabk{'title'}), "$lllabx"); $lllaeh = $lllaeh && $lllaei; if (!$lllaeh) { local ($lllaer) = &lllaes ($lllabx); $lllabd  = "\124\150\145\40\146\157\154\154\157\167\151\156\147\40\145\162\162\157\162\40\167\141\163\40\145\156\143\157\165\156\164\145\162\145\144\40\167\150\145\156\n"; $lllabd .= "attempting to update the text: $lllaeg.\n"; $lllabd .= "\123\157\155\145\40\157\162\40\141\154\154\40\157\146\40\164\150\145\40\164\145\170\164\40\155\141\171\40\156\157\164\40\150\141\166\145\40\142\145\145\156\n"; $lllabd .= "\155\157\144\151\146\151\145\144\56\n"; &lllacy($lllaer, "\155\145\163\163\141\147\145"); } &lllaeu($lllabx); &lllaca ($lllabx); } sub lllach  { local ($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\114\157\147\151\156\122\145\160\154\171" ) if ( $debug >= 3); &lllaci ( $lllabx ); exit; } sub lllaeb  { local($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\120\162\145\166\151\145\167" ) if ( $debug >= 3); local($lllahi) = &lllahj(); local($lllaiw) = &lllahz(); local($lllaep); local($lllaib); local($lllaix); if ($config'usernameOverride) { $lllaen = &lllabr(); } else { $lllaen = $lllabk{'from'}; } if ( $config'strictHTML ) { $lllaep = &lllaeq(&lllaej( $lllabk{'body'} ), $lllabk{'format'}); $lllaib = &lllael (&lllaej( $lllaen ) ); $lllaix = &lllael (&lllaej( $lllabk{'title'} )); } else { $lllaep = &lllaeq($lllabk{'body'}, $lllabk{'format'}); $lllaib = &lllael ( $lllaen ); $lllaix = &lllael ($lllabk{'title'}); } print "\74\124\111\124\114\105\76\40\120\162\145\166\151\145\167\40\115\145\163\163\141\147\145\40\74\57\124\111\124\114\105\76\n"; print "\74\163\164\162\157\156\147\76\74\145\155\76\124\150\145\40\146\157\154\154\157\167\151\156\147\40\151\163\40\141\40\160\162\145\166\151\145\167\40\157\146\40\171\157\165\162\40\155\145\163\163\141\147\145\56\40\40\111\146\40\171\157\165\40\167\141\156\164\40\n"; print "to change it, choose \"Go Back\" on your browser.  \n"; print "To post the message, press \"Post\".</em></strong><hr>\n"; print "<h1>$lllaix</h1>\n"; print "\74\150\162\76\n"; print "<strong>$lllaix</strong><br>\n"; print "<em>by $lllaib</em><p>\n"; print "$lllaep\n"; print "\74\150\162\76\n"; print "<form action = \"$sn/post/$lllabx\" method = \"POST\">\n"; print "<input type=\"hidden\" name=\"type\" value=\"message\">\n"; print "$lllahi\n"; print "$lllaiw\n"; print "<input type=\"hidden\" name=\"confirm\" value=1>\n"; print "<input type=\"submit\" value=\"Post\">\n"; print "\74\57\146\157\162\155\76\n"; exit; } sub llladz  { &debug_print ( "\105\156\164\145\162\151\156\147\40\105\170\160\154\127\141\162\156\151\156\147" ) if ( $debug >= 3); $lllabd  = "\131\157\165\162\40\155\145\163\163\141\147\145\40\143\157\156\164\141\151\156\163\40\145\170\160\154\145\164\151\166\145\163\40\141\156\144\40\143\141\156\156\157\164\40\142\145\n"; $lllabd .= "\163\165\142\155\151\164\164\145\144\40\165\156\164\151\154\40\164\150\145\171\40\141\162\145\40\162\145\155\157\166\145\144\56\n"; $lllagt   = "\120\154\145\141\163\145\40\147\157\40\142\141\143\153\40\164\157\40\171\157\165\162\40\160\157\163\164\151\156\147\40\141\156\144\40\162\145\166\151\163\145\40\171\157\165\162\40\155\145\163\163\141\147\145\56"; &lllacy( NULL,NULL ); } sub llladr  { local($lllabx, $lllaiy, $lllaiz) = @_; local(@lllaja); &debug_print ( "\105\156\164\145\162\151\156\147\40\115\145\163\163\141\147\145\123\164\165\142" ) if ( $debug >= 3); local($lllajb); local($lllajc) = 0; local(*MESSAGEDIR); $lllajb = $lllabx."\57" if $lllabx; print("$llladq\n"); if (&lllacf ($lllabx) != $lllaah)  {            @lllaja = &lllajd ($lllabx); foreach $lllaje (@lllaja)  {                      if (-e &lllacx("", $lllaje)) { if ($lllaiy <= $lllabk{'depth'}) { print ("\74\154\151\76"); if ($lllaiz eq "\124\150\162\145\141\144") { &lllajf ( $lllaje ); } elsif ($lllaiz eq "\115\145\163\163\141\147\145") { &lllajg ( $lllaje ); } else { &lllajf ( $lllaje ); } &llladr( $lllaje , ($lllaiy + 1), $lllaiz); } $lllajc++; } } } else { local (@lllaja) = &lllajd ($lllabx); for $c (@lllaja) { print ("\74\163\164\162\157\156\147\76\n"); print "\74\154\151\76\n"; print &lllajh( $c ); print "<a href=\"$sn/message/$c?$lllabg\">\n"; print &llladd( $c ); print ("\74\57\141\76\74\57\163\164\162\157\156\147\76\n"); } }; close(MESSAGEDIR); if ($lllaiy > $lllabk{'depth'})  { local ($lllaji) = "\162\145\160\154\151\145\163"; $lllaji = "\162\145\160\154\171" if $lllajc == 1; print "<li>$lllajc $lllaji" if ($lllajc > 0); }; print("$llladi\n");                                         $lllajc; } sub lllajf  { local ($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\146\157\162\155\141\164\137\164\150\162\145\141\144" ) if ( $debug >= 3); print( "\74\163\164\162\157\156\147\76\n"); print( "\74\154\151\76\n" ); print &lllajh( $lllabx ); print( "<a href=\"$sn/message/$lllabx?$lllabg\">");  print(&llladd( $lllabx )); print("\74\57\141\76\74\57\163\164\162\157\156\147\76\n"); } sub lllajg { local ($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\146\157\162\155\141\164\137\155\145\163\163\141\147\145" ) if ( $debug >= 3); local ($lllahp) = $lllabk{'lastread'}; local ($lllajj) = "\54\40" . &llladm (&llladn ($lllabx)); &debug_print("\107\157\164\40\164\151\155\145\163\164\162\151\156\147") if ($debug >=3); print "\74\163\164\162\157\156\147\76\n"; print &lllajh( $lllabx ); print "<a href=\"$sn/message/$lllabx?$lllabg\">"; print &llladd( $lllabx ); print "\74\57\141\76\n"; &debug_print("\107\157\164\40\155\145\163\163\141\147\145\164\151\164\154\145") if ($debug >=3); print "\74\57\163\164\162\157\156\147\76\40\74\145\155\76\142\171\40"; print(&llladk( "$lllabx" )); print("$lllajj</em>\n"); &debug_print("\107\157\164\40\101\165\164\150\157\162") if ($debug >=3); &debug_print("\103\150\145\143\153\151\156\147\40\151\146\40\151\164\47\163\40\156\145\167") if ($debug >=3); if (($lllajk <= &llladn ($lllabx)) && ($lllahp != 0)) { if ($lllajl) { print "<img src = \"$lllajl\" align=middle alt=\"NEW\">"; } else { print("\74\163\164\162\157\156\147\76\40\116\105\127\41\74\57\163\164\162\157\156\147\76"); } } if($lllabk{'detail'} eq "\146\165\154\154") { print("\74\142\162\76\74\142\162\76\n" . &llladp( "$lllabx" ) . "<p>"); } &debug_print("\105\170\151\164\151\156\147\40\146\157\162\155\141\164\137\155\145\163\163\141\147\145") if ($debug >= 3); } sub lllade { local($lllajm) = @_; local($lllace) = &lllacf ($lllajm); &debug_print ( "\105\156\164\145\162\151\156\147\40\142\165\164\164\157\156\137\142\141\162" ) if ( $debug >= 3); &lllajn ($lllajm); &lllajo ($lllajm); &lllajp ($lllajm); print ("\74\142\162\76\n"); &lllajq ($lllajm); &lllajr ($lllajm); &lllajs (); print ("\74\142\162\76\n"); &lllajt ($lllajm); &lllaju ($lllajm); print ("\74\142\162\76\n"); print "\74\160\76\74\163\164\162\157\156\147\76\127\145\142\155\141\163\164\145\162\40\106\165\156\143\164\151\157\156\163\74\57\163\164\162\157\156\147\76\74\57\160\76\n" if ($lllabt); if (&lllahm( $lllajm )) { &lllajv( $lllajm, 0 ); } else { &lllajw ($lllajm, 0); } &lllajx ($lllajm, 0); &lllajy ($lllajm, 0); print ("\74\142\162\76\n") if $lllabt; &lllajz ($lllajm); &lllaka ($lllajm); } sub llladf  { local($lllabx) = @_; &debug_print ( "\105\156\164\145\162\151\156\147\40\143\157\156\146\151\162\155\137\142\141\162" ) if ( $debug >= 3); if ($lllabt) { if (($lllabw eq "\144\145\154\145\164\145") && !$lllabk{'confirm'}) { print "\74\163\164\162\157\156\147\76\120\162\145\163\163\40\150\145\162\145\40\164\157\40\143\157\156\146\151\162\155\40\144\145\154\145\164\151\157\156\40\157\146\40\164\150\145\40\147\162\157\165\160\n"; print "\157\162\40\155\145\163\163\141\147\145\40\163\150\157\167\156\40\50\141\156\144\40\141\154\154\40\162\145\160\154\151\145\163\51\74\57\163\164\162\157\156\147\76\74\160\76"; &lllajw ($lllabx, 1); print "\74\150\162\76"; } elsif (($lllabw eq "\160\165\162\147\145") && !$lllabk{'confirm'}) { print "\74\163\164\162\157\156\147\76\120\162\145\163\163\40\150\145\162\145\40\164\157\40\143\157\156\146\151\162\155\40\160\165\162\147\145\40\157\146\n"; print "\164\150\145\40\154\151\163\164\145\144\40\151\164\145\155\163\74\57\163\164\162\157\156\147\76\74\160\76"; &lllajy ($lllabx, 1); print "\74\150\162\40\163\151\172\145\75\61\60\76"; } elsif (($lllabw eq "\144\145\154\157\154\144") && !$lllabk{'confirm'}) { print "\74\163\164\162\157\156\147\76\120\162\145\163\163\40\150\145\162\145\40\164\157\40\143\157\156\146\151\162\155\40\144\145\154\145\164\151\157\156\40\157\146\40\164\150\145\n"; print "\154\151\163\164\145\144\40\151\164\145\155\163\74\57\163\164\162\157\156\147\76\74\160\76"; &lllajx ($lllabx, 1); print "\74\150\162\40\163\151\172\145\75\61\60\76"; } elsif (&lllahm( $lllabx )) { print "\74\150\61\76\127\141\162\156\151\156\147\72\40\124\150\151\163\40\151\163\40\141\40\144\145\154\145\164\145\144\40\155\145\163\163\141\147\145\74\57\150\61\76\n"; print "\116\157\162\155\141\154\40\165\163\145\162\163\40\167\151\154\154\40\156\157\164\40\163\145\145\40\164\150\151\163\40\155\145\163\163\141\147\145\40\157\162\40\141\156\171\n"; print "\157\146\40\151\164\163\40\162\145\163\160\157\156\163\145\163\56\40\40\125\163\145\40\164\150\145\40\165\156\144\145\154\145\164\145\40\142\165\164\164\157\156\40\164\157\n"; print "\162\145\163\164\157\162\145\40\164\150\151\163\40\155\145\163\163\141\147\145\56\40\40\125\163\145\40\164\150\145\40\160\165\162\147\145\40\142\165\164\164\157\156\40\164\157\n"; print "\160\145\162\155\141\156\145\156\164\154\171\40\162\145\155\157\166\145\40\164\150\151\163\40\155\145\163\163\141\147\145\40\141\156\144\40\151\164\163\40\162\145\163\160\157\156\163\145\163\56\n"; print "\74\150\162\76"; } elsif (&lllakb( $lllabx )) { print "\74\150\61\76\127\141\162\156\151\156\147\72\40\124\150\151\163\40\155\145\163\163\141\147\145\40\151\163\40\160\141\162\164\40\157\146\40\141\40\144\145\154\145\164\145\144\40\164\150\162\145\141\144\74\57\150\61\76\n"; print "\116\157\162\155\141\154\40\165\163\145\162\163\40\167\151\154\154\40\156\157\164\40\163\145\145\40\164\150\151\163\40\155\145\163\163\141\147\145\40\157\162\40\141\156\171\n"; print "\157\146\40\151\164\163\40\162\145\163\160\157\156\163\145\163\56\40\40\131\157\165\40\155\165\163\164\40\165\156\144\145\154\145\164\145\40\164\150\145\40\144\145\154\145\164\145\144\n"; print "\155\145\163\163\141\147\145\40\151\156\40\157\162\144\145\162\40\164\157\40\162\145\163\164\157\162\145\40\164\150\151\163\40\164\150\162\145\141\144\56\n"; print "\74\150\162\76"; } elsif (&lllagn( $lllabx )) { print "\74\150\61\76\124\150\151\163\40\155\145\163\163\141\147\145\40\151\163\40\167\141\151\164\151\156\147\40\146\157\162\40\141\160\160\162\157\166\141\154\74\57\150\61\76\n"; print "\74\163\164\162\157\156\147\76\124\150\151\163\40\155\145\163\163\141\147\145\40\150\141\163\40\156\157\164\40\142\145\145\156\40\141\160\160\162\157\166\145\144\40\157\162\40\162\145\152\145\143\164\145\144\n"; print "\142\171\40\164\150\145\40\155\157\144\145\162\141\164\157\162\56\40\40\120\162\145\163\163\40\150\145\162\145\40\164\157\40\141\160\160\162\157\166\145\40\157\162\40\162\145\152\145\143\164\40\164\150\145\n"; print "\164\150\145\40\147\162\157\165\160\40\157\162\40\155\145\163\163\141\147\145\40\163\150\157\167\156\74\57\163\164\162\157\156\147\76\74\160\76"; &lllakc ($lllabx, 1); &lllakd ($lllabx, 1); print "\74\150\162\76"; } } else { if (&lllagn( $lllabx )) { print "\74\150\61\76\124\150\151\163\40\155\145\163\163\141\147\145\40\151\163\40\167\141\151\164\151\156\147\40\146\157\162\40\141\160\160\162\157\166\141\154\74\57\150\61\76\n"; print "\74\163\164\162\157\156\147\76\124\150\151\163\40\155\145\163\163\141\147\145\40\150\141\163\40\156\157\164\40\142\145\145\156\40\141\160\160\162\157\166\145\144\40\157\162\40\162\145\152\145\143\164\145\144\n"; print "\142\171\40\164\150\145\40\155\157\144\145\162\141\164\157\162\56\40\40\125\156\164\151\154\40\151\164\40\150\141\163\54\40\151\164\40\167\151\154\154\40\156\157\164\40\142\145\40\166\151\163\151\142\154\145\n"; print "\164\157\40\157\164\150\145\162\40\165\163\145\162\163\56\74\57\163\164\162\157\156\147\76\n"; print "\74\150\162\76\n"; } } } sub lllajw  { local ($lllabx, $lllake) = @_; local ($lllakf) = ""; if (!$lllabx) { return; } if ( &lllahm( $lllabx ) ) { return; } $lllakf = "\46"."confirm=on" if $lllake; &debug_print("Delete Confirming is $lllake")  if ($debug >= 2); if ($lllabt)  { print "<a href = \"$sn/delete/$lllabx?$lllabg"; print "$lllakf\">"; print "<IMG SRC=\"$lllakg\" ALT = \"[Delete]\">"; print "\74\57\101\76\n"; } } sub lllajv  { local ($lllabx, $lllake) = @_; local ($lllakf) = ""; if (!$lllabx) { return; } $lllakf = "\46"."confirm=on"; &debug_print("Restoration confirmation is $lllake")  if ($debug >= 2); if ($lllabt)  { print "<a href = \"$sn/undelete/$lllabx?$lllabg"; print "$lllakf\">"; print "<IMG SRC=\"$lllakh\" ALT = \"[Undelete]\">"; print "\74\57\101\76\n"; } } sub lllakc  { local ($lllabx, $lllake) = @_; local ($lllakf) = ""; $lllakf = "\46"."confirm=on"; &debug_print("Approve confirmation is $lllake")  if ($debug >= 2); if ($lllabt)  { print "<a href = \"$sn/approve/$lllabx?$lllabg"; print "$lllakf\">"; print "<IMG SRC=\"$lllaki\" ALT = \"[Approve]\">"; print "\74\57\101\76\n"; } } sub lllakd  { local ($lllabx, $lllake) = @_; local ($lllakf) = ""; $lllakf = "\46"."confirm=on"; &debug_print("Reject confirmation is $lllake")  if ($debug >= 2); if ($lllabt)  { print "<a href = \"$sn/reject/$lllabx?$lllabg"; print "$lllakf\">"; print "<IMG SRC=\"$lllakj\" ALT = \"[Reject]\">"; print "\74\57\101\76\n"; } } sub lllajx  { local ($lllabx, $lllake) = @_; local ($lllakf) = ""; $lllakf = "\46"."confirm=on\&age=$lllabk{'age'}" if $lllake; if ($lllabt)  { print "<A HREF = \"$sn/delold/$lllabx?$lllabg"; print "$lllakf\">"; print "<IMG SRC=\"$lllakk\" ALT = \"[Delete Old]\">"; print "\74\57\101\76\n"; }; } sub lllajy { local ($lllabx, $lllake) = @_; local ($lllakf) = ""; $lllakf = "\46"."confirm=on" if $lllake; if ($lllabt)  { print "<A HREF = \"$sn/purge/$lllabx?$lllabg"; print "$lllakf\">"; print "<IMG SRC=\"$lllakl\" ALT = \"[Purge]\">"; print "\74\57\101\76\n"; } } sub lllaju  { local ($lllabx) = @_; local ($lllakm); local ($lllakn) = "<IMG SRC=\"$lllako\" ALT=\"[More Detail]\">"; local ($lllakp) = "<IMG SRC=\"$lllakq\" ALT = \"\" border = 2>"; local ($lllakr) = "<IMG SRC=\"$lllaks\" ALT=\"[Less Detail]\">"; local ($lllakt) = "<IMG SRC=\"$lllaku\" ALT = \"\" border = 2>"; if ((defined $config'depth_buttons) && ($config'depth_buttons == 0)) { &debug_print ( "\123\165\160\160\162\145\163\163\151\156\147\40\120\162\145\166\151\157\165\163\40\102\165\164\164\157\156\56" ) if ( $debug >= 1 ); return; } local($lllace) = &lllacf ($lllabx); if (($lllace == $lllaaf) || ($lllace == $lllaag)) { $lllabk{'depth'} += 1; $lllakm = &lllabv (); print "<A HREF=\"$sn/message/$lllabx?$lllakm\">"; print $lllakn; print "\74\57\101\76\n"; $lllabk{'depth'} -= 2; $lllakm = &lllabv (); if ($lllabk{'depth'} > 0) {		 print "<A HREF=\"$sn/message/$lllabx?$lllakm\">"; print $lllakr; print "\74\57\101\76"; } else { print $lllakt; } print "\n"; $lllabk{'depth'} += 1;   } } sub lllajz  { local ($lllabx) = @_; if ($lllabt)  { print "<A HREF=\"$sn/editform/$lllabx?$lllabg\">"; print "<IMG SRC=\"$lllakv\" ALT = \"[Edit]\">"; print "\74\57\101\76\n"; } } sub lllajo  { local ($lllabx) = @_; local ($lllakw) = "<IMG SRC=\"$lllakx\" ALT = \"[Up]\">"; local ($lllaky) = "<IMG SRC=\"$lllakz\" ALT = \"[Up]\">"; local ($lllala) = "<IMG SRC=\"$lllalb\" ALT = \"\" border = 2>"; if ((defined $config'up_button) && ($config'up_button == 0)) { &debug_print ( "\123\165\160\160\162\145\163\163\151\156\147\40\125\160\40\102\165\164\164\157\156\56" ) if ( $debug >= 1 ); return; } local($lllalc, $lllald); if ($lllabx) { local ($lllale) = &llladb ( &lllaes ( $lllabx )); print "<A HREF=\"$sn/message/$lllale?$lllabg\">";	 if ( &lllacf( $lllabx ) == $lllaaf ) { print "$lllakw"; } else { print "$lllaky"; } print "\74\57\101\76"; } else { print "$lllala"; } print "\n"; } ###################################################################
###################################################################
sub lllajr  { local ($lllabx) = @_; local ($lllalf) = "<IMG SRC=\"$lllalg\" ALT = \"[Home]\">"; local ($lllala) = "<IMG SRC=\"$lllalh\" ALT = \"\" border = 2>"; if ((defined $config'thread_button) && ($config'thread_button == 0)) { &debug_print ( "\123\165\160\160\162\145\163\163\151\156\147\40\124\150\162\145\141\144\40\102\165\164\164\157\156\56" ) if ( $debug >= 1 ); return; } if ($lllabx) { print "<A HREF=\"$sn/threadview/?$lllabg\">"; print $lllalf; print "\74\57\101\76"; } else { print $lllala; } print "\n"; } sub lllajp  { local ($lllabx) = @_; local($lllace) = &lllacf ($lllabx); local ($lllalf) = "<IMG SRC=\"$lllali\" ALT = \"[Next]\">"; local ($lllala) = "<IMG SRC=\"$lllalj\" ALT = \"\" border = 2>"; if ((defined $config'next_button) && ($config'next_button == 0)) { &debug_print ( "\123\165\160\160\162\145\163\163\151\156\147\40\116\145\170\164\40\102\165\164\164\157\156\56" ) if ( $debug >= 1 ); return; } if (($lllace == $lllaaf) ||  ($lllace == $lllaag)) { local ($lllalk) = &lllall ($lllabx, 1); if ($lllalk) { print "<A HREF=\"$sn/message/$lllalk?$lllabg\">"; print $lllalf; print "\74\57\101\76"; } else { print "$lllala"; } } else { print "$lllala"; } print "\n"; } sub lllajn  { local ($lllabx) = @_; local ($lllalf) = "<IMG SRC=\"$lllalm\" ALT = \"[Prev]\">"; local ($lllala) = "<IMG SRC=\"$lllaln\" ALT = \"\" border = 2>"; if ((defined $config'prev_button) && ($config'prev_button == 0)) { &debug_print ( "\123\165\160\160\162\145\163\163\151\156\147\40\120\162\145\166\151\157\165\163\40\102\165\164\164\157\156\56" ) if ( $debug >= 1 ); return; } local($lllace) = &lllacf ($lllabx); if ($lllace == $lllaaf) { local ($lllalo) = &lllalp ($lllabx); if ($lllalo) { print "<A HREF=\"$sn/message/$lllalo?$lllabg\">"; print $lllalf; print "\74\57\101\76\n"; } } else { print "$lllala"; } print "\n"; } ############################################################################
############################################################################
sub lllajt  { local ($lllabx) = @_; if ((defined $config'settings_button) && ($config'settings_button == 0)) { &debug_print ( "\123\165\160\160\162\145\163\163\151\156\147\40\123\145\164\164\151\156\147\163\40\102\165\164\164\157\156\56" ) if ( $debug >= 1 ); return; } print "<A HREF=\"$sn/usernameform/$lllabx?$lllabg\">"; print "<IMG SRC=\"$lllalq\" ALT = \"[Settings]\">"; print "\74\57\101\76\n"; } sub lllajs  { print "<A HREF=\"$lllalr\">"; print "<IMG SRC=\"$lllals\" ALT = \"[Help]\">"; print "\74\57\101\76\n"; } sub lllaka  { local ($lllabx) = @_; if ($lllabt)  { print "<A HREF=\"$sn/logout/$lllabx?$lllabg\">"; print "<IMG SRC=\"$lllalt\" ALT = \"[Logout]\">"; print "\74\57\101\76\n"; } } sub lllajq  { local ($lllabx) = @_; local ($lllalu, $lllalv); &debug_print ("Getting Post Button for $lllabx")  if ($debug >= 2); if (&lllacf ($lllabx) == $lllaaf)  { $lllalu = $lllalw; $lllalv = "\133\122\145\160\154\171\135"; } elsif (&lllacf ($lllabx) == $lllaag)  { if ( !&lllalx($lllabx) || $lllabt )  { $lllalu = $lllaly; $lllalv = "\133\120\157\163\164\135"; } else { $lllalu = $lllalz; $lllalv = ""; } } elsif (&lllacf ($lllabx) == $lllaah)  { if ($lllabt)  { $lllalu = $lllaly; $lllalv = "\133\120\157\163\164\135"; } else { $lllalu = $lllalz; $lllalv = ""; } } if ($lllalu) { if ($lllalv) { print "<A HREF=\"$sn/postform/$lllabx?$lllabg\">"; print "<IMG SRC=\"$lllalu\" ALT = \"$lllalv\">"; print "\74\57\101\76"; }		        else { print "<IMG SRC=\"$lllalu\" ALT = \"$lllalv\" border = 2>"; } print "\n"; } } sub llladh  { local($lllajm, $lllama) = @_; local($lllaer) = &lllaes ($lllajm); local($lllace) = &lllacf ($lllajm); local($lllamb) = 0;    local ($lllamc) = 1;    if ($lllace != $lllaah)  {       $lllamb = &llladh ($lllaer, $lllama + 1); if (($lllamb <= $lllamc) ||        ($lllama <= 2) || (($lllamb == $lllamc + 1) && ($lllama == 3)))  { print ("$llladq") if ($lllamb > 0);        print ("\74\142\162\76") if ($lllama == 1);       print ("\74\154\151\76") if (($lllamb > 0) && ($lllama != 1));    if ($lllama == 1) { }                                                            elsif ($lllamb > 0) { &lllajg ($lllajm); }                                                 else { print "<strong><a href=\"$sn/message/$lllajm?$lllabg\">"; print &llladd( $lllajm ); print "\74\57\141\76\74\57\163\164\162\157\156\147\76\74\142\162\76\n"; } $lllamb++; }                                                                          elsif ($lllamb == $lllamc + 1)  { print "$llladq\n"; print "\74\154\151\76\n"; print "\74\163\164\162\157\156\147\76\n"; print "<a href=\"$sn/message/$lllajm?$lllabg\">"; print "\50\56\56\56\51\74\57\141\76\74\57\163\164\162\157\156\147\76\n"; print "\74\142\162\76\n"; $lllamb++; } } $lllamb; } sub lllabr  { &debug_print("Thread User: $lllabk{'user'}")  if ($debug >= 3); if ( $config'usernameOverride ) { $ENV{"\122\105\115\117\124\105\137\125\123\105\122"}; } else { $lllabk{'user'}; } } sub lllabs { local ($lllamd) = ""; local ($lllame) = ""; local ($lllamf) = 1; local ($lllamg, $lllamh, $lllami); $lllabt = 0; $lllacc = 0; $lllabu = 0; $lllamj =  $ENV{'REMOTE_HOST'}; if ($lllabm eq "\167\145\142\155\141\163\164\145\162")  { $lllacc = 1; &debug_print ("\125\163\145\162\40\141\164\164\145\155\160\164\151\156\147\40\164\157\40\154\157\147\40\151\156\40\141\163\40\141\144\155\151\156\151\163\164\162\141\164\157\162")  if ($debug >= 3); local ($lllaby) = "$lllabz/timed";  local ($lllamk) = "$lllabz/password"; if ($lllabk{'p1'}) { $lllame = $lllamk; &debug_print("User logging in with permanent password: $lllabk{'p1'}")  if ($debug >= 3); $lllaml = 2; } elsif ($lllabk{'p2'}) { &debug_print("User logging in with temporary password: $lllabk{'p2'}")  if ($debug >= 3); $lllame = $lllaby; $lllaml = 1; } else { &debug_print("\116\157\40\160\141\163\163\167\157\162\144\40\163\165\142\155\151\164\164\145\144\56") if ($debug >= 2); return; } &debug_print ("Using password file: $lllame")  if ($debug >= 2); if ($lllame ne '')  { open (PASS, $lllame) || ($lllamf = 0); if ($lllamf)  { &debug_print("Opened file $lllame for password.")  if ($debug >= 3); $lllamd = <PASS>; $lllamd =~ s/(.*)\n*/$1/; close (PASS); &debug_print("Read the following from $lllame: $lllamd.") if ($debug >= 3); if ($lllaml == 2)  {  if ($lllabk{'p1'} eq $lllamd)  { &debug_print ("\125\163\145\162\40\163\165\142\155\151\164\164\145\144\40\164\150\145\40\143\157\162\162\145\143\164\40\160\141\163\163\167\157\162\144\56") if ($debug >= 2); $lllamm = 0; if (open (TEMPPASS, $lllaby)) { $lllamn = <TEMPPASS>; $lllamn =~ s/(.*)\n*/$1/; close (TEMPPASS); ($lllamo, $lllamp, $lllamq) = split (/,/, $lllamn); $lllamr = time(); $lllams = $lllamr - $lllamo; if ($lllams < $lllaas)  { if ($lllamj ne $lllamq) { &debug_print ("\101\156\157\164\150\145\162\40\165\163\145\162\40\151\163\40\154\157\147\147\145\144\40\151\156\40\141\163\40\141\144\155\151\156\151\163\164\162\141\164\157\162\56") if ($debug >= 2); $lllamm = 1; } else { &debug_print ("\125\163\145\162\40\151\163\40\162\145\55\141\165\164\150\145\156\164\151\143\141\164\151\156\147\56") if ($debug >= 2); } }	 else { &debug_print ("Temporary password is timed out: $lllams") if ($debug >= 2); } } else { &debug_print ("\124\145\155\160\157\162\141\162\171\40\160\141\163\163\167\157\162\144\40\146\151\154\145\40\144\157\145\163\156\47\164\40\145\170\151\163\164\56") if ($debug >= 2); } if ($lllamm) { $lllaig  = "\123\157\162\162\171\54\40\142\165\164\40\141\156\157\164\150\145\162\40\165\163\145\162\40\151\163\40\143\157\156\156\145\143\164\145\144\40\141\163\n"; $lllaig .= "\141\144\155\151\156\151\163\164\162\141\164\157\162\56\40\40\117\156\154\171\40\157\156\145\40\165\163\145\162\40\143\141\156\40\154\157\147\40\151\156\40\141\163\n"; $lllaig .= "\141\144\155\151\156\151\163\164\162\141\164\157\162\40\141\164\40\141\40\164\151\155\145\56\n"; } else { $lllamt = time (); srand (time()||$$); $lllamu = int (rand (1000000000)); $lllamv = $lllamj; $lllaei = open (PASS, ">$lllaby"); if (!$lllaei) { $lllaig  = "\125\156\141\142\154\145\40\164\157\40\143\162\145\141\164\145\40\164\145\155\160\157\162\141\162\171\40\160\141\163\163\167\157\162\144\56\n"; $lllaig .= "Please notify the site administrator, $config'admin_email,\n"; $lllaig .= "\141\142\157\165\164\40\164\150\145\40\145\162\162\157\162\56"; &debug_print("Failed to create temporary password file: $!", 0)  if ($debug > 0); } else { $lllabt = 1; print PASS "$lllamt,$lllamu,$lllamv"; close ( PASS ); $lllabk {'p2'} = $lllamu; $lllabg = &lllabv (); }   } } else  { $lllabu = 1; $lllaig  = "\111\156\143\157\162\162\145\143\164\40\141\144\155\151\156\163\164\162\141\164\151\166\145\40\160\141\163\163\167\157\162\144\56\n"; $lllaig .= "\120\154\145\141\163\145\40\162\145\55\145\156\164\145\162\40\164\150\145\40\141\144\155\151\156\151\163\164\162\141\164\151\166\145\40\160\141\163\163\167\157\162\144\40\141\156\144\n"; $lllaig .= "\162\145\163\165\142\155\151\164\40\164\150\145\40\146\157\162\155\40\164\157\40\154\157\147\40\151\156\56\n"; &debug_print("\111\156\143\157\162\162\145\143\164\40\141\144\155\151\156\163\164\162\141\164\151\166\145\40\160\141\163\163\167\157\162\144\56")  if ($debug >= 1); } } elsif ($lllaml == 1) { ($lllamg, $lllamh, $lllami) = split (/,/, $lllamd); &debug_print("Only allowing administrator to connect from $lllami.") if ($debug >= 2); if (($lllabk{'p2'} eq $lllamh) &&  ($lllami eq $lllamj))  { $lllams = time() - $lllamg; if ($lllams < $lllaas)  { $lllabt = 1; &debug_print("\125\163\145\162\40\154\157\147\147\145\144\40\151\156\40\167\151\164\150\40\164\145\155\160\157\162\141\162\171\40\160\141\163\163\167\157\162\144")  if ($debug >= 1); } else { &debug_print ("\124\145\155\160\157\162\141\162\171\40\120\141\163\163\167\157\162\144\40\124\151\155\145\144\40\117\165\164\56") if ($debug >= 2); $lllaig  = "\131\157\165\162\40\141\144\155\151\156\151\163\164\162\141\164\157\162\40\154\157\147\151\156\40\150\141\163\40\145\170\160\151\162\145\144\56\n"; $lllaig .= "\120\154\145\141\163\145\40\162\145\55\145\156\164\145\162\40\164\150\145\40\160\141\163\163\167\157\162\144\56"; } } elsif ($lllami ne $lllamw)  { $lllaig  = "\123\157\162\162\171\54\40\142\165\164\40\141\156\157\164\150\145\162\40\165\163\145\162\40\151\163\40\143\157\156\156\145\143\164\145\144\40\141\163\n"; $lllaig .= "\141\144\155\151\156\151\163\164\162\141\164\157\162\40\146\162\157\155\40\141\40\144\151\146\146\145\162\145\156\164\40\155\141\143\150\151\156\145\56\40\40\117\156\154\171\n"; $lllaig .= "\157\156\145\40\165\163\145\162\40\143\141\156\40\154\157\147\40\151\156\40\141\163\40\141\144\155\151\156\151\163\164\162\141\164\157\162\40\141\164\40\141\40\164\151\155\145\56\n"; &debug_print ("User tried to log in from $lllamj.") if ($debug >= 2); } elsif ($lllabk{'p2'} ne $lllamh)  { &debug_print("\111\156\143\157\162\162\145\143\164\40\164\145\155\160\157\162\141\162\171\40\160\141\163\163\167\157\162\144\40\145\156\164\145\162\145\144\56")  if ($debug >= 1); $lllabu = 1; } } } else { $lllaig  = "\125\156\141\142\154\145\40\164\157\40\157\160\145\156\40\160\141\163\163\167\157\162\144\40\146\151\154\145\40\164\157\40\141\165\164\150\145\156\164\151\143\141\164\145\40\165\163\145\162\56\n"; $lllaig .= "Please notify the site administrator, $config'admin_email,\n"; $lllaig .= "\141\142\157\165\164\40\164\150\145\40\145\162\162\157\162\56"; &debug_print("Failed to open password file: $!", 0)  if ($debug > 0); } if ( -e $lllaby )  { unlink ($lllaby) if ($lllabu); } } if ($lllabt && $lllabk{'p3'})  { &debug_print("\125\163\145\162\40\151\163\40\143\150\141\156\147\151\156\147\40\164\150\145\40\160\141\163\163\167\157\162\144")  if ( $debug >= 2 ); if ($lllabk{'p3'} eq $lllabk{'p4'})  { local ($lllamx, $lllamy); ($lllamx, $lllamy) = &lllamz($lllabk{'p3'}); if ($lllamx == 0) { $lllaig  = "\124\150\145\40\156\145\167\40\160\141\163\163\167\157\162\144\40\151\163\40\156\157\164\40\143\157\156\163\151\144\145\162\145\144\40\163\145\143\165\162\145\56\n"; $lllaig .= $lllamy; $lllaig .= "\120\141\163\163\167\157\162\144\40\156\157\164\40\143\150\141\156\147\145\144\56\40\40\120\154\145\141\163\145\n"; $lllaig .= "\164\162\171\40\141\147\141\151\156\56"; $lllabt = 0; } else { if (!(open (PASS, ">$lllamk"))) { $lllaig  = "\125\156\141\142\154\145\40\164\157\40\157\160\145\156\40\160\141\163\163\167\157\162\144\40\146\151\154\145\40\164\157\40\143\150\141\156\147\145\40\160\141\163\163\167\157\162\144\56\n"; $lllaig .= "Please notify the site administrator, $config'admin_email,\n"; $lllaig .= "\141\142\157\165\164\40\164\150\145\40\145\162\162\157\162\56"; &debug_print ("Unable to open password file for update: $!") if ( $debug >= 1 ); $lllabt = 0; } else { print PASS $lllabk{'p3'}; close (PASS); &debug_print("\123\165\143\143\145\163\163\146\165\154\40\143\150\141\156\147\145\40\157\146\40\160\141\163\163\167\157\162\144\163") if ($debug >= 1); } } } else  { $lllaig  = "\116\145\167\40\160\141\163\163\167\157\162\144\40\141\156\144\40\143\157\156\146\151\162\155\141\164\151\157\156\40\160\141\163\163\167\157\162\144\40\144\151\144\n"; $lllaig .= "\156\157\164\40\155\141\164\143\150\56\40\40\120\141\163\163\167\157\162\144\40\156\157\164\40\143\150\141\156\147\145\144\56\40\40\120\154\145\141\163\145\n"; $lllaig .= "\164\162\171\40\141\147\141\151\156\56"; &debug_print("\115\151\163\155\141\164\143\150\145\144\40\160\141\163\163\167\157\162\144\163\56\40\40\120\141\163\163\167\157\162\144\40\156\157\164\40\143\150\141\156\147\145\144\56")  if ($debug > 0); $lllabt = 0; } } } } sub lllacd { local($lllabx, $lllabw) = @_; &debug_print ("\114\157\157\153\151\156\147\40\146\157\162\40\147\162\157\165\160\40\160\141\163\163\167\157\162\144\40\146\151\154\145\56") if ( $debug >= 1 ); $lllana = &llladb($lllabx); while (1) { $lllanb = &lllacx ( "\107\162\160\101\143\143\145\163\163\120\141\163\163\167\144", $lllana ); &debug_print ("Looking for group password file: $lllanb") if ( $debug >= 2 ); if (-r $lllanb) { if (open (PASSWD,  $lllanb)) { $lllacz = <PASSWD>; if ($lllacz =~ /\n$/) { chop($lllacz); } close( PASSWD ); } last; } if (!$lllana) { last; } $lllana = &llladb ( &lllaes ( $lllana ) ); } if ($lllacz) { &debug_print("This group is password protected: \'$lllacz\'")  if ($debug >= 1); if ($lllabt) { &debug_print("\127\145\142\155\141\163\164\145\162\40\144\157\145\163\40\156\157\164\40\150\141\166\145\40\164\157\40\163\165\142\155\151\164\40\164\150\145\40\147\162\157\165\160\40\160\141\163\163\167\157\162\144\56") if ($debug >= 1); } elsif ($lllabk{'GrpPasswd'}) { if ($lllacz eq $lllabk{'GrpPasswd'}) { &debug_print("\107\162\157\165\160\40\160\141\163\163\167\157\162\144\40\155\141\164\143\150\145\163\56")  if ($debug >=2 ); } else { &debug_print("Group Password is incorrect: \'$lllabk{'GrpPasswd'}\'.") if ($debug >= 2); undef $lllabk{'GrpPasswd'}; $lllaig = 1; $lllaig  = "\111\156\143\157\162\162\145\143\164\40\147\162\157\165\160\40\160\141\163\163\167\157\162\144\56\40\40\120\154\145\141\163\145\40\162\145\55\145\156\164\145\162\40\164\150\145\40\147\162\157\165\160\n"; $lllaig .= "\160\141\163\163\167\157\162\144\40\141\156\144\40\164\162\171\40\141\147\141\151\156\56\n"; &lllaih($lllabx, $lllabw);	 } } else { &debug_print("\116\157\40\147\162\157\165\160\40\160\141\163\163\167\157\162\144\40\163\165\142\155\151\164\164\145\144\56\40\40\116\145\145\144\40\164\157\40\154\157\147\40\151\156\56")  if ($debug >= 1); &lllaih($lllabx, $lllabw); } } else {    &debug_print("\124\150\151\163\40\147\162\157\165\160\40\151\163\156\47\164\40\160\141\163\163\167\157\162\144\40\160\162\157\164\145\143\164\145\144") if ($debug >= 1); undef $lllabk{'GrpPasswd'}; } } sub lllada  { local($lllanc, $lllabx) = @_; local ($lllagu); if ($lllabx) { $lllagu = "$lllabz/$lllabx"; } else { $lllagu = $lllabz; } local($llland, $lllane, $lllanf);  $lllanf = "$lllagu/$lllanc"; open(MSG, "$lllanf") || ($lllane = 1); $lllang = $/; undef $/; $llland = (<MSG>); $/ = $lllang; close(MSG);     if($lllane){ &debug_print ("$lllanf could not be opened.") if ( $debug >= 2 ); }                                             elsif (!$llland)  { &debug_print ("$lllanf is empty.  Using default.") if ( $debug >= 2 ); $llland = "\50\116\157\40\164\151\164\154\145\51" if $lllanc eq "Title"; $llland = "\50\116\157\40\155\145\163\163\141\147\145\51" if $lllanc eq "Body"; $llland = "\50\116\157\40\141\165\164\150\157\162\51" if $lllanc eq "Author"; $llland = "<em>$llland</em>" if $llland; }                                     $llland; } sub lllacx { local($lllanc, $lllabx) = @_; local ($lllanh, $lllanf); if ($lllabx) { $lllanh = "$lllabz/$lllabx"; } else { $lllanh = $lllabz; } if ( $lllanc ) { $lllanf = "$lllanh/$lllanc"; } else { $lllanf = "$lllanh"; }	 return( $lllanf ); } sub lllaek  { local($lllanc, $lllani, $lllabx) = @_; local($lllaeh); local($lllame) = "$lllabz/$lllabx/$lllanc"; $lllaeh = open(MSG, ">$lllame"); if ($lllaeh) { print MSG $lllani; close(MSG); } else { &debug_print("Failed to create $lllame: $!") if ( $debug >= 1 ); } return ($lllaeh, $!); } sub lllabe { print ("\103\157\156\164\145\156\164\55\124\171\160\145\72\40\164\145\170\164\57\150\164\155\154\n\n"); &debug_print("\156\145\164\56\124\150\162\145\141\144\40\61\56\62\142\40\125\116\111\130"); &lllanj; $lllank = "$install_path/parseform.pl"; &lllanl( $lllank, "\120\141\162\163\145\146\157\162\155" ); $lllanm = "$install_path/closetag.pl"; &lllanl( $lllanm, "\103\154\157\163\145\40\164\141\147" ); $lllabb = join( "\174", @lllabb ); if ((defined $config'expletive_check) && ($config'expletive_check == 1)) { foreach $lllann (@lllaay , @config'expletives ) { &debug_print ("Adding $lllann to the list of expletives") if ( $debug >= 4); push (@lllano, '\b' . $lllann . '\b');  } $lllaay = join( "\174", @lllano ); } else { &debug_print ("\105\170\160\154\145\164\151\166\145\40\143\150\145\143\153\151\156\147\40\150\141\163\40\142\145\145\156\40\164\165\162\156\145\144\40\157\146\146\56") if ( $debug >= 1); $lllaay = ""; } if ((defined $config'strictHTML) && ($config'strictHTML == 1)) { foreach $lllanp ( @config'strictHTMLElements ) { &debug_print ("Adding $lllanp to the list of acceptable HTML elements")  if ( $debug >= 1 ); push (@lllanq, '\b' . $lllanp . '\b');  } $lllanr = join( "\174", @lllanq ); &debug_print ("Strict HTML Regular Expression was set to: $lllanr") if ( $debug >= 1 ); } else { &debug_print ("\123\164\162\151\143\164\40\110\124\115\114\40\143\150\145\143\153\151\156\147\40\150\141\163\40\142\145\145\156\40\164\165\162\156\145\144\40\157\146\146\56") if ( $debug >= 1); $lllanr = join( "\174", @lllanq ); &debug_print ("Strict HTML Regular Expression was set to: $lllanr") if ( $debug >= 1); } if(!-e $lllabz) { &debug_print ("\124\150\162\145\141\144\40\162\157\157\164\40\144\151\162\145\143\164\157\162\171\40\144\157\145\163\40\156\157\164\40\145\170\151\163\164\56") if ($debug >= 1); $lllaeh = mkdir($lllabz, 0755); if (!status) { $lllans  = "\74\150\61\76\156\145\164\56\124\150\162\145\141\144\40\111\156\151\164\151\141\154\151\172\141\164\151\157\156\40\105\162\162\157\162\74\57\150\61\76\n"; $lllans .= "\103\157\165\154\144\40\156\157\164\40\146\151\156\144\40\157\162\40\143\162\145\141\164\145\40\164\150\145\40\164\150\162\145\141\144\40\162\157\157\164\72\n"; $lllans .= "<em>$lllabz</em>.\n"; $lllans .= "\120\154\145\141\163\145\40\156\157\164\151\146\171\40\164\150\145\40\141\144\155\151\156\151\163\164\162\141\164\157\162\n"; $lllans .= "$config'admin_email\n"; &lllant("\156\145\164\56\124\150\162\145\141\144\40\111\156\151\164\151\141\154\151\172\141\164\151\157\156\40\105\162\162\157\162", $lllans, $lllaae, $lllaac); } } } sub lllaes  { local ($lllabx) = @_; local(@lllagu) = split(/\//, $lllabx); pop(@lllagu); join('/',@lllagu); } sub lllajd  { local ($lllabx) = @_; local ($lllago, $lllanu); local($lllanv) = &lllacx( "" , $lllabx ); local(@lllagx) = (); local(@lllaja) = (); local($lllaje); local(*MESSAGEDIR); if(defined $lllanw{$lllabx} && $lllaba){ return split("\40", $lllanw{$lllabx}); } if (opendir (MESSAGEDIR, $lllanv))  { (@lllagx) = readdir (MESSAGEDIR); closedir (MESSAGEDIR);            ###########################################################################
###########################################################################
@lllagx = sort threadsort @lllagx;       foreach $lllaje (@lllagx)  { if ( $lllabx )  { $lllago = $lllabx . "\57" . $lllaje; } else { $lllago = $lllaje; } if (&lllanx ( $lllago ) ) { if (($lllabt) || ((!&lllahm ( $lllago )) &&  (!&lllagn ( $lllago )))) { $lllanu = &lllacx( "" , $lllago ); push ( @lllaja,  $lllago ); } } }         } else  { &debug_print("Unable to open message directory to determine children: $!") if ($debug > 0);	 } $lllanw{$lllabx} = join("\40", @lllaja) if $lllaba; @lllaja; } sub llladb  { local ($lllabx) = @_; local ($lllany, $lllalc);  if ( defined $lllanz{$lllabx}  && $lllaba) { $lllalc = $lllanz{$lllabx}; $lllaoa++; } else { $lllany = &lllacf ($lllabx);        if ($lllany == $lllaaf)  { $lllalc = &llladb (&lllaes ($lllabx)); }                                     elsif (($lllany == 2) || ($lllany == 3)) { $lllalc = $lllabx; } $lllanz{$lllabx} = $lllalc  if ( $lllaba ); $lllaob++; } return ( $lllalc ); } sub lllaed  { local($lllaoc) =@_; local($lllagu) = &lllacx("", $lllaoc); $lllagu = $lllabz unless $lllaoc; local(@lllagx)= (); local($max) = 0; local($d) = 0; if (opendir(THREADDIR, $lllagu))  { (@lllagx) = readdir(THREADDIR); closedir(THEADDIR); for $d (@lllagx) {              $d = &lllaod($d); if ($d > $max) { $max = $d; } } return($max); }    else  { return("$lllagu"); } } sub lllall { local($lllabx, $lllaoe) = @_; local($lllalk) = ""; local ($lllace) = &lllacf ($lllabx); &debug_print ("Trying to find the next message for $lllabx") if ( $debug >= 2 ); if ($lllaoe) { } if (($lllace == $lllaaf) || ($lllace == $lllaag)) { if ($lllaoe)  { local (@lllaja) = &lllajd ($lllabx); if (@lllaja)  { $lllalk = $lllaja [0]; } } if ($lllace == $lllaag) { return $lllalk; } if (!$lllalk)  { local (@lllaof) = &lllajd (&lllaes ($lllabx)); local ($lllaog) = 0; foreach $s (@lllaof)  { if ($s eq $lllabx)  { $lllalk = $lllaof [$lllaog + 1] if $lllaog < @lllaof - 1; last; } $lllaog++; } } if (!$lllalk)  { $lllalk = &lllall (&lllaes ($lllabx), 0); } }                                                            $lllalk; } sub lllalp  { local($lllabx) = @_; local($lllalo) = ""; if (&lllacf ($lllabx) == $lllaaf) { local (@lllaof) = &lllajd (&lllaes ($lllabx)); local ($lllaog) = 0; foreach $s (@lllaof) {                                    if ($s eq $lllabx) {                               $lllalo = $lllaof [$lllaog - 1] if $lllaog > 0; last; } $lllaog++; }; if ($lllalo) { $lllalo = &lllaoh ($lllalo); } else { $lllalo = &lllaes ($lllabx); } } $lllalo; } sub lllaoh  { local ($lllabx) = @_; local ($lllaoi) = $lllabx; local (@lllaja) = &lllajd ($lllabx); $lllaoi = &lllaoh (pop (@lllaja)) if @lllaja; $lllaoi; } sub lllaeq { local($lllagf, $lllaoj) =@_; $* = 1; if ($lllaoj eq 'HTML')  { $lllagf .= &closetag'CloseTags ($lllagf); } elsif ($lllaoj eq 'pre')  {     $lllagf =~ s/\r//g;       $lllagf = "<PRE>$lllagf</PRE>"; } else  { $lllagf =~ s/\r?\n\r?\n/\r\n<p>\r\n/g; $lllagf =~ s/_([^ _]+)_/<em>$1<\/em>/g; $lllagf =~ s/\*([^ \*]+)\*/<strong>$1<\/strong>/g; $lllagf =~ s/\r?\n([A-Z \t]+)\r?\n/\r\n<h3>$1<\/h3>\r\n/g; $lllagf =~ s/([^>] *)(http:\/\/[^\s]+)/$1 <a href=\"$2\">$2<\/a>/g; } $lllagf; } sub lllabv  { local( $lllaok, $lllaol, $lllaom ); $lllaok = ""; $lllaol = &lllabr(); $lllaol = &lllaon ($lllaol); $lllaok = "user=$lllaol\&"; $lllaoo = $lllabk{'email'}; $lllaoo = &lllaon ($lllaoo); $lllaok .= "email=$lllaoo\&"; if ($lllabk{'depth'} < 1)   { $lllaok .= "depth=$lllaat\&"; }  else  { $lllaok .= "depth=$lllabk{'depth'}\&"; }; local($lllaom) = "\164\151\164\154\145"; if ($lllabk{'detail'} eq "\164\151\164\154\145")  { $lllaom = "\164\151\164\154\145";  } elsif ($lllabk{'detail'} eq "\146\165\154\154")  { $lllaom = "\146\165\154\154";  } else { $lllaom = $lllaav; } $lllaok .= "detail=$lllaom\&"; if($lllabk{'lastread'}) { $lllaok .= "lastread=$lllabk{'lastread'}"; } else { $lllaok .= "\154\141\163\164\162\145\141\144\75\60"; } if ($lllabt && $lllabk{'p2'})  { $lllaok .= "\46"."p2=$lllabk{'p2'}"; } if ($lllabk{'GrpPasswd'}) { $lllaok .= "\46"."GrpPasswd=$lllabk{'GrpPasswd'}"; } $lllaok; } sub lllahj  { local($lllabk); local ($lllaop) = &lllael ($lllabk{'user'}); local ($lllaoq) = ""; if ($lllabk{'GrpPasswd'}) { $lllaor = "<input type=\"hidden\" name=\"GrpPasswd\" value=\"$lllabk{'GrpPasswd'}\">"; } $lllabk  = "<input type=\"hidden\" name=\"user\" value=\"$lllaop\">\n"; $lllabk .= "<input type=\"hidden\" name=\"depth\" value=\"$lllabk{'depth'}\">\n"; $lllabk .= "<input type=\"hidden\" name=\"lastread\" value=\"$lllabk{'lastread'}\">\n"; $lllabk .= "<input type=\"hidden\" name=\"detail\" value=\"$lllabk{'detail'}\">\n"; $lllabk .= "<input type=\"hidden\" name=\"email\" value=\"$lllabk{'email'}\">\n"  if ($lllabk{'email'}); $lllabk .= "<input type=\"hidden\" name=\"subscribe\" value=\"$lllabk{'subscribe'}\">\n" if ($lllabk{'subscribe'}); $lllabk .= "<input type=\"hidden\" name=\"p2\" value=\"$lllabk{'p2'}\">\n" if ($lllabt); $lllabk .=  $lllaor . "\n"; return($lllabk); } sub lllahz { local ($lllabk); local ($lllagf)   = &lllael ($lllabk{'body'}); local ($llladc)  = &lllael ($lllabk{'title'}); local ($lllagd)   = &lllael ($lllabk{'from'}); local ($lllaos) = &lllael ($lllabk{'format'}); local ($lllany)   = &lllael ($lllabk{'type'}); $lllabk  = "<input type=\"hidden\" name=\"from\"   value=\"$lllagd\">\n"; $lllabk .= "<input type=\"hidden\" name=\"title\"  value=\"$llladc\">\n"; $lllabk .= "<input type=\"hidden\" name=\"format\" value=\"$lllaos\">\n"; $lllabk .= "<input type=\"hidden\" name=\"body\"   value=\"$lllagf\">\n"; $lllany .= "<input type=\"hidden\" name=\"type\"   value=\"$lllany\">\n"; return($lllabk); } sub lllahy  { local ($lllabk); local ($lllaim) = &lllael ($lllabk{'header'}); local ($llladc)  = &lllael ($lllabk{'title'}); local ($lllain) = &lllael ($lllabk{'footer'}); local ($lllaho) = &lllael ($lllabk{'msghdr'}); local ($lllany)   = &lllael ($lllabk{'type'}); $lllabk  = "<input type=\"hidden\" name=\"header\" value=\"$lllaim\">\n"; $lllabk .= "<input type=\"hidden\" name=\"title\"  value=\"$llladc\">\n"; $lllabk .= "<input type=\"hidden\" name=\"footer\" value=\"$lllain\">\n"; $lllabk .= "<input type=\"hidden\" name=\"msghdr\" value=\"$lllaho\">\n"; $lllabk .= "<input type=\"hidden\" name=\"type\"   value=\"$lllany\">\n"; return($lllabk); } sub lllahx  { local ($lllakf) = ""; $lllakf = "<input type=\"hidden\" name=\"confirm\" value=\"$lllabk{'confirm'}\">\n" if $lllabk{'confirm'}; $lllakf .= "<input type=\"hidden\" name=\"erase\" value=\"$lllabk{'erase'}\">\n" if $lllabk{'erase'}; return($lllakf); } sub lllabn  { &lllaot ( 'user' , "\124\150\162\145\141\144\40\125\163\145\162" ); &lllaot ( 'body' , "\115\145\163\163\141\147\145\40\102\157\144\171" ); &lllaot ( 'title' , "\115\145\163\163\141\147\145\40\124\151\164\154\145" ); &lllaot ( 'from' , "\115\145\163\163\141\147\145\40\106\162\157\155" ); &lllaot ( 'header' , "\115\145\163\163\141\147\145\40\110\145\141\144\145\162" ); &lllaot ( 'footer' , "\115\145\163\163\141\147\145\40\106\157\157\164\145\162" ); &lllaot ( 'msghdr' , "\115\145\163\163\141\147\145\40\155\163\147\150\144\162" ); &lllaot ( 'lastdate' , "\115\145\163\163\141\147\145\40\155\163\147\150\144\162" ); if (defined ($lllabk{'lastdate'}))  { local (@lllaou) = (0, 31, 28 , 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); local ($lllaov) = ($lllabk{'lastdate'}); if(($lllaov =~ /^[\s]*([\d]{1,2})[\s]*\/[\s]*([\d]{1,2})[\s]*\/[\s]*([\d]{2})[\s]*$/) || ($lllaov =~ /^[\s]*([\d]{1,2})[\s]*-[\s]*([\d]{1,2})[\s]*-[\s]*([\d]{2})[\s]*$/)) { if ($config'european_dates) { $lllaow = $2; $day = $1; $lllaox = $3; } else { $lllaow = $1; $day = $2; $lllaox = $3; } if (($lllaow >= 1) && ($lllaow <= 12)) {  if (($day >= 1) && ($day <= $lllaou[$lllaow]) && $lllaox >= 70) { &debug_print("User submitted a valid last read date: $lllaov", 0) if ($debug > 1); $lllaoy = sprintf("19%2.2d%2.2d%2.2d", $lllaox, $lllaow, $day); $lllaoz = &lllapa($lllaoy); @lllapb = localtime(time); $lllapc = sprintf("%2.2d%2.2d%2.2d", $lllapb[5] + 1900, $lllapb[4] +1 , $lllapb[3]); &debug_print("Todays calendar date translates to $lllapc", 0) if ($debug > 2); $lllapd = &lllapa($lllapc); &debug_print("Today should have the julian date: $lllapd", 0) if ($debug > 2); } else { &debug_print("Invalid day in last read date: $lllaov", 0) if ($debug > 1); undef($lllaov); $lllahr = "\144\141\171"; } } else { &debug_print("Invalid month in last read date: $lllaov", 0) if ($debug > 1); undef($lllaov); $lllahr = "\155\157\156\164\150"; } } else { $lllabk{'lastread'} = -1; } if ($lllaov) { $lllabk{'lastread'} = int ($lllapd - $lllaoz); } else { $lllabk{'lastread'} = -1; } } else			 { &debug_print ("Defaulting to $lllaau days since last read.") if ($debug >= 1); $lllabk{'lastread'} = $lllaau; } if ((defined $lllabk{'lastread'}) && ($lllabk{'lastread'} >= 0)) { &debug_print ("Number of days since last login set to $lllabk{'lastread'}") if ($debug >= 1); } else { &debug_print ("\116\165\155\142\145\162\40\157\146\40\144\141\171\163\40\163\151\156\143\145\40\154\141\163\164\40\154\157\147\151\156\40\156\157\164\40\141\166\141\151\154\141\142\154\145\56") if ($debug >= 1); } $lllajk = &lllahu() - ($lllabk{'lastread'} * $lllaai); } sub lllael { local($lllape) = @_; $lllape =~ s/\&/&amp;/g;      $lllape =~ s/\"/&lllapf;/g; $lllape =~ s/\n/&nl;/g; $lllape =~ s/\r/&cr;/g; $lllape =~ s/\>/&gt;/g; $lllape =~ s/\</&lt;/g; $lllape; } sub lllapg { local($lllaph) = @_; $lllaph =~ s/&lllapf;/\"/g; $lllaph =~ s/&nl;/\n/g; $lllaph =~ s/&cr;/\r/g; $lllaph =~ s/&gt;/\>/g; $lllaph =~ s/&lt;/\</g; $lllaph =~ s/&amp;/\&/g;     $lllaph; } sub lllaon { local($lllape) = @_; $lllape =~ s/([^a-zA-Z0-9\$\-_\.\+\!\*\'\,\)\(])/sprintf("%%%x",unpack("c",$1))/ge; $lllape; } sub lllaea { &lllapi($lllabk{'from'}) || &lllapi($lllabk{'title'}) || &lllapi($lllabk{'body'}); } sub lllapi { local($lllapj) = @_; $lllapj =~ m/$lllaay/ig; } sub threadsort {  if ($a == $b)  { if ( $config'sortDirection == 0 ) { $a cmp $b; } else { $b cmp $a; } } else  { if ( $config'sortDirection == 0 ) { $a <=> $b; } else { $b <=> $a; } } } sub lllaet { local ($lllabx) = @_; local ($lllago); if (&lllahm ( $lllabx ) ) { return; } $lllago =  $lllabx . "\56\104"; local ($lllapk) = &lllacx ("", $lllabx); local ($lllapl) = &lllacx ("", $lllago); if (!(rename ( $lllapk , $lllapl ))) { print "\74\150\63\76\125\156\141\142\154\145\40\164\157\40\144\145\154\145\164\145\40\155\145\163\163\141\147\145\56\74\57\150\63\76\n"; print "\111\146\40\171\157\165\40\141\162\145\40\150\141\166\151\156\147\40\144\151\146\146\151\143\165\154\164\171\54\40\160\154\145\141\163\145\40\143\157\156\164\141\143\164\n"; print "$config'admin_email for assistance.<br>\n"; &debug_print("Cannot delete message $lllabx: $!"); exit; } return( $lllago ); } sub lllagm { local ($lllabx) = @_; local ($lllago); if (! &lllahm ( $lllabx ) ) { return; } ($lllago =  $lllabx)  =~ s/\.D$//i; local ($lllapk) = &lllacx ("", $lllabx); local ($lllapl) = &lllacx ("", $lllago); if (!(rename ( $lllapk , $lllapl ))) { print "\74\150\63\76\125\156\141\142\154\145\40\164\157\40\165\156\144\145\154\145\164\145\40\155\145\163\163\141\147\145\56\74\57\150\63\76\n"; print "\111\146\40\171\157\165\40\141\162\145\40\150\141\166\151\156\147\40\144\151\146\146\151\143\165\154\164\171\54\40\160\154\145\141\163\145\40\143\157\156\164\141\143\164\n"; print "$config'admin_email for assistance.<br>\n"; &debug_print("Cannot undelete message $lllabx: $!"); exit; } return( $lllago ); } sub lllagp { local ($lllabx) = @_; local ($lllago); if (! &lllagn ( $lllabx ) ) { return( $lllabx ); } ($lllago =  $lllabx)  =~ s/\.M$//i ; local ($lllapk) = &lllacx ("", $lllabx); local ($lllapl) = &lllacx ("", $lllago); if (!(rename ( $lllapk , $lllapl ))) { print "\74\150\63\76\125\156\141\142\154\145\40\164\157\40\141\160\160\162\157\166\145\40\155\145\163\163\141\147\145\56\74\57\150\63\76\n"; print "\111\146\40\171\157\165\40\141\162\145\40\150\141\166\151\156\147\40\144\151\146\146\151\143\165\154\164\171\54\40\160\154\145\141\163\145\40\143\157\156\164\141\143\164\n"; print "$config'admin_email for assistance.<br>\n"; &debug_print("Cannot approve message $lllabx: $!"); exit; } if ( ( $config'user_notification ) && ( $config'user_notification_body )) { $lllaff = join ("\54", &lllafg( $lllago, 0 )); ($lllafh = $lllago) =~ s/\//\./g; $lllafh = "NETTHREAD.$lllafh\@$ENV{'SERVER_NAME'}"; $lllafi = "Message-Id: <$lllafh>\n"; $lllafi  .= "To: $lllaff\n"; $lllafi .= "From: $config'user_notification_sender\n"; $lllafi .= "Subject: $config'user_notification_subject\n"; $lllafi .= "\n"; $lllafi .= $config'user_notification_body; $lllafi =~ s/{PostResponse}/$lllaev/ig; $lllafi =~ s/{PostGroup}/$lllaew/ig; $lllafi =~ s/{PostTime}/$lllaey/ig; $lllafi =~ s/{PostDate}/$lllaez/ig; $lllafi =~ s/{PostAuthor}/$lllafa/ig; $lllafi =~ s/{PostSubject}/$lllafb/ig; $lllafi =~ s/{PostMessage}/$lllafb/ig; $lllafi =~ s/{PostBody}/$lllaep/ig; $lllafi =~ s/{PostNumber}/net.Thread:\/$llladv/ig; &lllafe ( $lllaff, $lllafi ); } &lllaeu($lllago); return( $lllago ); } sub lllagq  { local ($lllabx) = @_; local ($lllago); if (! &lllagn ( $lllabx ) ) { return; } $lllago =  $lllabx . "\56\104"; local ($lllapk) = &lllacx ("", $lllabx); local ($lllapl) = &lllacx ("", $lllago); if (!(rename ( $lllapk , $lllapl ))) { print "\74\150\63\76\125\156\141\142\154\145\40\164\157\40\162\145\152\145\143\164\40\155\145\163\163\141\147\145\56\74\57\150\63\76\n"; print "\111\146\40\171\157\165\40\141\162\145\40\150\141\166\151\156\147\40\144\151\146\146\151\143\165\154\164\171\54\40\160\154\145\141\163\145\40\143\157\156\164\141\143\164\n"; print "$config'admin_email for assistance.<br>\n"; &debug_print("Cannot reject message $lllabx: $!"); exit; } &lllaeu($lllago); return( $lllago ); } sub lllabo { local($lllapm); $lllapm = "\145\170\160\151\162\141\164\151\157\156\137\143\150\145\143\153"; local($day); local($lllaow); local($lllapn); local($lllapo); local($lllaox); local($lllapp) = ""; local(@lllapq) = localtime(time); $lllapn =  @lllapq[3]; $lllaow = @lllapq[4] + 1; $lllaox =  @lllapq[5]; &debug_print( "The date is $lllaow/$lllapn/$lllaox" ) if ( $debug >= 2 ); if ($lllaox > '1996')  { $lllapp ="\171\145\141\162"; }  elsif ($lllaox == '1996') { if ($lllaow > '6') { $lllapp = 'month'; }   elsif ($lllaow == '6') { if ($lllapn > '15') { $lllapp = "\144\141\164\145"; } } } if($lllapp ne "") { &debug_print("You failed by $lllapp") if ( $debug >= 1); $lllans  = "\74\150\61\76\105\166\141\154\165\141\164\151\157\156\40\103\157\160\171\40\105\170\160\151\162\145\144\74\57\150\61\76\n"; $lllans .= "\124\150\151\163\40\105\166\141\154\165\141\164\151\157\156\40\143\157\160\171\40\157\146\40\156\145\164\56\124\150\162\145\141\144\40\61\56\62\142\40\145\170\160\151\162\145\144\n"; $lllans .= "\157\156\40\66\57\61\65\57\61\71\71\66\56\n"; $lllans .= "\74\150\162\76\n"; $lllans .= "<br>Please contact <em><A HREF=\"http://www.netgen.com\">net.Genesis</A></em> for a full version.\n"; $lllans .= "\74\142\162\76\n"; $lllans .= "E-mail:<em><A HREF=\"$lllaao\">$lllaap</a></em> <br>\n"; $lllans .= "Voice: $lllaaq <br>\n"; $lllans .= "Fax: $lllaar <br>\n"; &lllant("\156\145\164\56\124\150\162\145\141\144\40\105\166\141\154\165\141\164\151\157\156\40\105\170\160\151\162\141\164\151\157\156",$lllans,$lllaae,$lllaac); } } sub lllabq {			       local($lllapr) = @_; local($lllaps, $lllapt); $lllapu = '#!' . $config'perl_loc . "\n"; $lllapv = '$install_path = "' . $install_path . '";' . "\n\n"; ($lllaps) = (stat("$install_path/net.Thread.pl"))[7]; $lllapt = $lllaps-length($lllapv) - length($lllapu); if(0 || !$lllapr) { print "\124\150\145\40\162\145\154\145\141\163\145\40\163\151\172\145\40\167\141\163\40\61\64\61\65\65\65\n"; print "The real size of the file is $lllaps\n"; $lllapw = length($lllapv)-length($lllapu); print "The size of the head is $lllapw\n";  print "\124\150\145\40\146\157\154\154\157\167\151\156\147\40\154\151\156\145\163\40\141\162\145\40\141\164\40\164\150\145\40\142\145\147\151\156\156\151\156\147\40\157\146\40\164\150\145\40\146\151\154\145\72\n"; print $lllapu; print $lllapv; print "The revised size of the file is $lllapt\n"; } if($lllapr && 141555 != $lllapt) { &lllant("Fatal Error $lllabc", "" ,$lllaae,$lllaac); } } sub lllant { local($lllapx,$lllapy,$lllapz,$lllaqa) = @_; if($lllaqb == 0) { print("\103\157\156\164\145\156\164\55\124\171\160\145\72\40\164\145\170\164\57\150\164\155\154\n\n"); $lllaqb = 1; } print "<title>$lllapx</title>\n"; print "<body>\n$lllapy\n</body>\n"; &lllaqc if $lllapz; exit if $lllaqa; } sub debug_print { local($lllaqd,$lllaqe) = @_; local($lllapm); $lllapm = "\144\145\142\165\147\137\160\162\151\156\164"; $lllaqd =  "\40" x $lllaqe .  $lllaqd; print STDERR "$lllaqd\n" if (0); $lllaqd =~ s/</\&lt\;/g; $lllaqd =~ s/>/\&gt\;/g; if ( $debug >= 2 ) { $lllaqf = (time())-$lllaaj; print  "<!-- ($lllaqf) $lllaqd -->\n"; } else { print  "<!-- $lllaqd -->\n"; } } sub lllanl { local( $lllaqg, $lllaqh ) = @_; &debug_print("Looking for $lllaqh module at $lllaqg.")  if ($debug >= 2); if (-e $lllaqg && -r $lllaqg) { &debug_print("$lllaqh module exists and is readable.") if ($debug >=3); require (&lllaqi($lllaqg)); } else { &debug_print("$lllaqh module does not exist or is not readable.") if ($debug >= 1); $lllans  = "\74\150\61\76\156\145\164\56\124\150\162\145\141\144\40\111\156\151\164\151\141\154\151\172\141\164\151\157\156\40\105\162\162\157\162\74\57\150\61\76\n"; $lllans .= "Could not use the $lllaqh module at\n"; $lllans .= "<em>$lllaqg.</em>\n"; $lllans .= "Please move the $lllaqh module to this\n"; $lllans .= "\154\157\143\141\164\151\157\156\40\157\162\40\162\145\151\156\163\164\141\154\154\40\164\150\145\40\163\157\146\164\167\141\162\145\56\n"; &lllant("\156\145\164\56\124\150\162\145\141\144\40\111\156\151\164\151\141\154\151\172\141\164\151\157\156\40\105\162\162\157\162", $lllans, $lllaae, $lllaac); }  } sub lllanj { $lllaqj = "$install_path/net.Thread.config.pl"; &lllanl( $lllaqj, "\103\157\156\146\151\147\165\162\141\164\151\157\156" ); $lllaiq = $config'imageURL; $lllabz = $config'threadRoot; if ($config'list_element =~ /^numbered$/i) { $llladq = "\74\117\114\76"; $llladi = "\74\57\117\114\76"; } elsif ($config'list_element =~ /^bulleted$/i) { $llladq = "\74\125\114\76"; $llladi = "\74\57\125\114\76"; } else { $llladq = "\74" . $lllaaw . ">"; $llladi = "\74\57" . $lllaaw . ">"; }      $lllals      = "$lllaiq/help.gif"; $lllaly      = "$lllaiq/post.gif";    $lllalz = "$lllaiq/post-gray.gif";    $lllalw     = "$lllaiq/reply.gif";    $lllaqk= "$lllaiq/reply-gray.gif";    $lllalg      = "$lllaiq/thread.gif"; $lllalh = "$lllaiq/thread-gray.gif"; $lllako   = "$lllaiq/moredet.gif"; $lllaks   = "$lllaiq/lessdet.gif"; $lllakq   = "$lllaiq/moredet-gray.gif"; $lllaku   = "$lllaiq/lessdet-gray.gif"; $lllakg    = "$lllaiq/delete.gif"; $lllakh  = "$lllaiq/undelete.gif"; $lllaki   = "$lllaiq/approve.gif"; $lllakj    = "$lllaiq/reject.gif"; $lllakv      = "$lllaiq/edit.gif"; $lllalt    = "$lllaiq/logout.gif"; $lllakl     = "$lllaiq/purge.gif"; $lllakk    = "$lllaiq/delold.gif"; $lllalq  = "$lllaiq/settings.gif"; $lllakx    = "$lllaiq/msg-up.gif"; $lllakz    = "$lllaiq/grp-up.gif"; $lllalb   = "$lllaiq/up-gray.gif"; $lllalm      = "$lllaiq/prevmsg.gif"; $lllaln = "$lllaiq/prevmsg-gray.gif"; $lllali      = "$lllaiq/nextmsg.gif"; $lllalj = "$lllaiq/nextmsg-gray.gif"; $lllalr       = "$lllaiq/help.html"; if ($config'image_new) { $lllajl = $config'image_new; } if ($debug >=2 ) { &debug_print( "Thread Root: $lllabz" ); &debug_print( "Image URL: $lllaiq" ); }     if ($debug >=3) { &debug_print( "Sendmail Location: $config'sm_loc" ); &debug_print( "Perl Location: $config'perl_loc" ); &debug_print( "Administrator Email: $config'admin_email" ); } if (defined $config'password_timeout) { $lllaas = $config'password_timeout; &debug_print ("Overriding password timeout: $lllaas") if ( $debug >=2 ); } if (defined $config'default_depth) { $lllaat = $config'default_depth; &debug_print ("Overriding default depth: $lllaat") if ( $debug >=2 ); } if (defined $config'default_lastread) { $lllaau = $config'default_lastread; &debug_print ("Overriding default lastread: $lllaau") if ( $debug >=2 ); } if (defined $config'default_detail) { $lllaav = $config'default_detail; &debug_print ("Overriding default detail level: $lllaav") if ( $debug >=2 ); } } sub lllaot { local ( $lllaql, $lllaqm ) = @_; if ( $lllabk{ $lllaql } ) { $lllabk{ $lllaql } = &lllapg ( $lllabk{ $lllaql } ); &debug_print ( "$lllaqm: $lllabk{ $lllaql }" ) if ( $debug >= 3 ); } } sub lllamz { local ($lllaqn) = @_; local ($lllaqo, $lllaqp); if ($lllaqn =~ /^\s*$/) { $lllaqo = 0; $lllaqp  = "\124\150\145\40\160\141\163\163\167\157\162\144\40\155\165\163\164\40\143\157\156\164\141\151\156\40\156\157\156\55\167\150\151\164\145\163\160\141\143\145\40\143\150\141\162\141\143\164\145\162\163\56\n"; } elsif ( length($lllaqn) <= $lllaax ) { $lllaqo = 0; $lllaqp  = "The password must be longer than $lllaax\n"; $lllaqp .= "\143\150\141\162\141\143\164\145\162\163\56\n"; } else { &debug_print ("\124\150\145\40\156\145\167\40\160\141\163\163\167\157\162\144\40\151\163\40\144\145\145\155\145\144\40\164\157\40\142\145\40\163\145\143\165\162\145") if ($debug >= 1); $lllaqo = 1; } return ($lllaqo, $lllaqp); } sub lllacy { local ($lllabx, $lllahn, $lllaqq) = @_; &debug_print( "\122\145\160\157\162\164\105\162\162\157\162" )  if ( $debug >= 3 ); local ($lllaho) = &lllada ("\115\163\147\150\144\162", &llladb ($lllabx)); &debug_print( "Message Header: $lllaho" ) if ( $debug >= 3 ); local ($lllace) = &lllacf ($lllabx); &debug_print( "Message Header: $lllaho" ) if ( $debug >= 3 ); local ($lllahp) = $lllabk{'lastread'} || 0; $lllahn = "\164\150\162\145\141\144\166\151\145\167" unless $lllahn; &debug_print( "Delaying Action: $lllahn" ) if ( $debug >= 3 ); local ($lllahv) = ""; local ($lllahw) = &lllahx();            local($lllaqr); if ($lllabd) { $lllaqr = $lllabd; } else  { $lllaqr  = "\156\145\164\56\124\150\162\145\141\144\40\150\141\163\40\145\156\143\157\165\156\164\145\162\145\144\40\141\156\40\145\162\162\157\162\40\160\162\157\143\145\163\163\151\156\147\n"; $lllaqr .= "\171\157\165\162\40\162\145\161\165\145\163\164\56\n"; } local($lllaqs); if ($lllagt) { $lllaqs = $lllagt; } else  { $lllaqs  = "\120\154\145\141\163\145\40\143\157\156\164\141\143\164\40\164\150\145\40\163\151\164\145\40\141\144\155\151\156\151\163\164\162\141\164\157\162\54\n"; $lllaqs .= "$config'admin_email, about this error.\n";  } print "\74\164\151\164\154\145\76\40\156\145\164\56\124\150\162\145\141\144\40\105\162\162\157\162\40\74\57\164\151\164\154\145\76\n"; print "$lllaho\n"; print "\74\150\61\76\156\145\164\56\124\150\162\145\141\144\40\61\56\62\142\40\105\162\162\157\162\74\57\150\61\76\n"; print "\74\150\162\76\n"; print "<h4>$lllaqr</h4>\n"; print "\74\150\162\76\n"; print "$lllaqs\n"; print "\74\150\162\76\n"; print "$lllahv\n"; print "$lllahw\n"; exit; } sub lllahv { local ($lllace) = &lllacf ($lllabx); &debug_print( "Message Header: $lllaho" ) if ( $debug >= 3 ); if ($lllabw eq "\160\157\163\164")  { if ($lllace == $lllaah)  { $lllahv = &lllahy(); } else  { $lllahv = &lllahz(); } }                 elsif ($lllabw eq "\165\160\144\141\164\145")  { if ($lllace == $lllaaf)  { $lllahv = &lllahz(); } else  { $lllahv = &lllahy(); }; }; return $lllahv; } sub lllaiu { local($lllabx) = @_; local($lllaqt, $lllaqu); $lllaqt = &lllada ("\107\162\160\101\143\143\145\163\163\120\141\163\163\167\144", $lllabx); $lllaqt =~ s/\r//g; $lllaqu .=  "\74\144\154\76\n"; $lllaqu .=  "\74\144\164\76\n"; $lllaqu .=  "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\107\162\157\165\160\40\120\141\163\163\167\157\162\144\40\50\117\160\164\151\157\156\141\154\51\72\74\57\146\157\156\164\76\n"; $lllaqu .=  "\74\160\76\n"; $lllaqu .=  "\74\144\144\76\n"; $lllaqu .=  "\107\162\157\165\160\163\40\143\141\156\40\165\163\145\40\141\156\40\157\160\164\151\157\156\141\154\40\160\141\163\163\167\157\162\144\40\164\157\40\162\145\163\164\162\151\143\164\40\141\143\143\145\163\163\n"; $lllaqu .=  "\164\157\40\164\150\145\40\147\162\157\165\160\56\n"; if ($lllaqt) { $lllaqu .=  "\111\146\40\171\157\165\40\167\157\165\154\144\40\154\151\153\145\40\164\157\40\143\150\141\156\147\145\40\164\150\145\40\147\162\157\165\160\40\160\141\163\163\167\157\162\144\54\40\164\171\160\145\40\164\150\145\40\n"; $lllaqu .=  "\157\154\144\40\160\141\163\163\167\157\162\144\40\151\156\40\164\150\145\40\146\151\162\163\164\40\146\151\145\154\144\56\40\40\124\150\145\156\40\164\171\160\145\40\164\150\145\40\156\145\167\40\160\141\163\163\167\157\162\144\n"; $lllaqu .=  "\151\156\40\164\150\145\40\163\145\143\157\156\144\40\141\156\144\40\164\150\151\162\144\40\146\151\145\154\144\163\40\164\157\40\143\157\156\146\151\162\155\56\n"; $lllaqu .=  "\74\57\144\154\76\n"; $lllaqu .=  "<pre>  <em>Old Group Password:   </em> <input type=\"password\" name=\"OldGrpPasswd\"  value=\"\" size=40>\n"; $lllaqu .=  "<pre>  <em>New Group Password:   </em> <input type=\"password\" name=\"NewGrpPasswd\"  value=\"\" size=40>\n"; $lllaqu .=  "<pre>  <em>Confirmation Password:</em> <input type=\"password\" name=\"CnfrmGrpPasswd\" value=\"\" size=40>\n"; $lllaqu .=  "\74\57\160\162\145\76\n"; } else { $lllaqu .=  "\111\146\40\171\157\165\40\167\157\165\154\144\40\154\151\153\145\40\164\157\40\165\163\145\40\141\40\147\162\157\165\160\40\160\141\163\163\167\157\162\144\54\n"; $lllaqu .=  "\163\145\164\40\164\150\145\40\160\141\163\163\167\157\162\144\40\151\156\40\164\150\145\40\146\151\162\163\164\40\146\151\145\154\144\40\141\156\144\40\162\145\164\171\160\145\40\151\164\40\151\156\40\164\150\145\n"; $lllaqu .=  "\163\145\143\157\156\144\40\146\151\145\154\144\40\164\157\40\143\157\156\146\151\162\155\56\40\40\117\164\150\145\162\167\151\163\145\54\40\154\145\141\166\145\40\164\150\145\163\145\40\146\151\145\154\144\163\40\142\154\141\156\153\56"; $lllaqu .=  "\74\57\144\154\76\n"; $lllaqu .=  "<pre>  <em>New Group Password:   </em> <input type=\"password\" name=\"NewGrpPasswd\" value=\"\" size=40>\n"; $lllaqu .=  "<pre>  <em>Confirmation Password:</em> <input type=\"password\" name=\"CnfrmGrpPasswd\" value=\"\" size=40>\n"; $lllaqu .=  "\74\57\160\162\145\76\n"; } return ($lllaqu); }	     sub lllaee  { local($lllabx, $lllabw) = @_; if (!$lllabk{'NewGrpPasswd'}) { &debug_print("\116\157\40\156\145\167\40\160\141\163\163\167\157\162\144\40\163\165\142\155\151\164\164\145\144\56\40\40\120\141\163\163\167\157\162\144\40\156\157\164\40\143\150\141\156\147\145\144\56") if ( $debug >= 2 ); return; }		 if ($lllabk{'NewGrpPasswd'} eq $lllabk{'CnfrmGrpPasswd'}) { &debug_print("\116\145\167\40\107\162\157\165\160\40\120\141\163\163\167\157\162\144\163\40\115\141\164\143\150\145\144\56") if ( $debug >= 1 ); } else { &debug_print("\116\145\167\40\107\162\157\165\160\40\120\141\163\163\167\157\162\144\163\40\104\151\144\40\116\117\124\40\115\141\164\143\150\56"); $lllabd  = "\124\150\145\40\156\145\167\40\160\141\163\163\167\157\162\144\40\141\156\144\40\143\157\156\146\151\162\155\141\164\151\157\156\40\160\141\163\163\167\157\162\144\n"; $lllabd .= "\144\151\144\40\156\157\164\40\155\141\164\143\150\56\40\40\124\150\145\40\147\162\157\165\160\40\160\141\163\163\167\157\162\144\40\167\141\163\40\156\157\164\n"; $lllabd .= "\143\150\141\156\147\145\144\56\n"; $lllagt .= "<form action = \"$sn/$lllabw/$lllabx\" method = \"POST\">\n"; $lllagt .= &lllahv(); $lllagt .= &lllahj(); $lllagt .= &lllaiu($lllabx); $lllagt .= "<p><input type=submit value=\"Submit Password\">\n"; $lllagt .= "\74\57\146\157\162\155\76\n"; &lllacy($lllabx, $lllabw); } local ($lllamx, $lllamy); ($lllamx, $lllamy) = &lllamz($lllabk{'NewGrpPasswd'}); if ($lllamx == 0) { &debug_print("\124\150\145\40\156\145\167\40\160\141\163\163\167\157\162\144\40\151\163\40\156\157\164\40\143\157\156\163\151\144\145\162\145\144\40\163\141\146\145\56"); $lllabd  = "\124\150\145\40\156\145\167\40\160\141\163\163\167\157\162\144\40\151\163\40\156\157\164\40\143\157\156\163\151\144\145\162\145\144\40\163\145\143\165\162\145\56\n"; $lllabd  .= $lllamy; $lllabd  .= "\120\141\163\163\167\157\162\144\40\156\157\164\40\143\150\141\156\147\145\144\56\40\40\120\154\145\141\163\145\n"; $lllabd  .= "\164\162\171\40\141\147\141\151\156\56"; $lllagt .= "<form action = \"$sn/$lllabw/$lllabx\" method = \"POST\">\n"; $lllagt .= &lllahv(); $lllagt .= &lllahj(); $lllagt .= &lllaiu($lllabx); $lllagt .= "<p><input type=submit value=\"Submit Password\">\n"; $lllagt .= "\74\57\146\157\162\155\76\n"; &lllacy($lllabx, $lllabw); } local($lllaqt); $lllaqt = &lllada("\107\162\160\101\143\143\145\163\163\120\141\163\163\167\144", $lllabx); $lllaqt =~ s/\s*$//; local($lllaqv); &debug_print("Old Password: $lllaqt") if ( $debug >= 3 ); if ($lllaqt) { if ($lllaqt eq $lllabk{'OldGrpPasswd'}) { &debug_print("\117\154\144\40\120\141\163\163\167\157\162\144\40\115\141\164\143\150\145\144\40\103\157\162\162\145\143\164\154\171") if ( $debug >= 1 ); $lllaqv = 1; } else { &debug_print("Old Password Does NOT Match: \'$lllabk{'OldGrpPasswd'}\'") if ( $debug >= 1 ); $lllabd  = "\124\150\145\40\157\154\144\40\147\162\157\165\160\40\160\141\163\163\167\157\162\144\40\167\141\163\40\156\157\164\40\143\157\162\162\145\143\164\56\n"; $lllabd .= "\124\150\145\40\147\162\157\165\160\40\160\141\163\163\167\157\162\144\40\167\141\163\40\156\157\164\n"; $lllabd .= "\143\150\141\156\147\145\144\56\n"; $lllagt .= "<form action = \"$sn/$lllabw/$lllabx\" method = \"POST\">\n"; $lllagt .= &lllahv(); $lllagt .= &lllahj(); $lllagt .= &lllaiu($lllabx); $lllagt .= "<p><input type=submit value=\"Submit Password\">\n"; $lllagt .= "\74\57\146\157\162\155\76\n"; &lllacy($lllabx, $lllabw); } } else { &debug_print("\117\154\144\40\160\141\163\163\167\157\162\144\40\145\155\160\164\171") if ( $debug >= 3 ); $lllaqv = 1; } } sub lllaem  { local($lllabx) = @_; &debug_print("\127\162\151\164\151\156\147\40\156\145\167\40\160\141\163\163\167\157\162\144\40\144\157\167\156") if ( $debug >= 2 ); local($lllaeh, $lllaeg); ($lllaeh, $lllaeg) =  &lllaek("\107\162\160\101\143\143\145\163\163\120\141\163\163\167\144", $lllabk{'NewGrpPasswd'}, "$lllabx"); if (!$lllaeh) { &debug_print("Error writing new group password to disk: $lllaeg"); $lllabd  = "\124\150\145\40\146\157\154\154\157\167\151\156\147\40\145\162\162\157\162\40\167\141\163\40\145\156\143\157\165\156\164\145\162\145\144\40\167\150\145\156\n"; $lllabd .= "saving the new group password: $lllaeg.\n"; $lllabd .= "\124\150\145\40\147\162\157\165\160\40\160\141\163\163\167\157\162\144\40\167\141\163\40\156\157\164\40\143\150\141\156\147\145\144\n"; &lllacy($lllabx, $lllabw); } } sub lllaqi { local($lllame) = @_; if (UNIX eq "\116\124") { $lllame =~ s/^[c-zC-Z]\://g; $lllame =~ s/\\/\//g; } $lllame; } sub lllanx { local ($lllabx) = @_; local ($lllaqw); $lllacw = &lllacx( "", $lllabx ); if (-d $lllacw ) { if ( $lllabx =~ /^(\/?\d+(\.[A-Za-z])*(\/\d+(\.[A-Za-z])*)*)?$/ ) { $lllaqw = 1; } else { $lllaqw = 0; } } else { $lllaqw = 0; } return( $lllaqw ); } sub lllahm { local ($lllabx) = @_; if ( $lllabx =~ /\.D$/i ) { return ( 1 ); } else { return ( 0 ); } } sub lllakb { local ($lllabx) = @_; local ( $lllaer ); &debug_print( "Checking if $lllabx is hidden" ); while ( $lllaer = &lllaes( $lllabx ) ) { if ( $lllaer =~ /\.D$/i ) { return ( 1 ); } else { return ( 0 ); } } } sub lllagn { local ($lllabx) = @_; if ( $lllabx =~ /\.M$/i ) { return ( 1 ); } else { return ( 0 ); } } sub lllady { local ($lllabx) = @_; local ( $lllana ); if ( $config'moderation == 0) { return( 0 ); } if ( $config'moderation == 1 ) { return( 1 ); } $lllana = &llladb($lllabx); while ( 1 ) { $lllaqx = &lllacx( "\115\157\144\145\162\141\164\145\144", $lllana ); if (-e $lllaqx ) { return ( 1 ); } if ( $lllana ) { $lllana = &llladb ( &lllaes ( $lllana ) );     } else { return( 0 ); last; } } } sub lllalx { local ($lllabx) = @_; local ( $lllana ); $lllana = &llladb($lllabx); while ( 1 ) { $lllaqy = &lllacx( "\122\145\141\144\117\156\154\171", $lllana ); if (-e $lllaqy ) { return ( 1 ); } if ( $lllana ) { $lllana = &llladb ( &lllaes ( $lllana ) );     } else { return( 0 ); last; } } } sub lllaod { local($lllabx) = @_; $lllabx =~ s/\.\w$//; return($lllabx); } sub lllajh { local($lllabx) = @_; local($lllaeh); if ($lllabt) { if (&lllahm( $lllabx )) { $lllaeh = "\74\163\164\162\157\156\147\76\133\104\145\154\145\164\145\144\135\74\57\163\164\162\157\156\147\76\40"; } if (&lllakb( $lllabx )) { $lllaeh = "\74\163\164\162\157\156\147\76\133\111\156\40\104\145\154\145\164\145\144\40\124\150\162\145\141\144\135\74\57\163\164\162\157\156\147\76\40"; } elsif (&lllagn( $lllabx )) { $lllaeh = "\74\163\164\162\157\156\147\76\133\101\167\141\151\164\151\156\147\40\101\160\160\162\157\166\141\154\135\74\57\163\164\162\157\156\147\76\40"; } } return( $lllaeh ); } sub llladd { local($lllabx) = @_; local($llladc); if ( defined $lllaqz{$lllabx} && $lllaba ) { $llladc = $lllaqz{$lllabx}; $lllaoa++; } else { $llladc = &lllada( "\124\151\164\154\145", $lllabx ); $lllaqz{$lllabx} = $llladc if ( $lllaba ); $lllaob++; } return( $llladc ); } sub llladk { local($lllabx) = @_; local($llladj); if ( defined $lllara{$lllabx}  && $lllaba ) { $llladj = $lllara{$lllabx}; $lllaoa++; } else { $llladj = &lllada( "\101\165\164\150\157\162", $lllabx ); $lllara{$lllabx} = $llladj if ( $lllaba ); $lllaob++; } return( $llladj ); } sub llladn  { local ($lllabx) = @_; local ($lllarb); if ( defined $lllarc{$lllabx}  && $lllaba) { $lllarb = $lllarc{$lllabx}; $lllaoa++; } else { @lllard= stat("$lllabz/$lllabx/Title"); $lllarb = &lllare ($lllard[9]); $lllarc{$lllabx} = $lllarb  if ( $lllaba ); $lllaob++; } return( $lllarb ); } sub llladp { local($lllabx) = @_; local($lllagf) = &lllada( "\102\157\144\171", $lllabx ); return( $lllagf ); } sub lllacf  { local ($lllabx) = @_; local ($lllany); if (!$lllabx)  { $lllany = $lllaah; }                        else { if ( defined $lllarf{$lllabx}  && $lllaba) { &debug_print("\103\141\143\150\145\40\150\151\164\40\146\157\162\40\155\145\163\163\141\147\145\40\164\171\160\145\56\56\56") if $debug>=3; $lllany = $lllarf{$lllabx}; $lllaoa++; } else { if (-e ( &lllacx( "\110\145\141\144\145\162", $lllabx ) ) )  { if (-e ( &lllacx( "\101\162\145\141", $lllabx ) ) )   { &debug_print("\111\164\47\163\40\141\156\40\141\162\145\141\56\56\56") if $debug>=3; $lllany = $lllaah; } else  { &debug_print("\111\164\47\163\40\141\40\147\162\157\165\160\56\56\56") if $debug>=3; $lllany = $lllaag; } } else { &debug_print("\111\164\47\163\40\141\40\155\145\163\163\141\147\145\56\56\56") if $debug>=3; $lllany = $lllaaf; } } $lllarf{$lllabx} = $lllany  if ( $lllaba ); $lllaob++; } $lllany; } sub lllacg { local( $lllabx , $lllarg ) = @_; local( $lllarh, @lllari ); local( $lllarj, $lllark, $lllarl, $lllarm, $lllarn ); if (!useCaching || $lllabt) { return; } $lllaro = time(); local($lllarp) = &lllacx( "\103\141\143\150\145", $lllabx ); if ( -r $lllarp ) { local(*CACHE); open( CACHE, $lllarp ); foreach $lllarh ( <CACHE> ) { @lllari = split ( $lllaaz, $lllarh ); $lllarj     = @lllari[0]; $lllark   = @lllari[1]; $lllarl  = @lllari[2]; $lllarm = @lllari[3]; $lllarn   = @lllari[4]; if($lllarj eq "\143\150\151\154\144"){ $lllanw{$lllari[1]} = $lllari[2]; } else{ $lllarf{$lllarj} = $lllark; $lllaqz{$lllarj} = $lllarl; $lllara{$lllarj} = $lllarm; $lllarc{$lllarj} = $lllarn; } } close( CACHE ); } elsif($lllarg < $lllaak) { opendir(SDIRS, &lllacx("", $lllabx)); (@lllarq) = readdir(SDIRS); foreach $d (@lllarq) { if(-d $d) { if($d ne "\56" && $d ne "..") { &lllacg("$lllabx/$d", $lllarg++); } } } closedir( SDIRS ); } $lllarr = time(); } sub lllaeu  { local($msg) = @_; $lllars = 0; &debug_print("Removing Cache in $msg")  if ( $debug >= 3 ); $lllart = &lllacx("\103\141\143\150\145", $msg); if ( -e $lllart ) { unlink($lllart); } while(!$lllars) { $msg = &lllaes($msg); if(&lllacf($msg) != $lllaaf) { $lllars = 1; &debug_print("Removing Cache in $msg") if ( $debug >= 3 ); $lllart = &lllacx("\103\141\143\150\145", $msg); &debug_print("Unlinking $lllart") if ( $debug >= 3 ); if ( -e $lllart ) { unlink($lllart); } } } %lllaqz=(); %lllarf=(); %lllara=(); %lllarc=(); %lllanw=(); } sub llladt { local( $lllabx ) = @_; local( $lllarh, @lllari ); local( $lllarj, $lllarl, $lllarm, $lllarn ); if (!useCaching || $lllabt) { return; } $lllaro = time(); local($lllarp) = &lllacx( "\103\141\143\150\145", $lllabx ); if ((!-e $lllarp) || $lllaob) { local(*CACHE); open( CACHE, "> $lllarp" ); foreach $lllarj ( keys %lllaqz ) { undef ( @lllari ); push( @lllari, $lllarj); push( @lllari, $lllarf {$lllarj} ); push( @lllari, $lllaqz{$lllarj} ); push( @lllari, $lllara{$lllarj} ); push( @lllari, $lllarc{$lllarj} ); $lllarh = join ( $lllaaz, @lllari ); $lllaru = "\143\150\151\154\144".$lllaaz.$lllarj.$lllaaz.$lllanw{$lllarj}; print ( CACHE "$lllarh\n" ); print ( CACHE "$lllaru\n"); } close( CACHE ); } $lllarr = time(); } sub llladu { if ($debug < 2) { return; } local( $lllarv ) = time(); local( $lllarw ) =  $lllarv - $lllaaj; open (TMPFILE, "\76\76\40\57\164\155\160\57\164\150\162\145\141\144\55\163\164\141\164\163\56\164\170\164"); select(TMPFILE); if ( $lllaba ) { $lllarx = "\117\156"; } else { $lllarx = "\117\146\146"; } printf ("Caching: %3s    Time: %3d  Cache Hits: %4d  Cache Misses: %4d  ( %3.2f )\n",  $lllarx, $lllarw, $lllaoa, $lllaob,  100.0 * $lllaoa / ( $lllaoa + $lllaob ) ); close (TMPFILE); select(STDOUT); } sub lllaej { local( $lllary ) = @_; $lllary =~ s/<(\/?($lllanr)[^>]*)>/$1/gi; $lllary =~ s/<[^>]*>//g; $lllary =~ s//</g; $lllary =~ s//>/g; return( $lllary ); } sub lllads { local( $lllabx ) = @_; if ( $config'user_notification ) { if(($config'secure_subscription && $lllabt) || !$config'secure_subscription) { local(@lllarz, @lllasa, @lllasb); local($lllasc, $lllasd, $lllase); print "\74\150\162\76\n"; print "<form action = \"$sn/subscribe/$lllabx\" method = \"POST\">\n"; local($lllabg) = &lllahj; $lllabg =~ s/<input[^\>]*name\s*=\s*\"?email\"?[^\>]*>//; print $lllabg; if ($lllabk{'email'}) { @lllarz = &lllafg($lllabx, 1); local (@lllasb) = grep ( /$lllabk{'email'}/ , @lllarz ); if (@lllasb) { $lllasc = "\103\110\105\103\113\105\104"; } else { @lllasa = &lllafg($lllabx, 2); @lllasb = grep ( /$lllabk{'email'}/ , @lllasa ); if (@lllasb) { $lllasd = "\103\110\105\103\113\105\104"; } } } print "\74\146\157\156\164\40\163\151\172\145\75\53\61\76\n"; print "\74\145\155\76\120\154\145\141\163\145\40\165\163\145\40\164\150\145\40\146\157\154\154\157\167\151\156\147\40\157\160\164\151\157\156\163\40\164\157\40\163\145\154\145\143\164\57\143\150\141\156\147\145\40\171\157\165\162\40\143\165\162\162\145\156\164\40\155\141\151\154\40\163\145\164\164\151\156\147\163\56\74\57\145\155\76"; print "\74\57\146\157\156\164\76\n"; print "\74\142\162\76\n"; print "<input type=\"radio\" name=\"subscribe\" value=\"none\"> "; print "\120\154\145\141\163\145\40\144\157\156\47\164\40\163\145\156\144\40\155\145\40\141\156\171\40\156\157\164\151\143\145\163\40\141\142\157\165\164\40\164\150\151\163\40\155\145\163\163\141\147\145\56\n"; print "\74\142\162\76\n"; print "<input type=\"radio\" name=\"subscribe\" value=\"direct\" $lllasc> "; print "\120\154\145\141\163\145\40\163\145\156\144\40\155\145\40\156\157\164\151\143\145\163\40\167\150\145\156\40\160\145\157\160\154\145\40\162\145\163\160\157\156\144\40\144\151\162\145\143\164\154\171\40\164\157\40\164\150\151\163\40\155\145\163\163\141\147\145\56\n"; print "\74\142\162\76\n"; print "<input type=\"radio\" name=\"subscribe\" value=\"thread\" $lllasd> "; print "\120\154\145\141\163\145\40\163\145\156\144\40\155\145\40\156\157\164\151\143\145\163\40\167\150\145\156\40\160\145\157\160\154\145\40\160\157\163\164\40\141\40\156\145\167\40\155\145\163\163\141\147\145\40\165\156\144\145\162\40\164\150\151\163\40\155\145\163\163\141\147\145\56\n"; print "\74\142\162\76\n"; print "\115\171\40\145\155\141\151\154\40\141\144\144\162\145\163\163\40\151\163\72\40"; print "<input type=\"text\" name=\"email\" value=\"$lllabk{'email'}\">\n"; print "<input type=\"submit\" value=\"Update Subscription\">"; print "\74\57\146\157\162\155\76\n"; } } } sub llladm { local ($lllarb) = @_; local (@lllapo); local ($llladl); @lllapo = localtime ($lllarb); if ( $config'european_dates ) { $llladl =  $lllapo [3] . "\57" . ($lllapo [4] + 1)  . "/" . $lllapo [5]; } else { $llladl = ( $lllapo [4] + 1 ) . "\57" . $lllapo [3] . "/" . $lllapo [5]; } } sub lllahu { local ($lllahu); $lllahu = &lllare (time); } sub lllare { local ($lllarb) = @_; local (@lllapo); @lllapo = localtime ($lllarb); $lllarb -= ($lllapo [2] * 60 * 60); $lllarb -= ($lllapo [1] * 60); $lllarb -= $lllapo [0]; $lllarb += 1; } sub lllapa { local($lllasf) = @_; $i = int($lllasf / 10000); $h = $lllasf - ($i * 10000); $j = int($h / 100); $k = $h - ($j * 100); $jd = $k - 32075 + int(1461 * ($i + 4800 + int(($j - 14) / 12)) / 4); $jd = $jd + int(367 * ($j - 2 - int(($j - 14) / 12) * 12) / 12); $jd = $jd - int(3 * int((($i + 4900 + int(($j - 14) / 12)) / 100)) / 4); } 