network.h

Go to the documentation of this file.
00001 
00025 #ifndef _PURPLE_NETWORK_H_
00026 #define _PURPLE_NETWORK_H_
00027 
00028 #ifdef __cplusplus
00029 extern "C" {
00030 #endif
00031 
00032 /**************************************************************************/
00034 /**************************************************************************/
00037 typedef struct _PurpleNetworkListenData PurpleNetworkListenData;
00038 
00039 typedef void (*PurpleNetworkListenCallback) (int listenfd, gpointer data);
00040 
00053 const unsigned char *purple_network_ip_atoi(const char *ip);
00054 
00063 void purple_network_set_public_ip(const char *ip);
00064 
00073 const char *purple_network_get_public_ip(void);
00074 
00087 const char *purple_network_get_local_system_ip(int fd);
00088 
00106 const char *purple_network_get_my_ip(int fd);
00107 
00133 PurpleNetworkListenData *purple_network_listen(unsigned short port,
00134         int socket_type, PurpleNetworkListenCallback cb, gpointer cb_data);
00135 
00166 PurpleNetworkListenData *purple_network_listen_range(unsigned short start,
00167         unsigned short end, int socket_type,
00168         PurpleNetworkListenCallback cb, gpointer cb_data);
00169 
00178 void purple_network_listen_cancel(PurpleNetworkListenData *listen_data);
00179 
00188 unsigned short purple_network_get_port_from_fd(int fd);
00189 
00197 gboolean purple_network_is_available(void);
00198 
00204 void *purple_network_get_handle(void);
00205 
00209 void purple_network_init(void);
00210 
00214 void purple_network_uninit(void);
00215 
00218 #ifdef __cplusplus
00219 }
00220 #endif
00221 
00222 #endif /* _PURPLE_NETWORK_H_ */