You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
(1) |
Oct
(1) |
Nov
(26) |
Dec
(7) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(5) |
Feb
(3) |
Mar
(11) |
Apr
(10) |
May
(2) |
Jun
(5) |
Jul
(13) |
Aug
(2) |
Sep
(3) |
Oct
(10) |
Nov
(18) |
Dec
(29) |
2002 |
Jan
(12) |
Feb
(14) |
Mar
(73) |
Apr
(28) |
May
(21) |
Jun
(39) |
Jul
(40) |
Aug
(42) |
Sep
(20) |
Oct
(4) |
Nov
(9) |
Dec
(18) |
2003 |
Jan
(2) |
Feb
(8) |
Mar
(6) |
Apr
(24) |
May
(24) |
Jun
(14) |
Jul
(16) |
Aug
(36) |
Sep
(34) |
Oct
(23) |
Nov
(4) |
Dec
(15) |
2004 |
Jan
(6) |
Feb
(13) |
Mar
(7) |
Apr
(5) |
May
(11) |
Jun
(5) |
Jul
(4) |
Aug
|
Sep
(2) |
Oct
(16) |
Nov
(4) |
Dec
(9) |
2005 |
Jan
(2) |
Feb
(1) |
Mar
(3) |
Apr
(10) |
May
(5) |
Jun
(13) |
Jul
(3) |
Aug
|
Sep
(7) |
Oct
(5) |
Nov
(1) |
Dec
(9) |
2006 |
Jan
|
Feb
(10) |
Mar
(22) |
Apr
(14) |
May
(5) |
Jun
(4) |
Jul
(19) |
Aug
(7) |
Sep
(16) |
Oct
(4) |
Nov
(1) |
Dec
(16) |
2007 |
Jan
(17) |
Feb
|
Mar
(35) |
Apr
(5) |
May
(20) |
Jun
(11) |
Jul
(33) |
Aug
(3) |
Sep
(2) |
Oct
(11) |
Nov
(23) |
Dec
(5) |
2008 |
Jan
(10) |
Feb
(9) |
Mar
|
Apr
(6) |
May
(8) |
Jun
(7) |
Jul
|
Aug
(3) |
Sep
(2) |
Oct
(1) |
Nov
|
Dec
(20) |
2009 |
Jan
(8) |
Feb
(8) |
Mar
(3) |
Apr
(8) |
May
(2) |
Jun
(11) |
Jul
(2) |
Aug
|
Sep
(3) |
Oct
(1) |
Nov
(7) |
Dec
(4) |
2010 |
Jan
(2) |
Feb
(1) |
Mar
(3) |
Apr
|
May
(2) |
Jun
(2) |
Jul
(7) |
Aug
(3) |
Sep
(7) |
Oct
(2) |
Nov
(1) |
Dec
(4) |
2011 |
Jan
(4) |
Feb
(5) |
Mar
|
Apr
(3) |
May
(2) |
Jun
|
Jul
(6) |
Aug
|
Sep
|
Oct
(6) |
Nov
|
Dec
|
2012 |
Jan
|
Feb
(1) |
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
(5) |
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
(7) |
Sep
(2) |
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
(30) |
Apr
(10) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
(12) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
(1) |
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2024 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
From: Eric T. <zi...@gm...> - 2006-07-25 17:14:16
|
In the following debug statement: spawn id(5): Does `sys hard\r\n' match: pattern #1: -ex `/# '? No. It shows that expect is reading back a \r\n (CR and a LF) when it is only sent with a \n (LF). Is there some sort of terminal translation that may be adding this extra bit on? \r\n as far as I know is only used by Windows based platforms. On Linux and BSD only thr LF is used (\n). I am assuming that it is some sort of tty or pty issue, could you offer some guidance in that area? Plus the "Connection was closed" message is returned to the client when the connection is lost. It does not really denote which side initiated it. I do know that sysread is failing to read from the socket which is causing $nread to be null which is causing $nread to be set to 0 which is causing the hard_close to be called. How can this not be an expect issue if all this is already known? Plus the fact that tcl expect and python expect as well as a manual ssh session via cli all work as they are suppose to, to me means that it has to be something in perl expect. On 7/25/06, Roland Giersig <RGi...@cp...> wrote: > > Hi Eric, > > there must be some other reason, it's definitively not Expect: > > > spawn id(5): Does `sys hard\r\nConnection to batista closed.\r\r\n' > > This clearly indicates that the ssh connection was lost on its own and > Expect got the EOF as a result of that. > > But I have no idea where that could come from, sorry... > [a hunch: maybe some issue with "\r" versus "\n", try send("sys > hard\r")] > > Regards, Roland > -- > RGi...@cp... > |
From: Roland G. <RGi...@cp...> - 2006-07-25 16:38:44
|
Hi Eric, there must be some other reason, it's definitively not Expect: > spawn id(5): Does `sys hard\r\nConnection to batista closed.\r\r\n' This clearly indicates that the ssh connection was lost on its own and Expect got the EOF as a result of that. But I have no idea where that could come from, sorry... [a hunch: maybe some issue with "\r" versus "\n", try send("sys hard\r")] Regards, Roland -- RGi...@cp... |
From: Eric T. <zi...@gm...> - 2006-07-25 15:24:19
|
Roland, Thanks for the heads up on the version. I did upgrade and it did make a little more sense but I still have the same issue. Here is the debug output when run with the latest version: _________________________________________________________________________________ Spawned 'ssh -l admin batista' spawn id(5) Pid: 30003 Tty: /dev/pts/4 at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 179 Expect::spawn('Expect', 'ssh -l admin batista') called at bug_15725 line 18 Starting EXPECT pattern matching... at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 559 Expect::expect('Expect=GLOB(0x8da4ddc)', 30, 'passphrase') called at bug_15725 line 22 spawn id(5): list of patterns: #1: -ex `passphrase' spawn id(5): Does `' match: pattern #1: -ex `passphrase'? No. Waiting for new data (30 seconds)... Enter passphrase for key '/root/.ssh/id_dsa': spawn id(5): Does `Enter passphrase for key \'/root/.ssh/id_dsa\': ' match: pattern #1: -ex `passphrase'? YES!! Before match string: `Enter ' Match string: `passphrase' After match string: ` for key \'/root/.ssh/id_dsa\': ' Matchlist: () Returning from expect successfully. ...recieved password prompt Sending 'password\n' to spawn id(5) at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1248 Expect::print('Expect=GLOB(0x8da4ddc)', 'password\x{a}') called at bug_15725 line 27 Starting EXPECT pattern matching... at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 559 Expect::expect('Expect=GLOB(0x8da4ddc)', 30, '/# ') called at bug_15725 line 28 spawn id(5): list of patterns: #1: -ex `/# ' spawn id(5): Does ` for key \'/root/.ssh/id_dsa\': ' match: pattern #1: -ex `/# '? No. Waiting for new data (30 seconds)... spawn id(5): Does ` for key \'/root/.ssh/id_dsa\': \r\n' match: pattern #1: -ex `/# '? No. Waiting for new data (30 seconds)... Last login: CLI on Tue Jul 25 15:05:45 2006 from 10.0.2.229 Custom OS v3.5 Copyright (c) 2000-2006 Some Company, Inc. All Rights Reserved. Welcome to Custom OS spawn id(5): Does ` for key \'/root/.ssh/id_dsa\': \r\nLast login: CLI on Tue Jul 25 15:05:45 2006 from 10.0.2.229\r\n\r\nCustom OS v3.5\r\nCopyright(c) 2000-2006 Some Company Inc. All Rights Reserved.\r\n\r\nWelcome to Custom OS\r\n\r\n' match: pattern #1: -ex `/# '? No. Waiting for new data (30 seconds)... admin@batista:/# spawn id(5): Does ` for key \'/root/.ssh/id_dsa\': \r\nLast login: CLI on Tue Jul 25 15:05:45 2006 from 10.0.2.229\r\n\r\nCustom OS v3.5\r\nCopyright(c) 2000-2006 Some Company, Inc. All Rights Reserved.\r\n\r\nWelcome to Custom OSr\n\r\nadmin@batista:/# ' match: pattern #1: -ex `/# '? YES!! Before match string: ` for key \'/root/.ssh/id_dsa\': \r\nLast login: CLI on Tue Jul 25 15:05:45 2006 from 10.0.2.229\r\n\r\nCustom OS v3.5\r\nCopyright (c) 2000-2006 Some Company, Inc. All Rights Reserved.\r\n\r\nWelcome to Custom OS\r\n\r\nadmin@batista:' Match string: `/# ' After match string: `' Matchlist: () Returning from expect successfully. Sending 'sys hard\n' to spawn id(5) at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1248 Expect::print('Expect=GLOB(0x8da4ddc)', 'sys hard\x{a}') called at bug_15725 line 32 Starting EXPECT pattern matching... at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 559 Expect::expect('Expect=GLOB(0x8da4ddc)', 30, '/# ') called at bug_15725 line 33 spawn id(5): list of patterns: #1: -ex `/# ' spawn id(5): Does `' match: pattern #1: -ex `/# '? No. Waiting for new data (30 seconds)... sys hard spawn id(5): Does `sys hard\r\n' match: pattern #1: -ex `/# '? No. Waiting for new data (30 seconds)... Connection to batista closed. spawn id(5): Does `sys hard\r\nConnection to batista closed.\r\r\n' match: pattern #1: -ex `/# '? No. Waiting for new data (30 seconds)... Returning from expect with TIMEOUT or EOF Error 03::Never got sec prompt, 3:Child PID 30003 exited with status 0 _________________________________________________________________________________ Here is the source to the script I am using in case that will help. _________________________________________________________________________________ #!/usr/bin/perl -w use strict; use Expect; my $username = "admin"; my $password = "password\n"; ##### flip this value to 0 to turn off stout and 1 to turn it on $Expect::Log_Stdout=1; # Lets see what expect is doing! $Expect::Exp_Internal = 1; #$Expect::Debug = 3; my $terminal = new Expect; $terminal->raw_pty(1); $terminal = Expect->spawn("ssh -l $username batista"); $terminal->log_file("test_err.txt"); unless ($terminal->expect(30,"passphrase")) { die "Error 01::Never got password prompt, ".$terminal->exp_error()."\n"; } print "...recieved password prompt\n"; $terminal->send($password); unless ($terminal->expect(30, '/# ')) { die "Error 02::Never got first prompt, ".$terminal->exp_error()."\n"; } $terminal->send("sys hard\n"); unless ($terminal->expect(30, '/# ')) { die "Error 03::Never got sec prompt, ".$terminal->exp_error()."\n"; } $terminal->send("exit\n"); $terminal->log_file(undef); _________________________________________________________________________________ This session does work normally from a cli ssh session and works fine using TCL expect and Python expect, just not perl expect. I think I have nailed down the location of the issue. It is the sysread() call on or around line 832 (v 1.20). After matching on the first promt and sending the "sys hard" command to the remote server this sysread call only reads back the echoed command and then detects 0 bytes read ($nread) and translates that to an EOF and does a hard close: $nread = 0 unless defined ($nread); if ($nread == 0) { ... ... blah $exp->hard_close(); } So it is the expect module that is sending the hard close to the distant end. The question is why does it not read the correct data from the socket and continue to try and match? The only thing it sees back once the sys hard command is sent is the sys hard command and then text saying the connection has been terminiated. On 7/25/06, Roland Giersig <RGi...@cp...> wrote: > > Hi Eric, > > please upgrade to the latest Expect version (1.20), as you obviously > have a version where _make_readable() doesn't work. :-( I'm sure that > the debug output will make much more sense then... ;-) > > Ah, yes, and sorry to all for that mistake! That blunder was a good case > to show that you always should follow the procedure: first create a > testcase for the bug, showing the bug in the old version. Then fix it > and test it with the testcase... > > Cheers! Roland > > > spawn id(5): Does `' > > match: > > pattern #1: -ex `'? YES!! > > Before match string: `' > > Match string: `' > > After match string: `' > > Matchlist: () > > -- > RGi...@cp... > |
From: Roland G. <RGi...@cp...> - 2006-07-25 06:49:18
|
Hi Eric, please upgrade to the latest Expect version (1.20), as you obviously have a version where _make_readable() doesn't work. :-( I'm sure that the debug output will make much more sense then... ;-) Ah, yes, and sorry to all for that mistake! That blunder was a good case to show that you always should follow the procedure: first create a testcase for the bug, showing the bug in the old version. Then fix it and test it with the testcase... Cheers! Roland > spawn id(5): Does `' > match: > pattern #1: -ex `'? YES!! > Before match string: `' > Match string: `' > After match string: `' > Matchlist: () -- RGi...@cp... |
From: Eric T. <zi...@gm...> - 2006-07-25 02:57:03
|
Hey, I am debugging a script using perl expect to ssh into a OpenBSD server that is running a custom OS on top of the BSD kernel. The OS resembles that of a Cisco IOS (menu driven type thing). The problem I am having is that the perl script spawns the ssh connection and logs in successfully. It then matches on the first prompt '/# /' and sends a command to the remote server. The command gets sent and the command gets echoed back and then the connection gets killed without waiting the timeout or anything. I am assuming it is a pty ot tty issue due to the nature of the remote system but have debugged these avenues with no results. I am unsure of how to proceed with this. The funny thing is that this perl expect script reads properly from the socket until after the first command is sent to the OS running on top of the OpenBSD kernel. It does expect match correclty on the first custom OS prompt though so I would assume that it is interacting with this OS properly. Here is some debugging output of this session: ____________________________________________________________________________________________ $Expect::Exp_Internal = 1; Output: Spawned 'ssh -l admin batista' spawn id(5) Pid: 16540 Tty: /dev/pts/5 at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 179 Expect::spawn('Expect', 'ssh -l admin batista') called at bug_15725 line 24 Starting EXPECT pattern matching... at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 548 Expect::expect('Expect=GLOB(0x9cd4384)', 30, 'passphrase') called at bug_15725 line 30 spawn id(5): list of patterns: #1: -ex `' spawn id(5): Does `' match: pattern #1: -ex `'? No. Waiting for new data (30 seconds)... Enter passphrase for key '/root/.ssh/id_dsa': spawn id(5): Does `' match: pattern #1: -ex `'? YES!! Before match string: `' Match string: `' After match string: `' Matchlist: () Returning from expect successfully. ...recieved password prompt Sending '' to spawn id(5) at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1236 Expect::print('Expect=GLOB(0x9cd4384)', 'somepass\x{a}') called at bug_15725 line 36 Starting EXPECT pattern matching... at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 548 Expect::expect('Expect=GLOB(0x9cd4384)', 30, '/# ') called at bug_15725 line 38 spawn id(5): list of patterns: #1: -ex `' spawn id(5): Does `' match: pattern #1: -ex `'? No. Waiting for new data (30 seconds)... spawn id(5): Does `' match: pattern #1: -ex `'? No. Waiting for new data (30 seconds)... Last login: CLI on Tue Jul 25 02:50:45 2006 from 10.0.2.229 spawn id(5): Does `' match: pattern #1: -ex `'? No. Waiting for new data (30 seconds)... Welcome to Custom OS spawn id(5): Does `' match: pattern #1: -ex `'? No. Waiting for new data (30 seconds)... admin@batista:/# spawn id(5): Does `' match: pattern #1: -ex `'? YES!! Before match string: `' Match string: `' After match string: `' Matchlist: () Returning from expect successfully. Sending '' to spawn id(5) at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1236 Expect::print('Expect=GLOB(0x9cd4384)', 'sys show\x{a}') called at bug_15725 line 47 Starting EXPECT pattern matching... at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 548 Expect::expect('Expect=GLOB(0x9cd4384)', 30, '/# ') called at bug_15725 line 49 spawn id(5): list of patterns: #1: -ex `' spawn id(5): Does `' match: pattern #1: -ex `'? No. Waiting for new data (30 seconds)... sys show spawn id(5): Does `' match: pattern #1: -ex `'? No. Waiting for new data (30 seconds)... Connection to batista closed. spawn id(5): Does `' match: pattern #1: -ex `'? No. Waiting for new data (30 seconds)... Returning from expect with TIMEOUT or EOF Error 03::Never got sec prompt, 3:Child PID 16540 exited with status 0 ____________________________________________________________________________________________ Here is some, $Expect::Debug = 3; Output: ____________________________________________________________________________________________ Spawned 'ssh -l admin batista' spawn id(5) Pid: 16567 Tty: /dev/pts/5 at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 179 Expect::spawn('Expect', 'ssh -l admin batista') called at bug_15725 line 24 Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1402. Closing . at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1402 Expect::hard_close('Expect=GLOB(0x9436ca0)') called at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1592 Expect::DESTROY('Expect=GLOB(0x9436ca0)') called at bug_15725 line 28 eval {...} called at bug_15725 line 28 Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1405. closed. Starting EXPECT pattern matching... at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 548 Expect::expect('Expect=GLOB(0x96403bc)', 30, 'passphrase') called at bug_15725 line 30 spawn id(5): beginning expect. Timeout: 30 seconds. Current time: Mon Jul 24 22:54:00 2006 Waiting for new data (30 seconds)... spawn id(5): new data. spawn id(5): read 46 byte(s). Enter passphrase for key '/root/.ssh/id_dsa': Returning from expect successfully. spawn id(5): accumulator: `' ...recieved password prompt Starting EXPECT pattern matching... at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 548 Expect::expect('Expect=GLOB(0x96403bc)', 30, '/# ') called at bug_15725 line 38 spawn id(5): beginning expect. Timeout: 30 seconds. Current time: Mon Jul 24 22:54:00 2006 Waiting for new data (30 seconds)... spawn id(5): new data. spawn id(5): read 2 byte(s). Waiting for new data (30 seconds)... spawn id(5): new data. spawn id(5): read 61 byte(s). Last login: CLI on Tue Jul 25 02:51:47 2006 from 10.0.1.125 Waiting for new data (30 seconds)... spawn id(5): new data. spawn id(5): read 113 byte(s). Welcome to CustomOS Waiting for new data (30 seconds)... spawn id(5): new data. spawn id(5): read 17 byte(s). admin@batista:/# Returning from expect successfully. spawn id(5): accumulator: `' Starting EXPECT pattern matching... at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 548 Expect::expect('Expect=GLOB(0x96403bc)', 30, '/# ') called at bug_15725 line 49 spawn id(5): beginning expect. Timeout: 30 seconds. Current time: Mon Jul 24 22:54:01 2006 Waiting for new data (30 seconds)... spawn id(5): new data. spawn id(5): read 10 byte(s). sys show Waiting for new data (30 seconds)... spawn id(5): new data. spawn id(5): read 32 byte(s). Connection to batista closed. Waiting for new data (30 seconds)... spawn id(5): new data. spawn id(5): EOF spawn id(5): exit(0x00) spawn id(5): closing... Closing spawn id(5). at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1402 Expect::hard_close('Expect=GLOB(0x96403bc)') called at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 867 Expect::_multi_expect(30, 'undef', 'ARRAY(0x969b074)') called at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 552 Expect::expect('Expect=GLOB(0x96403bc)', 30, '/# ') called at bug_15725 line 49 spawn id(5) closed. Returning from expect with TIMEOUT or EOF Error 03::Never got sec prompt, 3:Child PID 16567 exited with status 0 Closing spawn id(5). at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1402 Expect::hard_close('Expect=GLOB(0x96403bc)') called at /usr/lib/perl5/site_perl/5.8.6/Expect.pm line 1592 Expect::DESTROY('Expect=GLOB(0x96403bc)') called at bug_15725 line 0 eval {...} called at bug_15725 line 0 ____________________________________________________________________________________________ |
From: Roland G. <RGi...@cp...> - 2006-07-21 12:07:25
|
Bug-Fix-Release, recommended. + added early return to send and send_slow if filehandle was closed + added test for send_slow ! fixed bug in expect() param handling (exact pattern "0" was ignored) ! fixed bug in _make_readable() + now included example ssh.pl in MANIFEST so it gets packaged :-( -- RGi...@cp... |
From: Roland G. <RGi...@cp...> - 2006-07-18 13:33:31
|
Tty.xs: added some more letters to BSD allocation -- RGi...@cp... |
From: Roland G. <RGi...@cp...> - 2006-07-17 15:42:02
|
Bug-fix Release: fixed non-localized usage of $_ added new example ssh.pl -- RGi...@cp... |
From: Roland G. <RGi...@cp...> - 2006-07-17 15:10:13
|
Bug-Fix release, fixing issue with ioctl. -- RGi...@cp... |
From: Roland G. <RGi...@cp...> - 2006-07-14 09:15:07
|
> $ perl -MExpect -w -e 'Expect->new()->interact();' < /dev/null > handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. > handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. > handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. Well, it's rather clear why you get the warning here, because STDIN is /dev/null (which clearly is not a tty). Could you please post the relevant source code, how you set up that interact() call? Also, there are some systems where the master pty is not a tty (solaris and hp-ux), which would also result in that warning. Cheers, Roland -- RGi...@cp... |
From: Austin S. <te...@of...> - 2006-07-13 21:59:41
|
> > called from cron, etc.). > > I can do that, but I get the same warnings even if I run the above command > from a tty, or at least from a linux console, in addition to an xterm. > Presumably there's something else that needs to be done, but I don't know > what it is. Is the message meaningful? > The message means you are interacting with something other than a tty. That can often be a surprise. If you want to avoid the message you can either shut off warnings or set $expect->manual_stty(1) which will notify expect not to play with the tty settings during interact(). Austin |
From: Ken I. <fn...@ua...> - 2006-07-13 20:15:37
|
On Thu, Jul 13, 2006 at 10:52:46AM -0700, Austin Schutz wrote: > On Thu, Jul 13, 2006 at 12:16:10AM -0800, Ken Irving wrote: > > On Wed, Jul 12, 2006 at 12:27:44PM -0800, Ken Irving wrote: > > > I'm flailing with an error message that occurs following the interact() > > > method: > > > ... > > > > I guess it's a warning, showing up due to the -w flag: > > > > $ perl -MExpect -w -e 'Expect->new()->interact();' < /dev/null > > handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. > > handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. > > handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. > > > > but not without it. > > > > iirc (and this has been several years) it's necessary to make sure > ttys aren't echoing at each other when they interact, thus by default the > echoing mode is changed when this occurs. This obviously won't work if you > throw something other than a tty at it. > It's probably safe to just turn warnings off around that block if the > code is otherwise working. It's probably a reasonable warning to have. There > may be cases where you expect to be working with a tty but aren't (script > called from cron, etc.). I can do that, but I get the same warnings even if I run the above command from a tty, or at least from a linux console, in addition to an xterm. Presumably there's something else that needs to be done, but I don't know what it is. Is the message meaningful? Thanks, Ken -- Ken Irving, fn...@ua... |
From: Austin S. <te...@of...> - 2006-07-13 17:51:12
|
On Thu, Jul 13, 2006 at 12:16:10AM -0800, Ken Irving wrote: > On Wed, Jul 12, 2006 at 12:27:44PM -0800, Ken Irving wrote: > > I'm flailing with an error message that occurs following the interact() > > method: > > ... > > I guess it's a warning, showing up due to the -w flag: > > $ perl -MExpect -w -e 'Expect->new()->interact();' < /dev/null > handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. > handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. > handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. > > but not without it. > iirc (and this has been several years) it's necessary to make sure ttys aren't echoing at each other when they interact, thus by default the echoing mode is changed when this occurs. This obviously won't work if you throw something other than a tty at it. It's probably safe to just turn warnings off around that block if the code is otherwise working. It's probably a reasonable warning to have. There may be cases where you expect to be working with a tty but aren't (script called from cron, etc.). Austin |
From: Ken I. <fn...@ua...> - 2006-07-13 08:16:25
|
On Wed, Jul 12, 2006 at 12:27:44PM -0800, Ken Irving wrote: > I'm flailing with an error message that occurs following the interact() > method: > ... I guess it's a warning, showing up due to the -w flag: $ perl -MExpect -w -e 'Expect->new()->interact();' < /dev/null handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. handle id(5) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376. but not without it. -- Ken Irving, fn...@ua... |
From: Ken I. <fn...@ua...> - 2006-07-12 20:27:57
|
I'm flailing with an error message that occurs following the interact() method: handle id(4) is not a tty. Not changing mode at /usr/share/perl5/Expect.pm line 376, <> line 1. This message is repeated 2 times (i.e., 3 times total), and the script dies. I'm not sure what handle id(4) refers to; presumably 0-2 are stdin-stderr, 3 seems to be the spawned command pty output, so maybe 4 is the pty input? Oddly, after removing a bunch of i/o to the spawned command the system seems to interact properly, so I'm not sure how to cull this down to demo the problem. My system: perl v5.8.8 built for i486-linux-gnu-thread-multi debian unstable Linux hayes 2.6.16-2-686 #2 Mon May 22 23:10:59 UTC 2006 i686 GNU/Linux debian package libexpect-perl 1.15-4 $ for m in Expect IO IO::Tty IO::Pty IO::Stty; do \ perl -M${m} -e "print qq($m v\$${m}::VERSION\n)"; done Expect v1.15 IO v1.22 IO::Tty v1.02 IO::Pty v1.02 IO::Stty v.02 I thought maybe the trouble was due to aterm, but xterm does the same. My system does use Unix98 ptys, and otherwise seems fine. The error seems to come from a call to POSIX::istty()... I changed from interact() to $exp->interact(\*STDIN, 'BAIL!'), and the error message is now STDIN is not a tty. Not changing mode ... I somehow had the thing run correctly a time or two, but am back to the failure message. Any idea where I'm going wrong? -- Ken Irving, fn...@ua... |
From: Roland G. <RGi...@cp...> - 2006-07-11 15:35:29
|
Fixed hanging spawn on AIX (and others). Closing the pty slave in the parent would hang if the spawned child already wrote something to the pty. I added another sync via pipe to make sure that the parent first closes the slave before the child execs. -- RGi...@cp... |
From: Roland G. <RGi...@cp...> - 2006-07-03 09:17:34
|
I've tested this on AIX 5.3 and couldn't reproduce it consistently (I only had one hang in about ten tries). Seems to be a race condition somewhere, I'm looking into it. Regards, Roland On 6/28/06, Strickland, Lawrence P <law...@ui...> wrote: > > > > I just installed AIX 5.3 on a test machine and pulled Expect 1-17 down from > CPAN. When I run make test it hangs at Basic tests > > Any idea what is going wrong? > > /.cpan/build/Expect-1.17>make test > > PERL_DL_NONLAZY=1 /usr/bin/perl "-Iblib/lib" "-Iblib/arch" test.pl > > 1..36 > > Basic tests... -- RGi...@cp... |
From: Strickland, L. P <law...@ui...> - 2006-06-28 16:00:15
|
I just installed AIX 5.3 on a test machine and pulled Expect 1-17 down from CPAN. When I run make test it hangs at Basic tests... Any idea what is going wrong? /.cpan/build/Expect-1.17>make test PERL_DL_NONLAZY=3D1 /usr/bin/perl "-Iblib/lib" "-Iblib/arch" test.pl 1..36 Basic tests... |
From: Roland G. <RGi...@cp...> - 2006-06-09 14:16:39
|
Fixed include issue in Tty.xs. Should now build on HPUX. -- RGi...@cp... |
From: James K. <jk...@ve...> - 2006-06-01 23:16:48
|
On Jun 1, 2006, at 3:05 PM, expectperl-discuss- re...@li... wrote: > New releases: IO-Tty-1.04 and Expect-1.17 > Tested under Linux, AIX 5.3 and Cygwin. Feedback for other OSs > appreciated. > > Cheers, Roland > -- > RGi...@cp... > Both passed on this Darwin configuration: Summary of my perl5 (revision 5 version 8 subversion 7) configuration: Platform: osname=darwin, osvers=7.9.0, archname=darwin-2level uname='darwin macintosh.local 7.9.0 darwin kernel version 7.9.0: wed mar 30 20:11:17 pst 2005; root:xnuxnu-517.12.7.obj~1release_ppc power macintosh powerpc ' config_args='-de' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-fno-common -DPERL_DARWIN -no-cpp-precomp - fno-strict-aliasing -pipe -I/usr/local/include', optimize='-Os', cppflags='-no-cpp-precomp -fno-common -DPERL_DARWIN -no-cpp- precomp -fno-strict-aliasing -pipe -I/usr/local/include' ccversion='', gccversion='3.3 20030304 (Apple Computer, Inc. build 1495)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='env MACOSX_DEPLOYMENT_TARGET=10.3 cc', ldflags =' -L/usr/ local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-ldbm -ldl -lm -lc perllibs=-ldl -lm -lc libc=/usr/lib/libc.dylib, so=dylib, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_dyld.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' ' cccdlflags=' ', lddlflags=' -bundle -undefined dynamic_lookup -L/ usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: USE_LARGE_FILES Built under darwin Compiled at Oct 24 2005 21:19:21 @INC: /usr/local/lib/perl5/5.8.7/darwin-2level /usr/local/lib/perl5/5.8.7 /usr/local/lib/perl5/site_perl/5.8.7/darwin-2level /usr/local/lib/perl5/site_perl/5.8.7 /usr/local/lib/perl5/site_perl/5.8.4/darwin-2level /usr/local/lib/perl5/site_perl/5.8.4 /usr/local/lib/perl5/site_perl . |
From: Roland G. <RGi...@cp...> - 2006-06-01 11:53:51
|
Available from your nearest CPAN mirror or from http://sourceforge.net/project/showfiles.php?group_id=6894 Added z/OS support to IO-Tty. Added sys/pty.h (for HPUX) to IO-Tty. Fixed param check for expect() in Expect. Tested under Linux, AIX 5.3 and Cygwin. Feedback for other OSs appreciated. Cheers, Roland -- RGi...@cp... -- RGi...@cp... |
From: Roland G. <RGi...@cp...> - 2006-05-10 10:25:40
|
I am on vacation for the next two weeks and will add that when I'm back. In the meantime please fix it in your local copy and continue testing. Thanks for the feedback. Roland > I'm testing IO-Tty-1.03 on z/OS. I'm using perl-5.8.7 which > dynamically build. > The result of gmake test are as below > > gmake test > PERL_DL_NONLAZY=1 /u/isldev4/NPERL/bin/perl "-Iblib/lib" > "-Iblib/arch" test.pl > 1..4 > Configuration: -DHAVE_GRANTPT -DHAVE_LIBUTIL_H -DHAVE_PTSNAME > -DHAVE_PTY_H -DHAV > E_SIGACTION -DHAVE_SYS_PTYIO_H -DHAVE_SYS_STROPTS_H -DHAVE_TERMIO_H > -DHAVE_TERMI > OS_H -DHAVE_TTYNAME -DHAVE_UNLOCKPT -DHAVE_UTIL_H > Checking for appropriate ioctls: > Checking that returned fd's don't clash with stdin/out/err... > trying BSD /dev/pty??... > Cannot open a pty at test.pl line 42 > child exit=33024 > not ok 1 > # Test failed at test.pl line 52. > Checking if child gets pty as controlling terminal... > trying BSD /dev/pty??... > Cannot open a pty at test.pl line 58 > gmake: *** [test_dynamic] Error 129 > > As you remember sometime back we were discussing about the problems > i was facing when building IO-Tty-1.02.The one problem related to > Makefile.PL has been resolved in your new release but the other > problem is still present which is causing the gmake test to fail. > > The part of the code which causing this problem is below in bold > > > { > /* BSD-style pty code. */ > char buf[64]; > char tbuf[64]; > int i; > const char *ptymajors = > "pqrstuvwxyzabcdefghijklmnoABCDEFGHIJKLMNOPQRSTUVWXYZ"; > const char *ptyminors = "0123456789abcdef"; > int num_minors = strlen(ptyminors); > int num_ptys = strlen(ptymajors) * num_minors; > > #if PTY_DEBUG > if (print_debug) > fprintf(stderr, "trying BSD /dev/pty??...\n"); > #endif > for (i = 0; i < num_ptys; i++) { > sprintf(buf, "/dev/pty%c%c", > ptymajors[i / num_minors], > ptyminors[i % num_minors]); > sprintf(tbuf, "/dev/tty%c%c", > ptymajors[i / num_minors], > ptyminors[i % num_minors]); > if (strlcpy(namebuf, tbuf, namebuflen) >= namebuflen) { > warn("ERROR: pty_allocate: ttyname truncated"); > return 0; > } > This is because on z/OS if you see the output > > $>ls /dev/pty* > > /dev/ptyp0000 /dev/ptyp0051 /dev/ptyp0102 /dev/ptyp0153 > /dev/ptyp0204 > /dev/ptyp0001 /dev/ptyp0052 /dev/ptyp0103 /dev/ptyp0154 > /dev/ptyp0205 > /dev/ptyp0002 /dev/ptyp0053 /dev/ptyp0104 /dev/ptyp0155 > /dev/ptyp0206 > /dev/ptyp0003 /dev/ptyp0054 /dev/ptyp0105 /dev/ptyp0156 > /dev/ptyp0207 > /dev/ptyp0004 /dev/ptyp0055 /dev/ptyp0106 /dev/ptyp0157 > /dev/ptyp0208 > /dev/ptyp0005 /dev/ptyp0056 /dev/ptyp0107 /dev/ptyp0158 > /dev/ptyp0209 > /dev/ptyp0006 /dev/ptyp0057 /dev/ptyp0108 /dev/ptyp0159 > /dev/ptyp0210 > /dev/ptyp0007 /dev/ptyp0058 /dev/ptyp0109 /dev/ptyp0160 > /dev/ptyp0211 > /dev/ptyp0008 /dev/ptyp0059 /dev/ptyp0110 /dev/ptyp0161 > /dev/ptyp0212 > /dev/ptyp0009 /dev/ptyp0060 /dev/ptyp0111 /dev/ptyp0162 > /dev/ptyp0213 > /dev/ptyp0010 /dev/ptyp0061 /dev/ptyp0112 /dev/ptyp0163 > /dev/ptyp0214 > /dev/ptyp0011 /dev/ptyp0062 /dev/ptyp0113 /dev/ptyp0164 > /dev/ptyp0215 > /dev/ptyp0012 /dev/ptyp0063 /dev/ptyp0114 /dev/ptyp0165 > /dev/ptyp0216 > /dev/ptyp0013 /dev/ptyp0064 /dev/ptyp0115 /dev/ptyp0166 > /dev/ptyp0217 > /dev/ptyp0014 /dev/ptyp0065 /dev/ptyp0116 /dev/ptyp0167 > /dev/ptyp0218 > /dev/ptyp0015 /dev/ptyp0066 /dev/ptyp0117 /dev/ptyp0168 > /dev/ptyp0219 > /dev/ptyp0016 /dev/ptyp0067 /dev/ptyp0118 /dev/ptyp0169 > /dev/ptyp0220 > /dev/ptyp0017 /dev/ptyp0068 /dev/ptyp0119 /dev/ptyp0170 > /dev/ptyp0221 > /dev/ptyp0018 /dev/ptyp0069 /dev/ptyp0120 /dev/ptyp0171 > /dev/ptyp0222 > /dev/ptyp0019 /dev/ptyp0070 /dev/ptyp0121 /dev/ptyp0172 > /dev/ptyp0223 > /dev/ptyp0020 /dev/ptyp0071 /dev/ptyp0122 /dev/ptyp0173 > /dev/ptyp0224 > /dev/ptyp0021 /dev/ptyp0072 /dev/ptyp0123 /dev/ptyp0174 > /dev/ptyp0225 > /dev/ptyp0022 /dev/ptyp0073 /dev/ptyp0124 /dev/ptyp0175 > /dev/ptyp0226 > /dev/ptyp0023 /dev/ptyp0074 /dev/ptyp0125 /dev/ptyp0176 > /dev/ptyp0227 > /dev/ptyp0024 /dev/ptyp0075 /dev/ptyp0126 /dev/ptyp0177 > /dev/ptyp0228 > /dev/ptyp0025 /dev/ptyp0076 /dev/ptyp0127 /dev/ptyp0178 > /dev/ptyp0229 > /dev/ptyp0026 /dev/ptyp0077 /dev/ptyp0128 /dev/ptyp0179 > /dev/ptyp0230 > /dev/ptyp0027 /dev/ptyp0078 /dev/ptyp0129 /dev/ptyp0180 > /dev/ptyp0231 > /dev/ptyp0028 /dev/ptyp0079 /dev/ptyp0130 /dev/ptyp0181 > /dev/ptyp0232 > /dev/ptyp0029 /dev/ptyp0080 /dev/ptyp0131 /dev/ptyp0182 > /dev/ptyp0233 > /dev/ptyp0030 /dev/ptyp0081 /dev/ptyp0132 /dev/ptyp0183 > /dev/ptyp0234 > /dev/ptyp0031 /dev/ptyp0082 /dev/ptyp0133 /dev/ptyp0184 > /dev/ptyp0235 > /dev/ptyp0032 /dev/ptyp0083 /dev/ptyp0134 /dev/ptyp0185 > /dev/ptyp0236 > /dev/ptyp0033 /dev/ptyp0084 /dev/ptyp0135 /dev/ptyp0186 > /dev/ptyp0237 > /dev/ptyp0034 /dev/ptyp0085 /dev/ptyp0136 /dev/ptyp0187 > /dev/ptyp0238 > /dev/ptyp0035 /dev/ptyp0086 /dev/ptyp0137 /dev/ptyp0188 > /dev/ptyp0239 > /dev/ptyp0036 /dev/ptyp0087 /dev/ptyp0138 /dev/ptyp0189 > /dev/ptyp0240 > /dev/ptyp0037 /dev/ptyp0088 /dev/ptyp0139 /dev/ptyp0190 > /dev/ptyp0241 > /dev/ptyp0038 /dev/ptyp0089 /dev/ptyp0140 /dev/ptyp0191 > /dev/ptyp0242 > /dev/ptyp0039 /dev/ptyp0090 /dev/ptyp0141 /dev/ptyp0192 > /dev/ptyp0243 > /dev/ptyp0040 /dev/ptyp0091 /dev/ptyp0142 /dev/ptyp0193 > /dev/ptyp0244 > /dev/ptyp0041 /dev/ptyp0092 /dev/ptyp0143 /dev/ptyp0194 > /dev/ptyp0245 > /dev/ptyp0042 /dev/ptyp0093 /dev/ptyp0144 /dev/ptyp0195 > /dev/ptyp0246 > /dev/ptyp0043 /dev/ptyp0094 /dev/ptyp0145 /dev/ptyp0196 > /dev/ptyp0247 > /dev/ptyp0044 /dev/ptyp0095 /dev/ptyp0146 /dev/ptyp0197 > /dev/ptyp0248 > /dev/ptyp0045 /dev/ptyp0096 /dev/ptyp0147 /dev/ptyp0198 > /dev/ptyp0249 > /dev/ptyp0046 /dev/ptyp0097 /dev/ptyp0148 /dev/ptyp0199 > /dev/ptyp0250 > /dev/ptyp0047 /dev/ptyp0098 /dev/ptyp0149 /dev/ptyp0200 > /dev/ptyp0251 > /dev/ptyp0048 /dev/ptyp0099 /dev/ptyp0150 /dev/ptyp0201 > /dev/ptyp0252 > /dev/ptyp0049 /dev/ptyp0100 /dev/ptyp0151 /dev/ptyp0202 > /dev/ptyp0253 > /dev/ptyp0050 /dev/ptyp0101 /dev/ptyp0152 /dev/ptyp0203 > /dev/ptyp0254 > > > $>ls /dev/tty* > /dev/tty /dev/ttyp0051 /dev/ttyp0103 /dev/ttyp0155 > /dev/ttyp0207 > /dev/ttyp0000 /dev/ttyp0052 /dev/ttyp0104 /dev/ttyp0156 > /dev/ttyp0208 > /dev/ttyp0001 /dev/ttyp0053 /dev/ttyp0105 /dev/ttyp0157 > /dev/ttyp0209 > /dev/ttyp0002 /dev/ttyp0054 /dev/ttyp0106 /dev/ttyp0158 > /dev/ttyp0210 > /dev/ttyp0003 /dev/ttyp0055 /dev/ttyp0107 /dev/ttyp0159 > /dev/ttyp0211 > /dev/ttyp0004 /dev/ttyp0056 /dev/ttyp0108 /dev/ttyp0160 > /dev/ttyp0212 > /dev/ttyp0005 /dev/ttyp0057 /dev/ttyp0109 /dev/ttyp0161 > /dev/ttyp0213 > /dev/ttyp0006 /dev/ttyp0058 /dev/ttyp0110 /dev/ttyp0162 > /dev/ttyp0214 > /dev/ttyp0007 /dev/ttyp0059 /dev/ttyp0111 /dev/ttyp0163 > /dev/ttyp0215 > /dev/ttyp0008 /dev/ttyp0060 /dev/ttyp0112 /dev/ttyp0164 > /dev/ttyp0216 > /dev/ttyp0009 /dev/ttyp0061 /dev/ttyp0113 /dev/ttyp0165 > /dev/ttyp0217 > /dev/ttyp0010 /dev/ttyp0062 /dev/ttyp0114 /dev/ttyp0166 > /dev/ttyp0218 > /dev/ttyp0011 /dev/ttyp0063 /dev/ttyp0115 /dev/ttyp0167 > /dev/ttyp0219 > /dev/ttyp0012 /dev/ttyp0064 /dev/ttyp0116 /dev/ttyp0168 > /dev/ttyp0220 > /dev/ttyp0013 /dev/ttyp0065 /dev/ttyp0117 /dev/ttyp0169 > /dev/ttyp0221 > /dev/ttyp0014 /dev/ttyp0066 /dev/ttyp0118 /dev/ttyp0170 > /dev/ttyp0222 > /dev/ttyp0015 /dev/ttyp0067 /dev/ttyp0119 /dev/ttyp0171 > /dev/ttyp0223 > /dev/ttyp0016 /dev/ttyp0068 /dev/ttyp0120 /dev/ttyp0172 > /dev/ttyp0224 > /dev/ttyp0017 /dev/ttyp0069 /dev/ttyp0121 /dev/ttyp0173 > /dev/ttyp0225 > /dev/ttyp0018 /dev/ttyp0070 /dev/ttyp0122 /dev/ttyp0174 > /dev/ttyp0226 > /dev/ttyp0019 /dev/ttyp0071 /dev/ttyp0123 /dev/ttyp0175 > /dev/ttyp0227 > /dev/ttyp0020 /dev/ttyp0072 /dev/ttyp0124 /dev/ttyp0176 > /dev/ttyp0228 > /dev/ttyp0021 /dev/ttyp0073 /dev/ttyp0125 /dev/ttyp0177 > /dev/ttyp0229 > /dev/ttyp0022 /dev/ttyp0074 /dev/ttyp0126 /dev/ttyp0178 > /dev/ttyp0230 > /dev/ttyp0023 /dev/ttyp0075 /dev/ttyp0127 /dev/ttyp0179 > /dev/ttyp0231 > /dev/ttyp0024 /dev/ttyp0076 /dev/ttyp0128 /dev/ttyp0180 > /dev/ttyp0232 > /dev/ttyp0025 /dev/ttyp0077 /dev/ttyp0129 /dev/ttyp0181 > /dev/ttyp0233 > /dev/ttyp0026 /dev/ttyp0078 /dev/ttyp0130 /dev/ttyp0182 > /dev/ttyp0234 > /dev/ttyp0027 /dev/ttyp0079 /dev/ttyp0131 /dev/ttyp0183 > /dev/ttyp0235 > /dev/ttyp0028 /dev/ttyp0080 /dev/ttyp0132 /dev/ttyp0184 > /dev/ttyp0236 > /dev/ttyp0029 /dev/ttyp0081 /dev/ttyp0133 /dev/ttyp0185 > /dev/ttyp0237 > /dev/ttyp0030 /dev/ttyp0082 /dev/ttyp0134 /dev/ttyp0186 > /dev/ttyp0238 > /dev/ttyp0031 /dev/ttyp0083 /dev/ttyp0135 /dev/ttyp0187 > /dev/ttyp0239 > /dev/ttyp0032 /dev/ttyp0084 /dev/ttyp0136 /dev/ttyp0188 > /dev/ttyp0240 > /dev/ttyp0033 /dev/ttyp0085 /dev/ttyp0137 /dev/ttyp0189 > /dev/ttyp0241 > /dev/ttyp0034 /dev/ttyp0086 /dev/ttyp0138 /dev/ttyp0190 > /dev/ttyp0242 > /dev/ttyp0035 /dev/ttyp0087 /dev/ttyp0139 /dev/ttyp0191 > /dev/ttyp0243 > /dev/ttyp0036 /dev/ttyp0088 /dev/ttyp0140 /dev/ttyp0192 > /dev/ttyp0244 > /dev/ttyp0037 /dev/ttyp0089 /dev/ttyp0141 /dev/ttyp0193 > /dev/ttyp0245 > /dev/ttyp0038 /dev/ttyp0090 /dev/ttyp0142 /dev/ttyp0194 > /dev/ttyp0246 > /dev/ttyp0039 /dev/ttyp0091 /dev/ttyp0143 /dev/ttyp0195 > /dev/ttyp0247 > /dev/ttyp0040 /dev/ttyp0092 /dev/ttyp0144 /dev/ttyp0196 > /dev/ttyp0248 > /dev/ttyp0041 /dev/ttyp0093 /dev/ttyp0145 /dev/ttyp0197 > /dev/ttyp0249 > /dev/ttyp0042 /dev/ttyp0094 /dev/ttyp0146 /dev/ttyp0198 > /dev/ttyp0250 > /dev/ttyp0043 /dev/ttyp0095 /dev/ttyp0147 /dev/ttyp0199 > /dev/ttyp0251 > /dev/ttyp0044 /dev/ttyp0096 /dev/ttyp0148 /dev/ttyp0200 > /dev/ttyp0252 > /dev/ttyp0045 /dev/ttyp0097 /dev/ttyp0149 /dev/ttyp0201 > /dev/ttyp0253 > /dev/ttyp0046 /dev/ttyp0098 /dev/ttyp0150 /dev/ttyp0202 > /dev/ttyp0254 > /dev/ttyp0047 /dev/ttyp0099 /dev/ttyp0151 /dev/ttyp0203 > /dev/ttyp0255 > /dev/ttyp0048 /dev/ttyp0100 /dev/ttyp0152 /dev/ttyp0204 > /dev/ttyp0049 /dev/ttyp0101 /dev/ttyp0153 /dev/ttyp0205 > /dev/ttyp0050 /dev/ttyp0102 /dev/ttyp0154 /dev/ttyp0206 > > So the code never generates any one of these pty or tty and when it > tries to open that it fails. > > > This can be resolved by adding this code > > for (i = 0; i < 255; i++) { > sprintf(buf,"/dev/ptyp%0.4d",i); > sprintf(tbuf,"/dev/ttyp%0.4d",i); > > which will generate the corrrect names of pty and tty as required > by z/OS. > > Thanks & Regards > Yaseen > > > Roland Giersig <RGi...@cp...> wrote: Available from your > nearest CPAN mirror. > > I finally found the time for incorporating some bugfixes and doing > some > testing, unfortunately only on Linux, AIX 5.3 and Cygwin. Feedback > for > other OSs appreciated. > > IO-Tty shouldn't warn about bad ioctl constants anymore and also > build > better on HPUX and Z/OS (and any other compiler that uses shell > metachars for compiler options). > > For Expect I (hopefully) fixed a hangup-problem on AIX 5.2, also a > hangup for send_slow and $? corruption in DESTROY. > > Cheers, Roland > -- > RGi...@cp... > > > ------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, > security? > Get stuff done quickly with pre-integrated technology to make your > job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache > Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Expectperl-discuss mailing list > Exp...@li... > https://lists.sourceforge.net/lists/listinfo/expectperl-discuss > > > > --------------------------------- > Blab-away for as little as 1¢/min. Make PC-to-Phone Calls using > Yahoo! Messenger with Voice. -- RGi...@cp... |
From: Roland G. <RGi...@cp...> - 2006-05-10 10:25:32
|
I am on vacation for the next two weeks and will add that when I'm back. In the meantime please fix it in your local copy and continue testing. Thanks for the feedback. Roland > I'm testing IO-Tty-1.03 on z/OS. I'm using perl-5.8.7 which > dynamically build. > The result of gmake test are as below > > gmake test > PERL_DL_NONLAZY=1 /u/isldev4/NPERL/bin/perl "-Iblib/lib" > "-Iblib/arch" test.pl > 1..4 > Configuration: -DHAVE_GRANTPT -DHAVE_LIBUTIL_H -DHAVE_PTSNAME > -DHAVE_PTY_H -DHAV > E_SIGACTION -DHAVE_SYS_PTYIO_H -DHAVE_SYS_STROPTS_H -DHAVE_TERMIO_H > -DHAVE_TERMI > OS_H -DHAVE_TTYNAME -DHAVE_UNLOCKPT -DHAVE_UTIL_H > Checking for appropriate ioctls: > Checking that returned fd's don't clash with stdin/out/err... > trying BSD /dev/pty??... > Cannot open a pty at test.pl line 42 > child exit=33024 > not ok 1 > # Test failed at test.pl line 52. > Checking if child gets pty as controlling terminal... > trying BSD /dev/pty??... > Cannot open a pty at test.pl line 58 > gmake: *** [test_dynamic] Error 129 > > As you remember sometime back we were discussing about the problems > i was facing when building IO-Tty-1.02.The one problem related to > Makefile.PL has been resolved in your new release but the other > problem is still present which is causing the gmake test to fail. > > The part of the code which causing this problem is below in bold > > > { > /* BSD-style pty code. */ > char buf[64]; > char tbuf[64]; > int i; > const char *ptymajors = > "pqrstuvwxyzabcdefghijklmnoABCDEFGHIJKLMNOPQRSTUVWXYZ"; > const char *ptyminors = "0123456789abcdef"; > int num_minors = strlen(ptyminors); > int num_ptys = strlen(ptymajors) * num_minors; > > #if PTY_DEBUG > if (print_debug) > fprintf(stderr, "trying BSD /dev/pty??...\n"); > #endif > for (i = 0; i < num_ptys; i++) { > sprintf(buf, "/dev/pty%c%c", > ptymajors[i / num_minors], > ptyminors[i % num_minors]); > sprintf(tbuf, "/dev/tty%c%c", > ptymajors[i / num_minors], > ptyminors[i % num_minors]); > if (strlcpy(namebuf, tbuf, namebuflen) >= namebuflen) { > warn("ERROR: pty_allocate: ttyname truncated"); > return 0; > } > This is because on z/OS if you see the output > > $>ls /dev/pty* > > /dev/ptyp0000 /dev/ptyp0051 /dev/ptyp0102 /dev/ptyp0153 > /dev/ptyp0204 > /dev/ptyp0001 /dev/ptyp0052 /dev/ptyp0103 /dev/ptyp0154 > /dev/ptyp0205 > /dev/ptyp0002 /dev/ptyp0053 /dev/ptyp0104 /dev/ptyp0155 > /dev/ptyp0206 > /dev/ptyp0003 /dev/ptyp0054 /dev/ptyp0105 /dev/ptyp0156 > /dev/ptyp0207 > /dev/ptyp0004 /dev/ptyp0055 /dev/ptyp0106 /dev/ptyp0157 > /dev/ptyp0208 > /dev/ptyp0005 /dev/ptyp0056 /dev/ptyp0107 /dev/ptyp0158 > /dev/ptyp0209 > /dev/ptyp0006 /dev/ptyp0057 /dev/ptyp0108 /dev/ptyp0159 > /dev/ptyp0210 > /dev/ptyp0007 /dev/ptyp0058 /dev/ptyp0109 /dev/ptyp0160 > /dev/ptyp0211 > /dev/ptyp0008 /dev/ptyp0059 /dev/ptyp0110 /dev/ptyp0161 > /dev/ptyp0212 > /dev/ptyp0009 /dev/ptyp0060 /dev/ptyp0111 /dev/ptyp0162 > /dev/ptyp0213 > /dev/ptyp0010 /dev/ptyp0061 /dev/ptyp0112 /dev/ptyp0163 > /dev/ptyp0214 > /dev/ptyp0011 /dev/ptyp0062 /dev/ptyp0113 /dev/ptyp0164 > /dev/ptyp0215 > /dev/ptyp0012 /dev/ptyp0063 /dev/ptyp0114 /dev/ptyp0165 > /dev/ptyp0216 > /dev/ptyp0013 /dev/ptyp0064 /dev/ptyp0115 /dev/ptyp0166 > /dev/ptyp0217 > /dev/ptyp0014 /dev/ptyp0065 /dev/ptyp0116 /dev/ptyp0167 > /dev/ptyp0218 > /dev/ptyp0015 /dev/ptyp0066 /dev/ptyp0117 /dev/ptyp0168 > /dev/ptyp0219 > /dev/ptyp0016 /dev/ptyp0067 /dev/ptyp0118 /dev/ptyp0169 > /dev/ptyp0220 > /dev/ptyp0017 /dev/ptyp0068 /dev/ptyp0119 /dev/ptyp0170 > /dev/ptyp0221 > /dev/ptyp0018 /dev/ptyp0069 /dev/ptyp0120 /dev/ptyp0171 > /dev/ptyp0222 > /dev/ptyp0019 /dev/ptyp0070 /dev/ptyp0121 /dev/ptyp0172 > /dev/ptyp0223 > /dev/ptyp0020 /dev/ptyp0071 /dev/ptyp0122 /dev/ptyp0173 > /dev/ptyp0224 > /dev/ptyp0021 /dev/ptyp0072 /dev/ptyp0123 /dev/ptyp0174 > /dev/ptyp0225 > /dev/ptyp0022 /dev/ptyp0073 /dev/ptyp0124 /dev/ptyp0175 > /dev/ptyp0226 > /dev/ptyp0023 /dev/ptyp0074 /dev/ptyp0125 /dev/ptyp0176 > /dev/ptyp0227 > /dev/ptyp0024 /dev/ptyp0075 /dev/ptyp0126 /dev/ptyp0177 > /dev/ptyp0228 > /dev/ptyp0025 /dev/ptyp0076 /dev/ptyp0127 /dev/ptyp0178 > /dev/ptyp0229 > /dev/ptyp0026 /dev/ptyp0077 /dev/ptyp0128 /dev/ptyp0179 > /dev/ptyp0230 > /dev/ptyp0027 /dev/ptyp0078 /dev/ptyp0129 /dev/ptyp0180 > /dev/ptyp0231 > /dev/ptyp0028 /dev/ptyp0079 /dev/ptyp0130 /dev/ptyp0181 > /dev/ptyp0232 > /dev/ptyp0029 /dev/ptyp0080 /dev/ptyp0131 /dev/ptyp0182 > /dev/ptyp0233 > /dev/ptyp0030 /dev/ptyp0081 /dev/ptyp0132 /dev/ptyp0183 > /dev/ptyp0234 > /dev/ptyp0031 /dev/ptyp0082 /dev/ptyp0133 /dev/ptyp0184 > /dev/ptyp0235 > /dev/ptyp0032 /dev/ptyp0083 /dev/ptyp0134 /dev/ptyp0185 > /dev/ptyp0236 > /dev/ptyp0033 /dev/ptyp0084 /dev/ptyp0135 /dev/ptyp0186 > /dev/ptyp0237 > /dev/ptyp0034 /dev/ptyp0085 /dev/ptyp0136 /dev/ptyp0187 > /dev/ptyp0238 > /dev/ptyp0035 /dev/ptyp0086 /dev/ptyp0137 /dev/ptyp0188 > /dev/ptyp0239 > /dev/ptyp0036 /dev/ptyp0087 /dev/ptyp0138 /dev/ptyp0189 > /dev/ptyp0240 > /dev/ptyp0037 /dev/ptyp0088 /dev/ptyp0139 /dev/ptyp0190 > /dev/ptyp0241 > /dev/ptyp0038 /dev/ptyp0089 /dev/ptyp0140 /dev/ptyp0191 > /dev/ptyp0242 > /dev/ptyp0039 /dev/ptyp0090 /dev/ptyp0141 /dev/ptyp0192 > /dev/ptyp0243 > /dev/ptyp0040 /dev/ptyp0091 /dev/ptyp0142 /dev/ptyp0193 > /dev/ptyp0244 > /dev/ptyp0041 /dev/ptyp0092 /dev/ptyp0143 /dev/ptyp0194 > /dev/ptyp0245 > /dev/ptyp0042 /dev/ptyp0093 /dev/ptyp0144 /dev/ptyp0195 > /dev/ptyp0246 > /dev/ptyp0043 /dev/ptyp0094 /dev/ptyp0145 /dev/ptyp0196 > /dev/ptyp0247 > /dev/ptyp0044 /dev/ptyp0095 /dev/ptyp0146 /dev/ptyp0197 > /dev/ptyp0248 > /dev/ptyp0045 /dev/ptyp0096 /dev/ptyp0147 /dev/ptyp0198 > /dev/ptyp0249 > /dev/ptyp0046 /dev/ptyp0097 /dev/ptyp0148 /dev/ptyp0199 > /dev/ptyp0250 > /dev/ptyp0047 /dev/ptyp0098 /dev/ptyp0149 /dev/ptyp0200 > /dev/ptyp0251 > /dev/ptyp0048 /dev/ptyp0099 /dev/ptyp0150 /dev/ptyp0201 > /dev/ptyp0252 > /dev/ptyp0049 /dev/ptyp0100 /dev/ptyp0151 /dev/ptyp0202 > /dev/ptyp0253 > /dev/ptyp0050 /dev/ptyp0101 /dev/ptyp0152 /dev/ptyp0203 > /dev/ptyp0254 > > > $>ls /dev/tty* > /dev/tty /dev/ttyp0051 /dev/ttyp0103 /dev/ttyp0155 > /dev/ttyp0207 > /dev/ttyp0000 /dev/ttyp0052 /dev/ttyp0104 /dev/ttyp0156 > /dev/ttyp0208 > /dev/ttyp0001 /dev/ttyp0053 /dev/ttyp0105 /dev/ttyp0157 > /dev/ttyp0209 > /dev/ttyp0002 /dev/ttyp0054 /dev/ttyp0106 /dev/ttyp0158 > /dev/ttyp0210 > /dev/ttyp0003 /dev/ttyp0055 /dev/ttyp0107 /dev/ttyp0159 > /dev/ttyp0211 > /dev/ttyp0004 /dev/ttyp0056 /dev/ttyp0108 /dev/ttyp0160 > /dev/ttyp0212 > /dev/ttyp0005 /dev/ttyp0057 /dev/ttyp0109 /dev/ttyp0161 > /dev/ttyp0213 > /dev/ttyp0006 /dev/ttyp0058 /dev/ttyp0110 /dev/ttyp0162 > /dev/ttyp0214 > /dev/ttyp0007 /dev/ttyp0059 /dev/ttyp0111 /dev/ttyp0163 > /dev/ttyp0215 > /dev/ttyp0008 /dev/ttyp0060 /dev/ttyp0112 /dev/ttyp0164 > /dev/ttyp0216 > /dev/ttyp0009 /dev/ttyp0061 /dev/ttyp0113 /dev/ttyp0165 > /dev/ttyp0217 > /dev/ttyp0010 /dev/ttyp0062 /dev/ttyp0114 /dev/ttyp0166 > /dev/ttyp0218 > /dev/ttyp0011 /dev/ttyp0063 /dev/ttyp0115 /dev/ttyp0167 > /dev/ttyp0219 > /dev/ttyp0012 /dev/ttyp0064 /dev/ttyp0116 /dev/ttyp0168 > /dev/ttyp0220 > /dev/ttyp0013 /dev/ttyp0065 /dev/ttyp0117 /dev/ttyp0169 > /dev/ttyp0221 > /dev/ttyp0014 /dev/ttyp0066 /dev/ttyp0118 /dev/ttyp0170 > /dev/ttyp0222 > /dev/ttyp0015 /dev/ttyp0067 /dev/ttyp0119 /dev/ttyp0171 > /dev/ttyp0223 > /dev/ttyp0016 /dev/ttyp0068 /dev/ttyp0120 /dev/ttyp0172 > /dev/ttyp0224 > /dev/ttyp0017 /dev/ttyp0069 /dev/ttyp0121 /dev/ttyp0173 > /dev/ttyp0225 > /dev/ttyp0018 /dev/ttyp0070 /dev/ttyp0122 /dev/ttyp0174 > /dev/ttyp0226 > /dev/ttyp0019 /dev/ttyp0071 /dev/ttyp0123 /dev/ttyp0175 > /dev/ttyp0227 > /dev/ttyp0020 /dev/ttyp0072 /dev/ttyp0124 /dev/ttyp0176 > /dev/ttyp0228 > /dev/ttyp0021 /dev/ttyp0073 /dev/ttyp0125 /dev/ttyp0177 > /dev/ttyp0229 > /dev/ttyp0022 /dev/ttyp0074 /dev/ttyp0126 /dev/ttyp0178 > /dev/ttyp0230 > /dev/ttyp0023 /dev/ttyp0075 /dev/ttyp0127 /dev/ttyp0179 > /dev/ttyp0231 > /dev/ttyp0024 /dev/ttyp0076 /dev/ttyp0128 /dev/ttyp0180 > /dev/ttyp0232 > /dev/ttyp0025 /dev/ttyp0077 /dev/ttyp0129 /dev/ttyp0181 > /dev/ttyp0233 > /dev/ttyp0026 /dev/ttyp0078 /dev/ttyp0130 /dev/ttyp0182 > /dev/ttyp0234 > /dev/ttyp0027 /dev/ttyp0079 /dev/ttyp0131 /dev/ttyp0183 > /dev/ttyp0235 > /dev/ttyp0028 /dev/ttyp0080 /dev/ttyp0132 /dev/ttyp0184 > /dev/ttyp0236 > /dev/ttyp0029 /dev/ttyp0081 /dev/ttyp0133 /dev/ttyp0185 > /dev/ttyp0237 > /dev/ttyp0030 /dev/ttyp0082 /dev/ttyp0134 /dev/ttyp0186 > /dev/ttyp0238 > /dev/ttyp0031 /dev/ttyp0083 /dev/ttyp0135 /dev/ttyp0187 > /dev/ttyp0239 > /dev/ttyp0032 /dev/ttyp0084 /dev/ttyp0136 /dev/ttyp0188 > /dev/ttyp0240 > /dev/ttyp0033 /dev/ttyp0085 /dev/ttyp0137 /dev/ttyp0189 > /dev/ttyp0241 > /dev/ttyp0034 /dev/ttyp0086 /dev/ttyp0138 /dev/ttyp0190 > /dev/ttyp0242 > /dev/ttyp0035 /dev/ttyp0087 /dev/ttyp0139 /dev/ttyp0191 > /dev/ttyp0243 > /dev/ttyp0036 /dev/ttyp0088 /dev/ttyp0140 /dev/ttyp0192 > /dev/ttyp0244 > /dev/ttyp0037 /dev/ttyp0089 /dev/ttyp0141 /dev/ttyp0193 > /dev/ttyp0245 > /dev/ttyp0038 /dev/ttyp0090 /dev/ttyp0142 /dev/ttyp0194 > /dev/ttyp0246 > /dev/ttyp0039 /dev/ttyp0091 /dev/ttyp0143 /dev/ttyp0195 > /dev/ttyp0247 > /dev/ttyp0040 /dev/ttyp0092 /dev/ttyp0144 /dev/ttyp0196 > /dev/ttyp0248 > /dev/ttyp0041 /dev/ttyp0093 /dev/ttyp0145 /dev/ttyp0197 > /dev/ttyp0249 > /dev/ttyp0042 /dev/ttyp0094 /dev/ttyp0146 /dev/ttyp0198 > /dev/ttyp0250 > /dev/ttyp0043 /dev/ttyp0095 /dev/ttyp0147 /dev/ttyp0199 > /dev/ttyp0251 > /dev/ttyp0044 /dev/ttyp0096 /dev/ttyp0148 /dev/ttyp0200 > /dev/ttyp0252 > /dev/ttyp0045 /dev/ttyp0097 /dev/ttyp0149 /dev/ttyp0201 > /dev/ttyp0253 > /dev/ttyp0046 /dev/ttyp0098 /dev/ttyp0150 /dev/ttyp0202 > /dev/ttyp0254 > /dev/ttyp0047 /dev/ttyp0099 /dev/ttyp0151 /dev/ttyp0203 > /dev/ttyp0255 > /dev/ttyp0048 /dev/ttyp0100 /dev/ttyp0152 /dev/ttyp0204 > /dev/ttyp0049 /dev/ttyp0101 /dev/ttyp0153 /dev/ttyp0205 > /dev/ttyp0050 /dev/ttyp0102 /dev/ttyp0154 /dev/ttyp0206 > > So the code never generates any one of these pty or tty and when it > tries to open that it fails. > > > This can be resolved by adding this code > > for (i = 0; i < 255; i++) { > sprintf(buf,"/dev/ptyp%0.4d",i); > sprintf(tbuf,"/dev/ttyp%0.4d",i); > > which will generate the corrrect names of pty and tty as required > by z/OS. > > Thanks & Regards > Yaseen > > > Roland Giersig <RGi...@cp...> wrote: Available from your > nearest CPAN mirror. > > I finally found the time for incorporating some bugfixes and doing > some > testing, unfortunately only on Linux, AIX 5.3 and Cygwin. Feedback > for > other OSs appreciated. > > IO-Tty shouldn't warn about bad ioctl constants anymore and also > build > better on HPUX and Z/OS (and any other compiler that uses shell > metachars for compiler options). > > For Expect I (hopefully) fixed a hangup-problem on AIX 5.2, also a > hangup for send_slow and $? corruption in DESTROY. > > Cheers, Roland > -- > RGi...@cp... > > > ------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, > security? > Get stuff done quickly with pre-integrated technology to make your > job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache > Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Expectperl-discuss mailing list > Exp...@li... > https://lists.sourceforge.net/lists/listinfo/expectperl-discuss > > > > --------------------------------- > Blab-away for as little as 1¢/min. Make PC-to-Phone Calls using > Yahoo! Messenger with Voice. -- RGi...@cp... |
From: mohammad y. <aky...@ya...> - 2006-05-10 10:16:51
|
I'm testing IO-Tty-1.03 on z/OS. I'm using perl-5.8.7 which dynamically build. The result of gmake test are as below gmake test PERL_DL_NONLAZY=1 /u/isldev4/NPERL/bin/perl "-Iblib/lib" "-Iblib/arch" test.pl 1..4 Configuration: -DHAVE_GRANTPT -DHAVE_LIBUTIL_H -DHAVE_PTSNAME -DHAVE_PTY_H -DHAV E_SIGACTION -DHAVE_SYS_PTYIO_H -DHAVE_SYS_STROPTS_H -DHAVE_TERMIO_H -DHAVE_TERMI OS_H -DHAVE_TTYNAME -DHAVE_UNLOCKPT -DHAVE_UTIL_H Checking for appropriate ioctls: Checking that returned fd's don't clash with stdin/out/err... trying BSD /dev/pty??... Cannot open a pty at test.pl line 42 child exit=33024 not ok 1 # Test failed at test.pl line 52. Checking if child gets pty as controlling terminal... trying BSD /dev/pty??... Cannot open a pty at test.pl line 58 gmake: *** [test_dynamic] Error 129 As you remember sometime back we were discussing about the problems i was facing when building IO-Tty-1.02.The one problem related to Makefile.PL has been resolved in your new release but the other problem is still present which is causing the gmake test to fail. The part of the code which causing this problem is below in bold { /* BSD-style pty code. */ char buf[64]; char tbuf[64]; int i; const char *ptymajors = "pqrstuvwxyzabcdefghijklmnoABCDEFGHIJKLMNOPQRSTUVWXYZ"; const char *ptyminors = "0123456789abcdef"; int num_minors = strlen(ptyminors); int num_ptys = strlen(ptymajors) * num_minors; #if PTY_DEBUG if (print_debug) fprintf(stderr, "trying BSD /dev/pty??...\n"); #endif for (i = 0; i < num_ptys; i++) { sprintf(buf, "/dev/pty%c%c", ptymajors[i / num_minors], ptyminors[i % num_minors]); sprintf(tbuf, "/dev/tty%c%c", ptymajors[i / num_minors], ptyminors[i % num_minors]); if (strlcpy(namebuf, tbuf, namebuflen) >= namebuflen) { warn("ERROR: pty_allocate: ttyname truncated"); return 0; } This is because on z/OS if you see the output $>ls /dev/pty* /dev/ptyp0000 /dev/ptyp0051 /dev/ptyp0102 /dev/ptyp0153 /dev/ptyp0204 /dev/ptyp0001 /dev/ptyp0052 /dev/ptyp0103 /dev/ptyp0154 /dev/ptyp0205 /dev/ptyp0002 /dev/ptyp0053 /dev/ptyp0104 /dev/ptyp0155 /dev/ptyp0206 /dev/ptyp0003 /dev/ptyp0054 /dev/ptyp0105 /dev/ptyp0156 /dev/ptyp0207 /dev/ptyp0004 /dev/ptyp0055 /dev/ptyp0106 /dev/ptyp0157 /dev/ptyp0208 /dev/ptyp0005 /dev/ptyp0056 /dev/ptyp0107 /dev/ptyp0158 /dev/ptyp0209 /dev/ptyp0006 /dev/ptyp0057 /dev/ptyp0108 /dev/ptyp0159 /dev/ptyp0210 /dev/ptyp0007 /dev/ptyp0058 /dev/ptyp0109 /dev/ptyp0160 /dev/ptyp0211 /dev/ptyp0008 /dev/ptyp0059 /dev/ptyp0110 /dev/ptyp0161 /dev/ptyp0212 /dev/ptyp0009 /dev/ptyp0060 /dev/ptyp0111 /dev/ptyp0162 /dev/ptyp0213 /dev/ptyp0010 /dev/ptyp0061 /dev/ptyp0112 /dev/ptyp0163 /dev/ptyp0214 /dev/ptyp0011 /dev/ptyp0062 /dev/ptyp0113 /dev/ptyp0164 /dev/ptyp0215 /dev/ptyp0012 /dev/ptyp0063 /dev/ptyp0114 /dev/ptyp0165 /dev/ptyp0216 /dev/ptyp0013 /dev/ptyp0064 /dev/ptyp0115 /dev/ptyp0166 /dev/ptyp0217 /dev/ptyp0014 /dev/ptyp0065 /dev/ptyp0116 /dev/ptyp0167 /dev/ptyp0218 /dev/ptyp0015 /dev/ptyp0066 /dev/ptyp0117 /dev/ptyp0168 /dev/ptyp0219 /dev/ptyp0016 /dev/ptyp0067 /dev/ptyp0118 /dev/ptyp0169 /dev/ptyp0220 /dev/ptyp0017 /dev/ptyp0068 /dev/ptyp0119 /dev/ptyp0170 /dev/ptyp0221 /dev/ptyp0018 /dev/ptyp0069 /dev/ptyp0120 /dev/ptyp0171 /dev/ptyp0222 /dev/ptyp0019 /dev/ptyp0070 /dev/ptyp0121 /dev/ptyp0172 /dev/ptyp0223 /dev/ptyp0020 /dev/ptyp0071 /dev/ptyp0122 /dev/ptyp0173 /dev/ptyp0224 /dev/ptyp0021 /dev/ptyp0072 /dev/ptyp0123 /dev/ptyp0174 /dev/ptyp0225 /dev/ptyp0022 /dev/ptyp0073 /dev/ptyp0124 /dev/ptyp0175 /dev/ptyp0226 /dev/ptyp0023 /dev/ptyp0074 /dev/ptyp0125 /dev/ptyp0176 /dev/ptyp0227 /dev/ptyp0024 /dev/ptyp0075 /dev/ptyp0126 /dev/ptyp0177 /dev/ptyp0228 /dev/ptyp0025 /dev/ptyp0076 /dev/ptyp0127 /dev/ptyp0178 /dev/ptyp0229 /dev/ptyp0026 /dev/ptyp0077 /dev/ptyp0128 /dev/ptyp0179 /dev/ptyp0230 /dev/ptyp0027 /dev/ptyp0078 /dev/ptyp0129 /dev/ptyp0180 /dev/ptyp0231 /dev/ptyp0028 /dev/ptyp0079 /dev/ptyp0130 /dev/ptyp0181 /dev/ptyp0232 /dev/ptyp0029 /dev/ptyp0080 /dev/ptyp0131 /dev/ptyp0182 /dev/ptyp0233 /dev/ptyp0030 /dev/ptyp0081 /dev/ptyp0132 /dev/ptyp0183 /dev/ptyp0234 /dev/ptyp0031 /dev/ptyp0082 /dev/ptyp0133 /dev/ptyp0184 /dev/ptyp0235 /dev/ptyp0032 /dev/ptyp0083 /dev/ptyp0134 /dev/ptyp0185 /dev/ptyp0236 /dev/ptyp0033 /dev/ptyp0084 /dev/ptyp0135 /dev/ptyp0186 /dev/ptyp0237 /dev/ptyp0034 /dev/ptyp0085 /dev/ptyp0136 /dev/ptyp0187 /dev/ptyp0238 /dev/ptyp0035 /dev/ptyp0086 /dev/ptyp0137 /dev/ptyp0188 /dev/ptyp0239 /dev/ptyp0036 /dev/ptyp0087 /dev/ptyp0138 /dev/ptyp0189 /dev/ptyp0240 /dev/ptyp0037 /dev/ptyp0088 /dev/ptyp0139 /dev/ptyp0190 /dev/ptyp0241 /dev/ptyp0038 /dev/ptyp0089 /dev/ptyp0140 /dev/ptyp0191 /dev/ptyp0242 /dev/ptyp0039 /dev/ptyp0090 /dev/ptyp0141 /dev/ptyp0192 /dev/ptyp0243 /dev/ptyp0040 /dev/ptyp0091 /dev/ptyp0142 /dev/ptyp0193 /dev/ptyp0244 /dev/ptyp0041 /dev/ptyp0092 /dev/ptyp0143 /dev/ptyp0194 /dev/ptyp0245 /dev/ptyp0042 /dev/ptyp0093 /dev/ptyp0144 /dev/ptyp0195 /dev/ptyp0246 /dev/ptyp0043 /dev/ptyp0094 /dev/ptyp0145 /dev/ptyp0196 /dev/ptyp0247 /dev/ptyp0044 /dev/ptyp0095 /dev/ptyp0146 /dev/ptyp0197 /dev/ptyp0248 /dev/ptyp0045 /dev/ptyp0096 /dev/ptyp0147 /dev/ptyp0198 /dev/ptyp0249 /dev/ptyp0046 /dev/ptyp0097 /dev/ptyp0148 /dev/ptyp0199 /dev/ptyp0250 /dev/ptyp0047 /dev/ptyp0098 /dev/ptyp0149 /dev/ptyp0200 /dev/ptyp0251 /dev/ptyp0048 /dev/ptyp0099 /dev/ptyp0150 /dev/ptyp0201 /dev/ptyp0252 /dev/ptyp0049 /dev/ptyp0100 /dev/ptyp0151 /dev/ptyp0202 /dev/ptyp0253 /dev/ptyp0050 /dev/ptyp0101 /dev/ptyp0152 /dev/ptyp0203 /dev/ptyp0254 $>ls /dev/tty* /dev/tty /dev/ttyp0051 /dev/ttyp0103 /dev/ttyp0155 /dev/ttyp0207 /dev/ttyp0000 /dev/ttyp0052 /dev/ttyp0104 /dev/ttyp0156 /dev/ttyp0208 /dev/ttyp0001 /dev/ttyp0053 /dev/ttyp0105 /dev/ttyp0157 /dev/ttyp0209 /dev/ttyp0002 /dev/ttyp0054 /dev/ttyp0106 /dev/ttyp0158 /dev/ttyp0210 /dev/ttyp0003 /dev/ttyp0055 /dev/ttyp0107 /dev/ttyp0159 /dev/ttyp0211 /dev/ttyp0004 /dev/ttyp0056 /dev/ttyp0108 /dev/ttyp0160 /dev/ttyp0212 /dev/ttyp0005 /dev/ttyp0057 /dev/ttyp0109 /dev/ttyp0161 /dev/ttyp0213 /dev/ttyp0006 /dev/ttyp0058 /dev/ttyp0110 /dev/ttyp0162 /dev/ttyp0214 /dev/ttyp0007 /dev/ttyp0059 /dev/ttyp0111 /dev/ttyp0163 /dev/ttyp0215 /dev/ttyp0008 /dev/ttyp0060 /dev/ttyp0112 /dev/ttyp0164 /dev/ttyp0216 /dev/ttyp0009 /dev/ttyp0061 /dev/ttyp0113 /dev/ttyp0165 /dev/ttyp0217 /dev/ttyp0010 /dev/ttyp0062 /dev/ttyp0114 /dev/ttyp0166 /dev/ttyp0218 /dev/ttyp0011 /dev/ttyp0063 /dev/ttyp0115 /dev/ttyp0167 /dev/ttyp0219 /dev/ttyp0012 /dev/ttyp0064 /dev/ttyp0116 /dev/ttyp0168 /dev/ttyp0220 /dev/ttyp0013 /dev/ttyp0065 /dev/ttyp0117 /dev/ttyp0169 /dev/ttyp0221 /dev/ttyp0014 /dev/ttyp0066 /dev/ttyp0118 /dev/ttyp0170 /dev/ttyp0222 /dev/ttyp0015 /dev/ttyp0067 /dev/ttyp0119 /dev/ttyp0171 /dev/ttyp0223 /dev/ttyp0016 /dev/ttyp0068 /dev/ttyp0120 /dev/ttyp0172 /dev/ttyp0224 /dev/ttyp0017 /dev/ttyp0069 /dev/ttyp0121 /dev/ttyp0173 /dev/ttyp0225 /dev/ttyp0018 /dev/ttyp0070 /dev/ttyp0122 /dev/ttyp0174 /dev/ttyp0226 /dev/ttyp0019 /dev/ttyp0071 /dev/ttyp0123 /dev/ttyp0175 /dev/ttyp0227 /dev/ttyp0020 /dev/ttyp0072 /dev/ttyp0124 /dev/ttyp0176 /dev/ttyp0228 /dev/ttyp0021 /dev/ttyp0073 /dev/ttyp0125 /dev/ttyp0177 /dev/ttyp0229 /dev/ttyp0022 /dev/ttyp0074 /dev/ttyp0126 /dev/ttyp0178 /dev/ttyp0230 /dev/ttyp0023 /dev/ttyp0075 /dev/ttyp0127 /dev/ttyp0179 /dev/ttyp0231 /dev/ttyp0024 /dev/ttyp0076 /dev/ttyp0128 /dev/ttyp0180 /dev/ttyp0232 /dev/ttyp0025 /dev/ttyp0077 /dev/ttyp0129 /dev/ttyp0181 /dev/ttyp0233 /dev/ttyp0026 /dev/ttyp0078 /dev/ttyp0130 /dev/ttyp0182 /dev/ttyp0234 /dev/ttyp0027 /dev/ttyp0079 /dev/ttyp0131 /dev/ttyp0183 /dev/ttyp0235 /dev/ttyp0028 /dev/ttyp0080 /dev/ttyp0132 /dev/ttyp0184 /dev/ttyp0236 /dev/ttyp0029 /dev/ttyp0081 /dev/ttyp0133 /dev/ttyp0185 /dev/ttyp0237 /dev/ttyp0030 /dev/ttyp0082 /dev/ttyp0134 /dev/ttyp0186 /dev/ttyp0238 /dev/ttyp0031 /dev/ttyp0083 /dev/ttyp0135 /dev/ttyp0187 /dev/ttyp0239 /dev/ttyp0032 /dev/ttyp0084 /dev/ttyp0136 /dev/ttyp0188 /dev/ttyp0240 /dev/ttyp0033 /dev/ttyp0085 /dev/ttyp0137 /dev/ttyp0189 /dev/ttyp0241 /dev/ttyp0034 /dev/ttyp0086 /dev/ttyp0138 /dev/ttyp0190 /dev/ttyp0242 /dev/ttyp0035 /dev/ttyp0087 /dev/ttyp0139 /dev/ttyp0191 /dev/ttyp0243 /dev/ttyp0036 /dev/ttyp0088 /dev/ttyp0140 /dev/ttyp0192 /dev/ttyp0244 /dev/ttyp0037 /dev/ttyp0089 /dev/ttyp0141 /dev/ttyp0193 /dev/ttyp0245 /dev/ttyp0038 /dev/ttyp0090 /dev/ttyp0142 /dev/ttyp0194 /dev/ttyp0246 /dev/ttyp0039 /dev/ttyp0091 /dev/ttyp0143 /dev/ttyp0195 /dev/ttyp0247 /dev/ttyp0040 /dev/ttyp0092 /dev/ttyp0144 /dev/ttyp0196 /dev/ttyp0248 /dev/ttyp0041 /dev/ttyp0093 /dev/ttyp0145 /dev/ttyp0197 /dev/ttyp0249 /dev/ttyp0042 /dev/ttyp0094 /dev/ttyp0146 /dev/ttyp0198 /dev/ttyp0250 /dev/ttyp0043 /dev/ttyp0095 /dev/ttyp0147 /dev/ttyp0199 /dev/ttyp0251 /dev/ttyp0044 /dev/ttyp0096 /dev/ttyp0148 /dev/ttyp0200 /dev/ttyp0252 /dev/ttyp0045 /dev/ttyp0097 /dev/ttyp0149 /dev/ttyp0201 /dev/ttyp0253 /dev/ttyp0046 /dev/ttyp0098 /dev/ttyp0150 /dev/ttyp0202 /dev/ttyp0254 /dev/ttyp0047 /dev/ttyp0099 /dev/ttyp0151 /dev/ttyp0203 /dev/ttyp0255 /dev/ttyp0048 /dev/ttyp0100 /dev/ttyp0152 /dev/ttyp0204 /dev/ttyp0049 /dev/ttyp0101 /dev/ttyp0153 /dev/ttyp0205 /dev/ttyp0050 /dev/ttyp0102 /dev/ttyp0154 /dev/ttyp0206 So the code never generates any one of these pty or tty and when it tries to open that it fails. This can be resolved by adding this code for (i = 0; i < 255; i++) { sprintf(buf,"/dev/ptyp%0.4d",i); sprintf(tbuf,"/dev/ttyp%0.4d",i); which will generate the corrrect names of pty and tty as required by z/OS. Thanks & Regards Yaseen Roland Giersig <RGi...@cp...> wrote: Available from your nearest CPAN mirror. I finally found the time for incorporating some bugfixes and doing some testing, unfortunately only on Linux, AIX 5.3 and Cygwin. Feedback for other OSs appreciated. IO-Tty shouldn't warn about bad ioctl constants anymore and also build better on HPUX and Z/OS (and any other compiler that uses shell metachars for compiler options). For Expect I (hopefully) fixed a hangup-problem on AIX 5.2, also a hangup for send_slow and $? corruption in DESTROY. Cheers, Roland -- RGi...@cp... ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Expectperl-discuss mailing list Exp...@li... https://lists.sourceforge.net/lists/listinfo/expectperl-discuss --------------------------------- Blab-away for as little as 1¢/min. Make PC-to-Phone Calls using Yahoo! Messenger with Voice. |
From: mohammad y. <aky...@ya...> - 2006-05-08 07:25:10
|
I want to test these new releases on z/OS, but not able to download the tar ball from CPAN.org. Roland Giersig <RGi...@cp...> wrote: Available from your nearest CPAN mirror. I finally found the time for incorporating some bugfixes and doing some testing, unfortunately only on Linux, AIX 5.3 and Cygwin. Feedback for other OSs appreciated. IO-Tty shouldn't warn about bad ioctl constants anymore and also build better on HPUX and Z/OS (and any other compiler that uses shell metachars for compiler options). For Expect I (hopefully) fixed a hangup-problem on AIX 5.2, also a hangup for send_slow and $? corruption in DESTROY. Cheers, Roland -- RGi...@cp... ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Expectperl-discuss mailing list Exp...@li... https://lists.sourceforge.net/lists/listinfo/expectperl-discuss --------------------------------- Yahoo! Messenger with Voice. Make PC-to-Phone Calls to the US (and 30+ countries) for 2¢/min or less. |