Mercurial > pidgin.yaz
diff src/protocols/jabber/jabber.c @ 7642:9008b5be4275
[gaim-migrate @ 8285]
let the xmlnode stuff handle embedded NULLs (i'll need this later)
committer: Tailor Script <tailor@pidgin.im>
author | Nathan Walp <nwalp@pidgin.im> |
---|---|
date | Wed, 26 Nov 2003 17:28:13 +0000 |
parents | 2df4d470c12a |
children | e87e7d9d0132 |
line wrap: on
line diff
--- a/src/protocols/jabber/jabber.c Wed Nov 26 16:33:40 2003 +0000 +++ b/src/protocols/jabber/jabber.c Wed Nov 26 17:28:13 2003 +0000 @@ -56,7 +56,7 @@ "version='1.0'>", js->user->domain); - jabber_send_raw(js, open_stream); + jabber_send_raw(js, open_stream, -1); g_free(open_stream); } @@ -215,7 +215,7 @@ } } -void jabber_send_raw(JabberStream *js, const char *data) +void jabber_send_raw(JabberStream *js, const char *data, int len) { int ret; @@ -225,9 +225,9 @@ js->gsc ? " (ssl)" : "", data); if(js->gsc) { - ret = gaim_ssl_write(js->gsc, data, strlen(data)); + ret = gaim_ssl_write(js->gsc, data, len == -1 ? strlen(data) : len); } else { - ret = write(js->fd, data, strlen(data)); + ret = write(js->fd, data, len == -1 ? strlen(data) : len); } if(ret < 0) @@ -238,15 +238,16 @@ void jabber_send(JabberStream *js, xmlnode *packet) { char *txt; + int len; - txt = xmlnode_to_str(packet); - jabber_send_raw(js, txt); + txt = xmlnode_to_str(packet, &len); + jabber_send_raw(js, txt, len); g_free(txt); } static void jabber_keepalive(GaimConnection *gc) { - jabber_send_raw(gc->proto_data, "\t"); + jabber_send_raw(gc->proto_data, "\t", -1); } static void @@ -307,7 +308,7 @@ js->gsc = gsc; if(js->state == JABBER_STREAM_CONNECTING) - jabber_send_raw(js, "<?xml version='1.0' ?>"); + jabber_send_raw(js, "<?xml version='1.0' ?>", -1); jabber_stream_set_state(js, JABBER_STREAM_INITIALIZING); gaim_ssl_input_add(gsc, jabber_recv_cb_ssl, gc); @@ -328,7 +329,7 @@ js->fd = source; if(js->state == JABBER_STREAM_CONNECTING) - jabber_send_raw(js, "<?xml version='1.0' ?>"); + jabber_send_raw(js, "<?xml version='1.0' ?>", -1); jabber_stream_set_state(js, JABBER_STREAM_INITIALIZING); gc->inpa = gaim_input_add(js->fd, GAIM_INPUT_READ, jabber_recv_cb, gc); @@ -722,7 +723,7 @@ { JabberStream *js = gc->proto_data; - jabber_send_raw(js, "</stream:stream>"); + jabber_send_raw(js, "</stream:stream>", -1); if(js->gsc) { gaim_ssl_close(js->gsc);