Here for things, which got some people to stumble, and which might help new developers.
I will also put those onto the Dev-InfoBits on
http://gnuticles.de
First from a_guest_in_the_machine: The initial handshake goes like this (contradicting current specs):
you
GNUTELLA CONNECT/0.6\r\n
\r\n
ultrapeer
GNUTELLA/0.6 200 (...)\r\n
(optional server specifics)\r\n
\r
you
GNUTELLA/0.6 200\r\n
\r\n
And now, at this point you are offically connected, and we remain so indefinatly. And from what the documents say, you should now be able to send and receive ping/pong/query/queryhits.