1 /* logjam - a GTK client for LiveJournal.
2 * Copyright (C) 2000-2003 Evan Martin <evan@livejournal.com>
4 #ifndef __LOGJAM_NETWORK_INTERNAL_H__
5 #define __LOGJAM_NETWORK_INTERNAL_H__
10 /* network-internal -- interface to http, used by network.
11 * provides a blocking and nonblocking interface.
13 * network-curl -- curl (unix, fork);
14 * network-win32 -- windows api (windows, threads).
17 #define READ_BLOCK_SIZE (2048)
36 typedef void (*NetStatusCallback
) (NetStatusType status
, gpointer statusdata
, gpointer data
);
38 extern GString
*net_post_blocking (const char *url
, GSList
*headers
, GString
*post
, NetStatusCallback cb
, gpointer data
, GError
**err
);
40 typedef void *NetMainloopHandle
;
42 extern GString
*net_post_mainloop (const char *url
, GSList
*headers
, GString
*post
, NetStatusCallback cb
, gpointer data
, GError
**err
);
43 extern void net_mainloop_cancel (NetMainloopHandle handle
);
45 extern gboolean
net_verb_run_internal (LJVerb
*verb
, NetStatusCallback cb
, gpointer data
, GError
**err
);