[21823] in Perl-Users-Digest

home help back first fref pref prev next nref lref last post

Perl-Users Digest, Issue: 4027 Volume: 10

daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Fri Oct 25 06:05:43 2002

Date: Fri, 25 Oct 2002 03:05:10 -0700 (PDT)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)

Perl-Users Digest           Fri, 25 Oct 2002     Volume: 10 Number: 4027

Today's topics:
    Re: [REPOST] Need advice on a project (wrt to tie'ing t <bik.mido@tiscalinet.it>
    Re: [REPOST] Need advice on a project (wrt to tie'ing t <bik.mido@tiscalinet.it>
    Re: cgi/pipes not working properly <goldbb2@earthlink.net>
    Re: Extracting Data With Regex: Can Pay For This Answer <not@gonnatell.ya>
    Re: finding all local ip addresses <nobull@mail.com>
        Help with code that cuts off text at first <br> <phil.latio@f-in-stupid.co.uk>
    Re: HTML <img ...> <goldbb2@earthlink.net>
    Re: HTML <img ...> <goldbb2@earthlink.net>
        HTML:Parser (Andrew Gatt)
        MD5 password encryption <cheechew@hotmail.com>
    Re: MD5 password encryption <nobull@mail.com>
    Re: perl bug? "eq" less restrictive then  "=="? <goldbb2@earthlink.net>
    Re: Regular Expression (Tor Fuglerud)
        setreuid on AIX 5.1 with perl 5.6.1 <techcog@acme.N3T>
    Re: setreuid on AIX 5.1 with perl 5.6.1 (Villy Kruse)
        Tk help, please. <spikey-wan@bigfoot.com>
    Re: Trying to make a GUI. <spikey-wan@bigfoot.com>
    Re: waitpid not returning pid? <goldbb2@earthlink.net>
        Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)

----------------------------------------------------------------------

Date: Fri, 25 Oct 2002 09:58:14 +0200
From: Michele Dondi <bik.mido@tiscalinet.it>
Subject: Re: [REPOST] Need advice on a project (wrt to tie'ing to a file and general strategy)
Message-Id: <64shrukjp3kbd8nnvg2hee71p60cunviqp@4ax.com>

On Thu, 24 Oct 2002 02:07:11 -0400, Benjamin Goldberg
<goldbb2@earthlink.net> wrote:

>> I still have some questions: as you might have read I had thought of
>> using a hash whose values are array refences. In any case it seems
>> that I can't have a tied hash of arrays, can I?!?
>
>You can and you can't.  You can't, in that if you simply store an
>arrayref in a tied database, it gets stringified as something like
>"ARRAY(0x12345678)", and of course you can't go from this string back to
>an array (especially not between seperate executions of perl).  You can,

This is exactly what I meant with "I can't".

>in that if you install a filter (see perldoc perldbmfilter), you can
>have your arrayrefs automatically serialized when stored in the database
>and deserialized when retrieved.
>
>Depending on what's in those array references you mentioned, serializing
>can be easy or hard.

Easy, in my case.

>> Most probably I wasn't clear. I was thinking of an algorithm taking
>> checksums only of files with the same size.
>
>Why?  It seems to me that you would have to keep a list of all the
>different possible sizes, then.  Also, it sounds like you'd first need
>to do one pass to find out what each of the different sizes are, and
>then, for each different size, another pass to deal with (find checksums
>of) all files of that particular size.  This sounds like many, many,
>passes through the filesystem.
>
>If you just make one pass through the filesystem, calculating checksums,
>that should be sufficient.

Well, my old, ineffiecient and error prone script used only one pipe
and one pass through the filesystem. The pass was done once for all
with 'find' (printing filesizes directly), then it sorted by filesize
and uniq'ed for printing duplicate entries only. Then checksums were
calculated on these entries and the stream was sorted again by the
checksums and uniq'ed for printing duplicates once again. And that's
all...

>> My original, gross, shell script used the algorithm roughly described
>> above because taking a file size is *much* faster than taking a
>> checksum and two files having different sizes is a sufficient
>> condition for them to be different (mathematically, it's an
>> "invariant", isn't it?).
>
>Hmm.  I think I see what you're saying -- if there's only one file of a
>particular size, then you can be certain that it's not a duplicate of
>any other file.
>
>However, for every size for which there's more than one file of that
>size, you have to calculate a checksum of all of those files.  So
>really, the only point of keeping track of file sizes is that little "if
>there's only one file of this size" optomization.

Yes, that's it. And in my experience this was a good optimization,
that is, without it, the process always took much more time, even if I
never did any quantitative verification about this.

>Not that it's a bad optimization, of course, but it doesn't seem like
>there's any way to use this and do only one pass through the filesystem.

Well, as I implicitly (through an example) said above, in a certain
sense you CAN do only one pass, at the expense of storing the
filenames (with paths).

>Ok, here's what I would add to my prior code:

Thanks, as in the previous case, it will take some time for me to
examine the provided code: what is elementary for you may be advanced
for me. And I'm rather busy these days, D'Oh!

In the meantime I managed to give a peek into File::Find::Duplicates.
Quite surprisingly, it's not difficult at all to understand, so I have
plenty of sources to take inspiration from...

In the meanwhile I also ran the duplicates finding function from the
above mentioned module and contrarily to what I had expected, it
worked without going out of memory. So, after all, the tie strategy
was not needed at all for this task, but I'm happy to have begun
exploring it!

Also, I won't use File::Find::Duplicates, because
(1) It returns a hask keyed on the filesize. But each array (ref)
associated to a key might contain more than one group of duplicate
files.
(2) I have to do other, massive, "operations" on the files and I don't
want to browse through the directory tree twice. In this respect
tieing might become a strict necessity.


Michele
-- 
Liberta' va cercando, ch'e' si' cara,
Come sa chi per lei vita rifiuta.
           [Dante Alighieri, Purg. I, 71-72]

I am my own country - United States Confederate of Me!
           [Pennywise, "My own country"]


------------------------------

Date: Fri, 25 Oct 2002 09:58:22 +0200
From: Michele Dondi <bik.mido@tiscalinet.it>
Subject: Re: [REPOST] Need advice on a project (wrt to tie'ing to a file and general strategy)
Message-Id: <orthrug352fd692cmp6shbmmsibd969lc0@4ax.com>

On Wed, 23 Oct 2002 09:27:02 GMT, Bart Lateur <bart.lateur@pandora.be>
wrote:

>Sam Holden wrote:

>>The DB library uses platform specifics in the database. Things like
>>the endianness of the machine, and the size of ints. That means a
>>database created on one machine isn't necessarily readable on another.
>
>That's right. You can blame C, which is used to compile the database
>engine for that. C tends to use pretty abstract names for its data
>types, like int(), which physically are stored in the for the machine
>most efficient way, but with no garantees at all about portability. So
>all bets on endianness, or number of bits per integer, are off.
>
>It is often possible to compile a database engine to use a portable file
>format, but with a bad impact on efficiency. Speed could easily halve.

Thank you both for your answer, I was taking too naive assumptions
about this. However it would be nice to have the possibility of
choosing a less efficient, though portable database file format. For
example, under Linux I have my vfat FS's mounted and could acces the
database with no conversions...


Michele
-- 
Liberta' va cercando, ch'e' si' cara,
Come sa chi per lei vita rifiuta.
           [Dante Alighieri, Purg. I, 71-72]

I am my own country - United States Confederate of Me!
           [Pennywise, "My own country"]


------------------------------

Date: Fri, 25 Oct 2002 00:41:54 -0400
From: Benjamin Goldberg <goldbb2@earthlink.net>
Subject: Re: cgi/pipes not working properly
Message-Id: <3DB8CB92.CB226D8F@earthlink.net>

Stephen Choularton wrote:
> 
> Hi
> 
> I am trying to fire up a process which then talks to a game
> interpreter.
> 
> I can run it at the command line and it passes the info but when I try
> and run it from a browser it doesn't get the text output at all.
> 
> The code is:
[snip too much code]

Show us the smallest possible running example which demonstrates the
problem.  Eliminate *everything* not relevant.

-- 
my $n = 2; print +(split //, 'e,4c3H r ktulrnsJ2tPaeh'
 ."\n1oa! er")[map $n = ($n * 24 + 30) % 31, (42) x 26]


------------------------------

Date: Fri, 25 Oct 2002 07:47:53 GMT
From: matt <not@gonnatell.ya>
Subject: Re: Extracting Data With Regex: Can Pay For This Answer!
Message-Id: <JG6u9.70466$Hj7.38245@rwcrnsc53>

Barry Krusch wrote:

> Based on my ridiculously primitive knowledge of Perl, the following
> regular expression construct ought to extract the e-mail addresses
> from the data below.  It doesn't.
> 
> +++++++++++ START
> 
> while (<DATA>)
> {
>  
> $_ =~ s/<(.+)>/$1/;
> 


You are not substituting anything before the '<', so it stays there. 

Try this: $_ =~ s/.+<(.+)>/$1/;


Send the money to the charity of your choice.



------------------------------

Date: 25 Oct 2002 08:53:58 +0100
From: Brian McCauley <nobull@mail.com>
Subject: Re: finding all local ip addresses
Message-Id: <u9y98m6h5s.fsf@wcl-l.bham.ac.uk>

Mathieu Jondet <mat_trash@hotmail.com> writes:

>     i'd like to know how i can find all the ip addresses currently
> available on a server.

Just curious, but what information are you intending to convey by the
use of the term "a server"?

> This means the ip aliases available on all the
> ethernet cards.

Be aware that it is quite possible under some OSs for a machine
(expecially one being used as an HTTPS server) respond to a whole IP
prefix.  These addresses are not necessarily associated with any
particular interface.

> Is it possible without parsing the output of the ifconfig command ? I
> also would like to use it under mod_perl.
> 
> Does anyone have a clue ?

AFAIK there's no widely supported way to get this information in
anything like a standardised format on a variety of OSs except SNMP.

This of course means that the server must allow you to access SNMP at
least in read-only mode.

Unfortunately I've never used Net::SNMP so I can't show you example
Perl code.

-- 
     \\   ( )
  .  _\\__[oo
 .__/  \\ /\@
 .  l___\\
  # ll  l\\
 ###LL  LL\\


------------------------------

Date: Fri, 25 Oct 2002 04:17:50 GMT
From: "Phil Latio" <phil.latio@f-in-stupid.co.uk>
Subject: Help with code that cuts off text at first <br>
Message-Id: <OB3u9.1432695$P95.142097@post-03.news.easynews.com>

Sorry for starting a second thread but how do you change the below so
instead of cutting text off at 100 characters, it cuts off at the first <br>
(line break).

my $yourlength = 100;
my $SText = $Text;
if (length($SText) > $yourlength)
  {
  $yourlength--;
  $SText =~ s/<br>/ /g;
  if (length($SText) > $yourlength)
    {
    $SText = substr($SText,0,index($SText,' ',$yourlength));
    $SText .= qq~...~;
    }
  }
$newshtml .= $SText;


I tried removing $yourlength and the IF statements then inserting variants
of the below code but either got all the text or none at all. I must be
close.

{
$text =~ s/
 .*//is;
$tmpnewshtml =$1;
}
{
$newshtml .= $text;
}
$newshtml .= qq~
~;






------------------------------

Date: Fri, 25 Oct 2002 00:45:53 -0400
From: Benjamin Goldberg <goldbb2@earthlink.net>
Subject: Re: HTML <img ...>
Message-Id: <3DB8CC81.C4D34262@earthlink.net>

Tassilo v. Parseval wrote:
> 
> Also sprach Antonio:
> 
> > I am trying to build a webcounter-type thing, such that a call to an
> > image in HTML of the form
> >
> ><img src="server/cgi-bin/counter.pl">
> >
> > not only compiles some stats based on the environment variables
> > httpd passes to the CGI, but also actually displays an image, be it
> > a counter, or just any random thing (better than the missing image
> > icon it presently shows).
> >
> > Does anyone know how to make a perl script 'return' an image?
> 
> Like any other language would do it. You first print the correct
> content-type header and after that send the image-data to stdout:
> 
>     use CGI qw/:standard/;
>     ...
>     open IMG, "image.png" or die ...;
>     binmode IMG; # only needed for Windows-boxes
>     print header("image/png");
>     print do { local $/; <IMG> };

Don't forget to binmode(STDOUT), too!

> You can also create an image within your script. There are a bunch of
> modules for that: Image::Magic, GD, GD::Graph etc.
[snip]

-- 
my $n = 2; print +(split //, 'e,4c3H r ktulrnsJ2tPaeh'
 ."\n1oa! er")[map $n = ($n * 24 + 30) % 31, (42) x 26]


------------------------------

Date: Fri, 25 Oct 2002 00:57:40 -0400
From: Benjamin Goldberg <goldbb2@earthlink.net>
Subject: Re: HTML <img ...>
Message-Id: <3DB8CF44.C29021E7@earthlink.net>

Antonio wrote:
> 
> I am trying to build a webcounter-type thing, such that a call to an
> image in HTML of the form
> 
> <img src="server/cgi-bin/counter.pl">
> 
> not only compiles some stats based on the environment variables httpd
> passes to the CGI, but also actually displays an image, be it a
> counter, or just any random thing (better than the missing image icon
> it presently shows).

This isn't precisely an answer to your question, but I happen to recall
seeing a counter program where the html web page *containing* the
counter was generated by CGI, and pointed to static image files, rather
than having a static html page refering to a CGI which produced a
dynamic image.

That is, it did something like:

   # After doing counter stuff (That is, open file, flock,
   # read in $counter, increment, write it back, close file), do this:
   my @digits;
   DIGITS: {
      unshift @digits, $counter % 10;
      $counter = int($counter/10) and redo;
   }
   for my $digit (@digits) {
      print qq[<IMG SRC="/images/counter/$digit.gif"\n].
            qq[  ALT="$digit" WIDTH=25 HEIGHT=50\n>];
   }

One major advantage of this is that you don't need any kind of image
generation code -- so if you've problems installing GD, or with figuring
out how to use it, this is one way to go.

-- 
my $n = 2; print +(split //, 'e,4c3H r ktulrnsJ2tPaeh'
 ."\n1oa! er")[map $n = ($n * 24 + 30) % 31, (42) x 26]


------------------------------

Date: 25 Oct 2002 02:11:14 -0700
From: sailordwarf@hotmail.com (Andrew Gatt)
Subject: HTML:Parser
Message-Id: <6f904ea5.0210250111.252eafe3@posting.google.com>

Hi, i'm new to Perl and am trying to knock up a site search program. 
I wanted the text out of the html pages and so after a bit of a look
around used the HTML:Parser module. It seems to be working fine except
it returns javascript functions as part of the text.
e.g.
<SCRIPT LANGUAGE="JavaScript">    not text
<!--                              text
function x                        text
{

}
//-->                             text
</script>                         not text

Am i right in thinking there is some way to filter (HTML:Filter??)
these javascript functions out. Something like, ignore everything
between script tags. If there is could someone point me in the right
direction.
Any ideas??

Andrew


------------------------------

Date: Fri, 25 Oct 2002 15:32:00 +0800
From: "Chee Chew" <cheechew@hotmail.com>
Subject: MD5 password encryption
Message-Id: <aparm8$o0$1@reader01.singnet.com.sg>

I am planning to put MD5 password encryption text into the program for
security. This program will be using the password to login to some other
machine to run certain batch job. Which perl module should I start with and
any example on that. Thanks




------------------------------

Date: 25 Oct 2002 08:56:29 +0100
From: Brian McCauley <nobull@mail.com>
Subject: Re: MD5 password encryption
Message-Id: <u93cqv6iaf.fsf@wcl-l.bham.ac.uk>

"Chee Chew" <cheechew@hotmail.com> writes:

> I am planning to put MD5 password encryption text into the program for
> security. This program will be using the password to login to some other
> machine to run certain batch job.

Those two statement don't make sense together.

MD5 is irreversable - you cannot retrieve the plaintext password or a
password-equivalent.

I suspect your real question is essentially the same as that asked
numerous previous threads in this newsgroup. The most recent such
thread being "Hiding password variables in PERL" earlier this week.

(You don't believe that you really have a Perl question).

> Which perl module should I start with and any example on that.

If you really wanted to implement the standard MD5 password encryption
algorithm you could try a module with MD5 and some contration of the
word "password" in its name.  But I don't think that's really want you
are talking about.

-- 
     \\   ( )
  .  _\\__[oo
 .__/  \\ /\@
 .  l___\\
  # ll  l\\
 ###LL  LL\\


------------------------------

Date: Fri, 25 Oct 2002 01:07:49 -0400
From: Benjamin Goldberg <goldbb2@earthlink.net>
Subject: Re: perl bug? "eq" less restrictive then  "=="?
Message-Id: <3DB8D1A5.2D218AAC@earthlink.net>

HEISERER DANIEL wrote:
[snip]
> So I broke down the code to another loop
>         if ($a eq $b && $a!=$b){
>                 print "strange: $a eq $b && $a!=$b";
>         }
> strange: 1 eq 1 && 1!=1

Try doing

   my $c = $a - $b;
   print $c, "\n";

Also

   print unpack("H*", pack("d", $_)), "\n" for $a, $b;

-- 
my $n = 2; print +(split //, 'e,4c3H r ktulrnsJ2tPaeh'
 ."\n1oa! er")[map $n = ($n * 24 + 30) % 31, (42) x 26]


------------------------------

Date: Fri, 25 Oct 2002 08:27:17 GMT
From: t.k.fuglerud@hf.uio.no (Tor Fuglerud)
Subject: Re: Regular Expression
Message-Id: <3db8ff9b.6896907@nntp.uio.no>

On 24 Oct 2002 12:49:26 -0700, rnoory@videotron.ca (R.Noory) wrote:

>Now I have words with hyphen. I would like to write a single rule to
>take care of every word that have hyphen or apostrophe.

s/(\'\S+|\S+-)/($1)/

You probably should read the perlre manpage if you want to use re's like this.
Note that the above wont handle words with both hypens and apostrophes




------------------------------

Date: Fri, 25 Oct 2002 06:20:27 GMT
From: "techcog@acme.N3T" <techcog@acme.N3T>
Subject: setreuid on AIX 5.1 with perl 5.6.1
Message-Id: <1667478.7PQ82lKnDD@gryphon>

I've got perl 5.6.1 compiled on AIX and
I defined setreuid and setregid when I ran Configure.

But when I attempt to set the REAL_USER_ID in
a script running as root nothing happens.
I do know that I can change the EFFECTIVE_USER_ID.
But that's not enough, I need to use setreuid.

A small c program can call and use setreuid properly.

So has perl been crippled on AIX?  I know that in
previous versions of AIX setreuid was broken so
has some disabling bit of code been left around?
Or is it something else?




------------------------------

Date: 25 Oct 2002 07:13:32 GMT
From: vek@station02.ohout.pharmapartners.nl (Villy Kruse)
Subject: Re: setreuid on AIX 5.1 with perl 5.6.1
Message-Id: <slrnarhror.15o.vek@station02.ohout.pharmapartners.nl>

On Fri, 25 Oct 2002 06:20:27 GMT,
    techcog@acme.N3T <techcog@acme.N3T> wrote:


>I've got perl 5.6.1 compiled on AIX and
>I defined setreuid and setregid when I ran Configure.
>
>But when I attempt to set the REAL_USER_ID in
>a script running as root nothing happens.
>I do know that I can change the EFFECTIVE_USER_ID.
>But that's not enough, I need to use setreuid.
>
>A small c program can call and use setreuid properly.
>
>So has perl been crippled on AIX?  I know that in
>previous versions of AIX setreuid was broken so
>has some disabling bit of code been left around?
>Or is it something else?
>
>


The AIX kernel does not allow setting the real user id without
at the same time setting the effective and saved user id to the
same value, and that only if the effective user id is superuser
at the time of the call.  Usualy the C function setuid()
is used for that purpose but with the right combination of
arguments to setreuid() you can get the same result.

The perl view if the set?uid() function doesn't fit very well
to this behaviour; that is, I havent found a perl construct
that would reliable do the same as setuid(newuid) does in a
C program.  The POSIX::setuid on perl 5.005 isn't even close to
the behaviour of the corresponding C function of the same name .



Villy


------------------------------

Date: Fri, 25 Oct 2002 10:29:47 +0100
From: "Richard S Beckett" <spikey-wan@bigfoot.com>
Subject: Tk help, please.
Message-Id: <apb2vl$9bq$1@newshost.mot.com>

Hello.

I'm creating my first GUI, using active state on win32. I seem to be able to
find slightly better documentation for Tk, so I'm going with that.

I'm having a problem with the menu bar command. If I run the script as is, I
get the following error:
Failed to AUTOLOAD 'Tk::Frame::command' at script.pl line 31

If I add "use Tk::Frame::command;", I get:
Can't locate Tk/Frame/command.pm in @INC (@INC contains: D:/Perl/lib
D:/Perl/site/lib .) at script.pl line 6.
BEGIN failed--compilation aborted at script.pl line 6.

I tried using PPM to install Tk::Frame::command, but got this:
Installing package 'Tk-Frame-command'...
Error installing package 'Tk-Frame-command': Could not locate a PPD file for
package Tk-Frame-command

Please help me! :-)

Also, does anyone have any useful information on how to position buttons,
labels, etc within the window?

Thanks.

R.

Here's my current snippet, ripped from something else...

use strict;
use warnings;
use Tk;
use Tk::Menu;
use Tk::Widget;

# setup new window
my $main = new MainWindow;

# title window
$main->configure(-title => " My title", -background => "dark blue");

# set location on screen
$main->geometry ("+100+100");

# set window size
$main->minsize (qw(800 800));

# add a label
$main->Label(-text =>'Written by me.',
-width => 80, -background => "blue", -foreground => "white")->pack (-side =>
"top", -fill => "x");

# a menu bar
my $menu_bar=$main->Frame(-relief => "groove",
-borderwidth => 3,
-background => "grey")
->pack (-side => "top", -fill => "x");

my $menu=$menu_bar->Menubutton(-text=>"File",
-background => "grey",
-activebackground => "light grey",
-foreground => "white")
->pack (-side => "left");

# menu bar command
$menu_bar->command(-label => "Exit", -command => sub{$main->destroy});

# a quit button
$main->Button(-text => "Quit!",
-command => sub{$main->destroy})->pack;

MainLoop;





------------------------------

Date: Fri, 25 Oct 2002 09:13:13 +0100
From: "Richard S Beckett" <spikey-wan@bigfoot.com>
Subject: Re: Trying to make a GUI.
Message-Id: <apauqn$8dt$1@newshost.mot.com>

Thanks guys.

Yes, I have read the documentation, but I find it difficult to get useful
information from it. For example, try using the active state docs to work
out how to set the window size.

I'd love to find some decent docs aimed for beginners, but I've had no luck
so far.

R.




------------------------------

Date: Fri, 25 Oct 2002 01:17:10 -0400
From: Benjamin Goldberg <goldbb2@earthlink.net>
Subject: Re: waitpid not returning pid?
Message-Id: <3DB8D3D6.E9720848@earthlink.net>

dkoleary@attbi.com wrote:
[snip]
> #             @args = ("ls","-ld","$filesystem/$file");
> #             system(@args);
> #             my $rc = $? >> 8;
> #             exit $rc;

This is silly.  It would be much easier to simply do:

   exec( "ls", "-ld", $filesystem . "/" . $file );
   die "Exec failed: $!\n";

The exec replaces the current process with the specified program -- this
results in one fewer process to worry about.

-- 
my $n = 2; print +(split //, 'e,4c3H r ktulrnsJ2tPaeh'
 ."\n1oa! er")[map $n = ($n * 24 + 30) % 31, (42) x 26]


------------------------------

Date: 6 Apr 2001 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin) 
Subject: Digest Administrivia (Last modified: 6 Apr 01)
Message-Id: <null>


Administrivia:

The Perl-Users Digest is a retransmission of the USENET newsgroup
comp.lang.perl.misc.  For subscription or unsubscription requests, send
the single line:

	subscribe perl-users
or:
	unsubscribe perl-users

to almanac@ruby.oce.orst.edu.  

To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.

To request back copies (available for a week or so), send your request
to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
where x is the volume number and y is the issue number.

For other requests pertaining to the digest, send mail to
perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
sending perl questions to the -request address, I don't have time to
answer them even if I did know the answer.


------------------------------
End of Perl-Users Digest V10 Issue 4027
***************************************


home help back first fref pref prev next nref lref last post