ncftp - works, but doesn't display any prompts

Charles Wilson cwilson@ece.gatech.edu
Wed Jan 24 16:50:00 GMT 2001


This is a bug in ncftp or cygwin.  If ncftp determines that it is not
running from a TTY, it doesn't print any prompts.  Here's the code that
it uses to determine that (ncftp/main.c):

        gIsTTY = ((isatty(2) != 0) && (getppid() > 1)) ? 1 : 0;
        gIsTTYr = ((isatty(0) != 0) && (getppid() > 1)) ? 1 : 0;

Here's the result of those operations in a bash window:
isatty(2) = 1
isatty(0) = 1
getppid() = 1764
gIsTTY = 1
gIsTTYr = 1

And from a cmd prompt:
isatty(2) = 1
isatty(0) = 1
getppid() = 1
gIsTTY = 0
gIsTTYr = 0

I'm not sure what the right fix is.  Options:
  1) Is this really a problem with the getppid implementation of cygwin
(?)
  2) patch ncftp to ignore the value of getppid() -- just use isatty(x)
     --> #ifdef __CYGWIN__, or for all platforms?  Why does ncftp test 
     getppid() anyway?  

--Chuck

Richard Stanton wrote:
> 
> I just installed the latest version of ncftp using the cygwin setup program.
> I love the program, and it seems to work fine, but I don't get any prompts
> to make it clear I'm supposed to type. Here's a sample session, my input
> preceded by "*":
> 
> [c:\]ncftp
> NcFTP 3.0.2 (October 19, 2000) by Mike Gleason (ncftp@ncftp.com).
> *dir
> dir: must be connected to do that.
> *open ttt
> Resolving ttt...
> 
> Unknown host "ttt".
> 
> How do I get it to display ftp-type command prompts?
> 
> Richard Stanton
> 
> --
> Want to unsubscribe from this list?
> Check out: http://cygwin.com/ml/#unsubscribe-simple

--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list