upnp.h

Go to the documentation of this file.
00001 
00026 #ifndef _PURPLE_UPNP_H_
00027 #define _PURPLE_UPNP_H_
00028 
00029 typedef struct _UPnPMappingAddRemove UPnPMappingAddRemove;
00030 
00031 #ifdef __cplusplus
00032 extern "C" {
00033 #endif
00034 
00035 /**************************************************************************/
00037 /**************************************************************************/
00040 /* typedef struct _PurpleUPnPRequestData PurpleUPnPRequestData; */
00041 
00042 typedef void (*PurpleUPnPCallback) (gboolean success, gpointer data);
00043 
00044 
00048 void purple_upnp_init(void);
00049 
00050 
00061 void purple_upnp_discover(PurpleUPnPCallback cb, gpointer cb_data);
00062 
00063 #if 0
00064 
00071 const PurpleUPnPControlInfo* purple_upnp_get_control_info(void);
00072 #endif
00073 
00082 const gchar* purple_upnp_get_public_ip(void);
00083 
00090 void purple_upnp_cancel_port_mapping(UPnPMappingAddRemove *mapping_data);
00091 
00105 UPnPMappingAddRemove *purple_upnp_set_port_mapping(unsigned short portmap, const gchar* protocol,
00106         PurpleUPnPCallback cb, gpointer cb_data);
00107 
00122 UPnPMappingAddRemove *purple_upnp_remove_port_mapping(unsigned short portmap,
00123         const gchar* protocol, PurpleUPnPCallback cb, gpointer cb_data);
00124 
00127 #ifdef __cplusplus
00128 }
00129 #endif
00130 
00131 #endif /* _PURPLE_UPNP_H_ */