connect_callback (GObject *source, GAsyncResult *result, gpointer data)
{
GTcpClient *client = G_TCP_CLIENT (source);
+ GInputStream *input;
+ GOutputStream *output;
+ gchar buffer[512] = {0};
+ gssize count;
GError *error = NULL;
if (!g_tcp_client_connect_finish (client, result, &error)) {
}
g_print ("successfully connected\n");
+
+ output = G_OUTPUT_STREAM (g_tcp_client_get_output_stream (client));
+
+ input = G_INPUT_STREAM (g_tcp_client_get_input_stream (client));
+
+ g_print ("writing...\n");
+
+ if ((count = g_output_stream_write (output, "GET / HTTP/1.0\r\n\r\n", 19, NULL, &error)) < 0) {
+ g_warning (error->message);
+ return 1;
+ }
+
+ g_print ("wrote %d bytes\n", count);
+
+ if ((count = g_input_stream_read (input, buffer, 512, NULL, &error)) < 0) {
+ g_warning (error->message);
+ return 1;
+ }
+
+ g_print ("read %d bytes: %s\n", count, buffer);
}
int main (int argc, char *argv[])
{
GTcpClient *client;
-/* GInputStream *input;
- GOutputStream *output;
- gchar buffer[512] = {0};
- gssize count;
- GError *error = NULL;*/
g_thread_init (NULL);
loop = g_main_loop_new (NULL, FALSE);
- client = g_tcp_client_new ("localhost", 80);
+ client = g_tcp_client_new ("localhost", 31882);
g_print ("connecting to www.google.com:80\n");
g_print ("connected!\n");
- output = G_OUTPUT_STREAM (g_tcp_client_get_output_stream (client));
-
- input = G_INPUT_STREAM (g_tcp_client_get_input_stream (client));
-
- g_print ("writing...\n");
-
- if ((count = g_output_stream_write (output, "GET / HTTP/1.0\r\n\r\n", 19, NULL, &error)) < 0) {
- g_warning (error->message);
- return 1;
- }
-
- g_print ("wrote %d bytes\n", count);
-
- if ((count = g_input_stream_read (input, buffer, 512, NULL, &error)) < 0) {
- g_warning (error->message);
- return 1;
- }
-
- g_print ("read %d bytes: %s\n", count, buffer);
-
g_object_unref (G_OBJECT (client));
*/
+
g_main_loop_run (loop);
return 0;
}
+