RE: :Graph - Script archive for beg.
>Another question, would anyone be interested in helping me create a >script/snippet archive geared towards newbies? I would be interested in careting something like that. What did you have in mind?
RE: :Telnet
I tried running an example from the document specified below by John and get the error: timed-out waiting for password prompt at ./newtry.cgi line 7 My code from the document is below: #!/usr/bin/perl use Net::Telnet; $telnet = new Net::Telnet (Timeout=>10, Errmode=>'die', Prompt=>'/>$ $/i'); $telnet->open('...'); $telnet->login('...', '...'); print $telnet->cmd('who'); (I have deleted host, user and passwd). Could anyone suggest what I should change? Thanks very much. Vrunda [ Wrote 8 lines ] [c151@myclass router]ic./newtry.cgi -Original Message- From: John Edwards To: 'Prabhu, Vrunda P (UMC-Student)'; '[EMAIL PROTECTED] ' Sent: 6/22/01 10:18 AM Subject: RE: :Telnet This might be of use to you http://www.perlfect.com/articles/telnet.shtml -Original Message- From: Prabhu, Vrunda P (UMC-Student) [mailto:[EMAIL PROTECTED]] Sent: 22 June 2001 16:07 To: '[EMAIL PROTECTED] ' Subject: RE: :Telnet I too have questions on the same topic - Net::Telnet. I tried the following code: (I have deleted the hostname, username and passwd), and get the error: read timed-out at ./teltry.cgi line 13 #!/usr/bin/perl my ($hostname, $line, $passwd, $pop, $username); $hostname="..."; $username="..."; $passwd="..."; use Net::Telnet (); $pop=new Net::Telnet (Telnetmode => 0); $pop->open(Host => $hostname, Port =>80); $line= $pop->getline; die $line unless $line=~/^\+OK/; $pop->print("user $username"); $line = $pop->getline; die $line unless $line =~/^\+OK/; $pop->print("pass $passwd"); $line=$pop->getline; Thanks in advance for any and all suggestions. My aim is to be able to telnet to a site, and once there work allow the user to work at the site, till the time when the user might wish to telnet to another site. If the second site is connected to the first, the program shoudl make an internal check, and allow the user to telnet there without asking for his/her username password again. I as you see in the code above am at the very early stages of attempting to connect to a remote site. Thanks again. Vrunda -Original Message- From: Tom Yarrish To: [EMAIL PROTECTED] Sent: 6/21/01 3:22 PM Subject: Net::Telnet Hey all, Okay, I'm playing with Net::Telnet, and I've gotten to the point where I connect to the other machine. What I wanted to know is, can I run and interact with a program just using the cmd() part of that module? Or do I need to use another module to do that. Basically what I'm going is telnetting to a server, then running a program (perl scripts actually), then feeding it some options, and then exiting out of the program. Sort of like this (snipped) $session->cmd("/home/export/user/Xmenu.pl"); $session->cmd("2"); # This is fed to the Xmenu.pl program $session->cmd("1"); # and this $session->cmd("y"); # and this Thanks, Tom -- #!/usr/bin/perl -w # 526-byte qrpff, Keith Winstein and Marc Horowitz <[EMAIL PROTECTED]> # MPEG 2 PS VOB file on stdin -> descrambled output on stdout # arguments: title key bytes in least to most-significant order $_='while(read+STDIN,$_,2048){$a=29;$c=142;if((@a=unx"C*",$_)[20]&48){$h =5; $_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a[--$h+84])}@ARGV;s/...$/1$&/; $d= unxV,xb25,$_;$b=73;$e=256|(ord$b[4])<<9|ord$b[3];$d=$d>>8^($f=($t=255)&( $d >>12^$d>>4^$d^$d/8))<<17,$e=$e>>8^($t&($g=($q=$e>>14&7^$e)^$q*8^$q<<6))< <9 ,$_=(map{$_%16or$t^=$c^=($m=(11,10,116,100,11,122,20,100)[$_/16%8])&110; $t ^=(72,@z=(64,72,$a^=12*($_%16-2?0:$m&17)),$b^=$_%64?12:0,@z)[$_%8]}(16.. 271)) [$_]^(($h>>=8)+=$f+(~$g&$t))for@a[128..$#a]}print+x"C*",@a}';s/x/pack+/g ;eval --Confidentiality--. This E-mail is confidential. It should not be read, copied, disclosed or used by any person other than the intended recipient. Unauthorised use, disclosure or copying by whatever medium is strictly prohibited and may be unlawful. If you have received this E-mail in error please contact the sender immediately and delete the E-mail from your system.
RE: :Telnet
I too have questions on the same topic - Net::Telnet. I tried the following code: (I have deleted the hostname, username and passwd), and get the error: read timed-out at ./teltry.cgi line 13 #!/usr/bin/perl my ($hostname, $line, $passwd, $pop, $username); $hostname="..."; $username="..."; $passwd="..."; use Net::Telnet (); $pop=new Net::Telnet (Telnetmode => 0); $pop->open(Host => $hostname, Port =>80); $line= $pop->getline; die $line unless $line=~/^\+OK/; $pop->print("user $username"); $line = $pop->getline; die $line unless $line =~/^\+OK/; $pop->print("pass $passwd"); $line=$pop->getline; Thanks in advance for any and all suggestions. My aim is to be able to telnet to a site, and once there work allow the user to work at the site, till the time when the user might wish to telnet to another site. If the second site is connected to the first, the program shoudl make an internal check, and allow the user to telnet there without asking for his/her username password again. I as you see in the code above am at the very early stages of attempting to connect to a remote site. Thanks again. Vrunda -Original Message- From: Tom Yarrish To: [EMAIL PROTECTED] Sent: 6/21/01 3:22 PM Subject: Net::Telnet Hey all, Okay, I'm playing with Net::Telnet, and I've gotten to the point where I connect to the other machine. What I wanted to know is, can I run and interact with a program just using the cmd() part of that module? Or do I need to use another module to do that. Basically what I'm going is telnetting to a server, then running a program (perl scripts actually), then feeding it some options, and then exiting out of the program. Sort of like this (snipped) $session->cmd("/home/export/user/Xmenu.pl"); $session->cmd("2"); # This is fed to the Xmenu.pl program $session->cmd("1"); # and this $session->cmd("y"); # and this Thanks, Tom -- #!/usr/bin/perl -w # 526-byte qrpff, Keith Winstein and Marc Horowitz <[EMAIL PROTECTED]> # MPEG 2 PS VOB file on stdin -> descrambled output on stdout # arguments: title key bytes in least to most-significant order $_='while(read+STDIN,$_,2048){$a=29;$c=142;if((@a=unx"C*",$_)[20]&48){$h =5; $_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a[--$h+84])}@ARGV;s/...$/1$&/; $d= unxV,xb25,$_;$b=73;$e=256|(ord$b[4])<<9|ord$b[3];$d=$d>>8^($f=($t=255)&( $d >>12^$d>>4^$d^$d/8))<<17,$e=$e>>8^($t&($g=($q=$e>>14&7^$e)^$q*8^$q<<6))< <9 ,$_=(map{$_%16or$t^=$c^=($m=(11,10,116,100,11,122,20,100)[$_/16%8])&110; $t ^=(72,@z=(64,72,$a^=12*($_%16-2?0:$m&17)),$b^=$_%64?12:0,@z)[$_%8]}(16.. 271)) [$_]^(($h>>=8)+=$f+(~$g&$t))for@a[128..$#a]}print+x"C*",@a}';s/x/pack+/g ;eval
Perl DB Question again
Victor had graciously answered some of my questions earlier about using DB_File in a perl CGI. I am now wondering about the following: I have the following code: ** $filename="./mockalias.db"; tie %ALIAS, 'DB_File', "$filename", O_RDWR|O_CREAT, 0644, $DB_HASH; my ($key, $values); open Fin, "mockalias"; while () { ($key, $value) = split(/:/, $_); $ALIAS{$key} = $value; } close Fin; ### If Continue is selected, new entry will be created in the Alias file ### if ($recstatus eq "Continue") { $ALIAS{$login} = $loginaddress; ### If update is selected if ($recstatus eq "Update") { $ALIAS{$login} = $loginaddress; ###HTML code... } ### If delete is selected if ($recstatus eq "Delete") { delete $ALIAS{$firstname}; delete $ALIAS{$login}; ##HTML code... } untie %ALIAS; * My question is the following: When one gives the update, delete commands, is the file mockalias also accordingly updated? (MY file seems to not have any changes). Once, the hash ALIAS is "untied", should one then rewrite to the file from the hash? Thanks in advance. ( I am a student, as you can tell from my address above, however, none of this is my homework. I am doing an internship and have been assigned two projects, but no one here is there to help me, so I truly appreciate all your help). Thanks again. Vrunda
RE: PERL DB Question
1) unless you have previously populated the db file, it will start off as empty. I guess, this is my most basic and pressing question. A file by the name mockalias exists which already has the usernames and e-mail addresses separated by : When I use the tie command, am I not pulling up all the existing information in that file, into a hash? 2) $ALIAS is the reference to the hash, maybe you were trying to say print %ALIAS? and may I suggest a little loop like this : foreach (keys %hash) { print "$_ :: $hash{$_}\n"; } which will print the content of the hash in a nice looking fashion. Thanks very much, I will try it right away. Tor. "Prabhu, Vrunda P (UMC-Student)" wrote: > Thanks for your help. I did try the modification you suggested. Now the > program does not die (it does not have that option), however when I ask it > to list the contents of the file, it does not do anything either. Here is > my code again: > > #!/usr/bin/perl > > use CGI ':standard'; > use DB_File; > > $filename = "./mockalias"; > > tie %ALIAS, "DB_File", "$filename", O_RDWR|O_CREAT, 0644, $DB_HASH; > $key = "vrunda"; > if (exists $ALIAS{$key}) > { > print "$key has value $ALIAS{$key}\n"; > } > print "$ALIAS"; > untie %ALIAS; > > -Original Message- > From: [EMAIL PROTECTED] > To: Prabhu, Vrunda P (UMC-Student) > Cc: '[EMAIL PROTECTED]' > Sent: 6/18/01 1:29 PM > Subject: Re: PERL DB Question > > Try this instead > > tie %ALIAS, "DB_File", "$filename", O_RDWR|O_CREAT, 0644, $DB_HASH; > > "Prabhu, Vrunda P (UMC-Student)" wrote: > > > I have an existing file, called mockalias that contains entries in the > > following format: > > > > username : e-mail address > > I want to use a hash %ALIAS to read the mockalias file into the hash, > and > > then be able to delete, > > update, add entries to this hash. When I run the following code, it > tells > > me that the file > > mockalias exists, and dies. How can I read the file into a hash and > > manipulate the entries > > of the hash? > > > > > > #!/usr/bin/perl > > use CGI ':standard'; > > use DB_File; > > $filename = "mockalias"; > > tie (%ALIAS, "DB_File", $filename) or > > die "cannot open file $filename:$!\n"; > > untie %ALIAS; > > > > Thanks in advance for your time. > > Vrunda
RE: PERL DB Question
Thanks for your help. I did try the modification you suggested. Now the program does not die (it does not have that option), however when I ask it to list the contents of the file, it does not do anything either. Here is my code again: #!/usr/bin/perl use CGI ':standard'; use DB_File; $filename = "./mockalias"; tie %ALIAS, "DB_File", "$filename", O_RDWR|O_CREAT, 0644, $DB_HASH; $key = "vrunda"; if (exists $ALIAS{$key}) { print "$key has value $ALIAS{$key}\n"; } print "$ALIAS"; untie %ALIAS; -----Original Message- From: [EMAIL PROTECTED] To: Prabhu, Vrunda P (UMC-Student) Cc: '[EMAIL PROTECTED]' Sent: 6/18/01 1:29 PM Subject: Re: PERL DB Question Try this instead tie %ALIAS, "DB_File", "$filename", O_RDWR|O_CREAT, 0644, $DB_HASH; "Prabhu, Vrunda P (UMC-Student)" wrote: > I have an existing file, called mockalias that contains entries in the > following format: > > username : e-mail address > I want to use a hash %ALIAS to read the mockalias file into the hash, and > then be able to delete, > update, add entries to this hash. When I run the following code, it tells > me that the file > mockalias exists, and dies. How can I read the file into a hash and > manipulate the entries > of the hash? > > > #!/usr/bin/perl > use CGI ':standard'; > use DB_File; > $filename = "mockalias"; > tie (%ALIAS, "DB_File", $filename) or > die "cannot open file $filename:$!\n"; > untie %ALIAS; > > Thanks in advance for your time. > Vrunda
PERL DB Question
I have an existing file, called mockalias that contains entries in the following format: username : e-mail address I want to use a hash %ALIAS to read the mockalias file into the hash, and then be able to delete, update, add entries to this hash. When I run the following code, it tells me that the file mockalias exists, and dies. How can I read the file into a hash and manipulate the entries of the hash? #!/usr/bin/perl use CGI ':standard'; use DB_File; $filename = "mockalias"; tie (%ALIAS, "DB_File", $filename) or die "cannot open file $filename:$!\n"; untie %ALIAS; Thanks in advance for your time. Vrunda