On Wed, Feb 25, 2004 at 02:03:09PM +0100, Thomas Schuerger wrote:
> Hi,
> 
> it seems that the X-Features header in GtkG is not integrated into
> the header section correctly. The X-Features header is sent *after* a
> newline (the newline normally terminates the header).

The following patch should solve the problem:

--- snip ---
Index: nodes.c
===================================================================
RCS file: /cvsroot/gtk-gnutella/gtk-gnutella-current/src/nodes.c,v
retrieving revision 1.319
diff -u -r1.319 nodes.c
--- nodes.c     25 Feb 2004 07:37:44 -0000      1.319
+++ nodes.c     25 Feb 2004 14:09:19 -0000
@@ -3864,8 +3864,7 @@
                                "%s"            /* X-Ultrapeer-Needed */
                                "%s"            /* X-Query-Routing */
                                "X-Token: %s\r\n"
-                               "X-Live-Since: %s\r\n"
-                               "\r\n",
+                               "X-Live-Since: %s\r\n",
                                version_string, ip_to_gchar(n->socket->ip),
                                (n->attrs & NODE_A_TX_DEFLATE) ? compressing : empty,
                                current_peermode == NODE_P_NORMAL ? "" :
@@ -3882,6 +3881,9 @@

                        header_features_generate(&xfeatures.connections,
                                gnet_response, sizeof(gnet_response), &rw);
+
+                       rw += gm_snprintf(&gnet_response[rw], sizeof(gnet_response)-rw,
+                           "\r\n");
                }
                g_assert(rw < sizeof(gnet_response));
        }
@@ -4591,8 +4593,7 @@
                "X-Token: %s\r\n"
                "X-Live-Since: %s\r\n"
                "%s"            /* X-Ultrapeer */
-               "%s"            /* X-Query-Routing */
-               "\r\n",
+               "%s",           /* X-Query-Routing */
                GNUTELLA_HELLO,
                n->proto_major, n->proto_minor,
                ip_port_to_gchar(listen_ip(), listen_port),
@@ -4605,6 +4606,8 @@
        );

        header_features_generate(&xfeatures.connections, buf, sizeof(buf), &len);
+
+       len += gm_snprintf(&buf[len], sizeof(buf)-len, "\r\n");

        g_assert(len < sizeof(buf));

--- snip ---


Greetings,
Thomas.


-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
_______________________________________________
Gtk-gnutella-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/gtk-gnutella-devel

Reply via email to