This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: Info on "Can't open display"




> 
> Sorry, I meant any suggestions for other xclients 
> (non-cygwin/xfree86) that 
> I could test with.  I don't know many other free xclient apps 
> for windows.
> 
> 
> 
> >Have you examined this or attempted to confirm your guess? I 
> asked the
> >question _because_ there are multiple answers.
> 
> I've done my share of client/server socket programming and, 
> in general, the 
> following model is used in the most architectures:

X uses similar model.

> 
> clients: socket()...connect()...[ send() & recv() ]...close()
> 
> servers: socket()...bind()...listen()...[ accept()...[ send() 
> & recv() ] 
> ]...close()
> 
> (where square brackets [] denote loops)
> 
> I haven't yet looked at the socket calls in TeraTermSSH but 
> you can see that 
> it is generally what is happening by playing with netstat.  
> It will show you 
> sshd listening to port 6010 on the remote host and you can 
> see TeraTermSSH's 
> connection from localhost random-port to localhost port 6000. 


Why TeraTermSSH is connecting to port 6000 when X is listening at
that port?  TeraTermSSH is not an Xclients.  Is it randomly conneting
to any port it can, either it is avialable or not???

>  It is this 
> local connection that should be equivalent to the 
> cygwin/xfree86 xterm 
> connecting to localhost port 6000.

not necessary.  Do a netstat -a on a Linux or any other UNIX box. You
will notice what is going on.


Suhaib

> 
> 
> >... You are wrong about "all tcp/ip client programs unbound". TCP/IP
> >client can ask for a random port on a random interface (a)
> 
> ... which is basically just a socket() call and a connect().  
> In this case 
> thereis no opportunity to specify a source interface and port number.
> 
> >or a specific
> >port on a random interface (still a - I wasn't worried about the
> >partocular port)
> 
> ... huh? How would you do that?
> 
> >or a random port on a given interface (one of b or c)
> 
> ... Again, huh?  How?
> 
> >or a specific port on a specific interface (one of b or c).
> 
> ... using socket()...bind(), which is what server apps do.
> 
> 
> >Chris, your guesssing is not helping debug the problem. Binding to a
> >specific port on all interfaces != being "unbound" where you 
> bind to a
> >port, and no specific interface. (Binding to all interfaces 
> you need to
> >call bind() multiple times oince for each interface).
> 
> Actually, this is untrue.  If you specify INADDR_ANY in the 
> bind call, all 
> local interfaces are bound to one socket at the specified port.
> 
> 
> > > >That sounds to me like Aventail dropping the connection.
> > >
> > > What is your reasoning?
> >
> >You see the beginning of a normal 3-way handshake, and then a ack|fin
> >packet. That looks like a program other than the one listening on the
> >socket interfering with the tcp session to get the remote end to drop
> >it.
> 
> Oh... good thinking.  I hadn't considered that possibility.
> 
> Chris
> 
> _________________________________________________________________
> Get your FREE download of MSN Explorer at http://explorer.msn.com
> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]