Re: Sockets in GTK, how to use?
- From: Jacques Pelletier <jpelletier ieee org>
- To: gtk-app-devel-list gnome org
- Subject: Re: Sockets in GTK, how to use?
- Date: Mon, 31 Jan 2011 01:16:51 -0500
On Sunday 30 January 2011 12:03:57 Antono Vasiljev wrote:
Excerpts from Jacques Pelletier's message of 2011-01-30 18:37:34
+0200:
I'm using Gnet 2.08 in my application and I would like to convert it
to
GTK for its socket functions.
From the docs, I was able to figure out how to open a connection,
but
once
the connection is opened, how do we read and write to a socket?
I'am begginer in this area... But something like this works for me:
GSocket * socket;
GSocketClient * client;
GSocketConnection * connection;
GSocketConnectable * addr;
addr = g_network_address_new (host, port);
client = g_socket_client_new ();
connection = g_socket_client_connect (client, addr, NULL, &error);
socket = g_socket_connection_get_socket (connection);
if (socket) {
gchar * locator = g_strdup("data to send");
g_socket_send_with_blocking(socket, locator, strlen(locator),
FALSE, NULL, NULL); g_free(locator);
while ( (received = g_socket_receive_with_blocking (socket,
buffer,
1024, FALSE, NULL, NULL)) ) { for (buffpos = 0; buffpos < received;
buffpos++) { g_string_append_c(page, buffer[buffpos]);
}
g_debug("\n\n=>> Got %d/%d bytes\n\n", received, total
+=
received); }
} else {
g_debug("%s", error->message);
g_free(error);
}
Many thanks! This will help very much!
JP
PS: something as good as gnet_uri is still missing in glib/gio. I think
we
should move it from gnet to glib.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]