Solved

Perl question

Posted on 1997-09-11
7
332 Views
Last Modified: 2010-05-18
When I attempt multiple get() cmnds within my FTP session,
although I receive all of the files successfully, without
any errors, the subsequent call to close() hangs.  When I
run it with the -w switch, I get the following warnings
which may or may not be of interest:

No such signal: SIGALRM at C:\usr\perl\lib/IO/Socket.pm line 206.
No such signal: SIGALRM at C:\usr\perl\lib/IO/Socket.pm line 206.
No such signal: SIGALRM at C:\usr\perl\lib/IO/Socket.pm line 571.

Thanks very much for any help you might give.

Dave Griffin

New Comment:

In order to determine the contents of %SIG, I executed the following:

@SIG = %SIG;
print "@SIG\n";

and received the following:
10  ILL  20  12  13  BREAK  14  16  17  ABRT  18  19  INT  1  3  5  SEGV  6  7  TERM  9  FPE

I'll check it out, but I just have a gut feeling it is'nt a
signal thing.  My guess is that, at the TCP level, a response to the close request is getting dropped somewhere.
Is there any signal handling involved in processing that
acknowledgement?
0
Comment
Question by:ryry
  • 3
  • 3
7 Comments
 
LVL 84

Expert Comment

by:ozo
Comment Utility
What signals are avaliable under NT?
(what is in keys(%SIG)?)
0
 

Author Comment

by:ryry
Comment Utility
Edited text of question
0
 
LVL 84

Expert Comment

by:ozo
Comment Utility
Sure enough, no ALRM.  Do you know if there's an equivalent under NT?
Maybe $SIG{14}?  Does NT have an alarm system call?

0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 

Author Comment

by:ryry
Comment Utility
Edited text of question
0
 

Author Comment

by:ryry
Comment Utility
Edited text of question
0
 
LVL 84

Expert Comment

by:ozo
Comment Utility
Yes, alarm clock signals are used to implement time outs.
(which could conceivable be related to hanging behavior...)
0
 

Accepted Solution

by:
mat041897 earned 100 total points
Comment Utility
Try unbuffering the socket handle.
eg:
 select ((select(SOCKET), $|=1)[0];
0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

I've just discovered very important differences between Windows an Unix formats in Perl,at least 5.xx.. MOST IMPORTANT: Use Unix file format while saving Your script. otherwise it will have ^M s or smth likely weird in the EOL, Then DO NOT use m…
On Microsoft Windows, if  when you click or type the name of a .pl file, you get an error "is not recognized as an internal or external command, operable program or batch file", then this means you do not have the .pl file extension associated with …
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now