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

Re: [Fun With Perl] One of those fancy .sig files



At 03:58 8/06/99 -0400, Michael G Schwern wrote:

>I really don't want to go out into the muggy night to hop a subway
>home... so I'm procratinating.

>> >> #!/usr/bin/perl -- Russ Allbery, Just Another Perl Hacker
>> >> $^=q;@!>~|{>krw>yn{u<$$<[~||<Juukn{=,<S~|}<Jwx}qn{<Yn{u<Qjltn{ > 0gFzD gD,
[etc]

>This is then run through the s///, matching against any scalar
>variable (/\$./).  The /ee is a JAPH favorite.  It means that any
>variables matched will be interpolated, then eval'd.

I never worked it out before, and you've explained it excellently.

(And I thought my 'random number generator hack' was clever, instead of
merely being obfuscated.)

Dac

[include random number generator hack]

#catedobfus!
$s1=$s2=44;$m=2147483647;$q=127773;$a=16807;$r=2836;
my @code = qw(
                163 19 54           570 330 221 
                7 361 255           164 164 115 
                266 330    361 19   231 9   255 
                           33  62  
                           570 7  
                           263 263
              );
for (my $loop = 0; $loop < $#code; $loop++)
{
  for (my $loop2 = $code[$loop]; $loop2 > 1; $loop2--)
  {
     $thisr = &r() % 256;
  }
  $thisr = &r() % 256;
  $b[$loop] = chr($thisr);
  $s1=$s2;
}  
eval(lc(join(/ /,@b)));

sub r
{
    $h=$s1/$q;$l=$s1%$q;$t=$a*$l-$r*$h;if($t>0){$s1=$t}else{$s1=$t+$m};
    return $s1;
}


__
Andrew Clayton   ******************************* Boldly Going Backwards
dac@pcug.org.au  * http://www.pcug.org.au/~dac * Pentium II-400 + stuff.    
This Looks Horrid******************************* in a proportional font!



==== Want to unsubscribe from this list? (Don't you love us anymore?)
==== Well, if you insist... Send mail with body "unsubscribe" to
==== fwp-request@technofile.org