SimonGriffiths said:
Well i've confirmed the local X server is listening on port 6000, had at a look at the xdm source and the noValidAddr is set in xdcmp.c and it looks like something is blocking the communications back to X.
Does your cygwin/X server abort, when the remote xdm rejects the session setup request, possibly with an error message, too?
If this is the case, this would indicate, that the communications channel is working in both directions. If the communication would be blocked in the reverse direction, I would assume, that your cygwin/X server would block at least until some timeout expires.
The real thing of course, would be to use wireshark, to have a look at the protocol exchange. Not sure, but I guess, wireshark should have some protocol dissector for XDMCP, so one could look at the individual header fields for oddities.
I tried google for that specific xdm error message, but none of the results seemed to be related to cygwin/X. There have been similar problems though with Xvnc, but no viable solution either. The only clue was, that this may be caused by an incomplete header, missing some field.
Thinking about this, I wonder what these three numbers are, that xdm outputs in the context of the request, and whether the last number is possibly the length of the request or header. My log has a 60 in that place, yours has 52, which makes 8 bytes less, if my assumption is correct. But I needed to take a look at the xdm sources, to find an answer to that question :\