comparison libpurple/util.c @ 32692:0f94ec89f0bc

merged from im.pidgin.pidgin
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Mon, 26 Sep 2011 14:57:21 +0900
parents ac6353ffa129 4c64383f05cc
children 4a34689eeb33
comparison
equal deleted inserted replaced
32438:55e678325bda 32692:0f94ec89f0bc
71 gssize max_len; 71 gssize max_len;
72 gboolean chunked; 72 gboolean chunked;
73 PurpleAccount *account; 73 PurpleAccount *account;
74 }; 74 };
75 75
76 struct _PurpleMenuAction
77 {
78 char *label;
79 PurpleCallback callback;
80 gpointer data;
81 GList *children;
82 };
83
76 static char *custom_user_dir = NULL; 84 static char *custom_user_dir = NULL;
77 static char *user_dir = NULL; 85 static char *user_dir = NULL;
78 86
79 87
80 PurpleMenuAction * 88 PurpleMenuAction *
94 { 102 {
95 g_return_if_fail(act != NULL); 103 g_return_if_fail(act != NULL);
96 104
97 g_free(act->label); 105 g_free(act->label);
98 g_free(act); 106 g_free(act);
107 }
108
109 char * purple_menu_action_get_label(const PurpleMenuAction *act)
110 {
111 g_return_val_if_fail(act != NULL, NULL);
112
113 return act->label;
114 }
115
116 PurpleCallback purple_menu_action_get_callback(const PurpleMenuAction *act)
117 {
118 g_return_val_if_fail(act != NULL, NULL);
119
120 return act->callback;
121 }
122
123 gpointer purple_menu_action_get_data(const PurpleMenuAction *act)
124 {
125 g_return_val_if_fail(act != NULL, NULL);
126
127 return act->data;
128 }
129
130 GList* purple_menu_action_get_children(const PurpleMenuAction *act)
131 {
132 g_return_val_if_fail(act != NULL, NULL);
133
134 return act->children;
135 }
136
137 void purple_menu_action_set_label(PurpleMenuAction *act, char *label)
138 {
139 g_return_if_fail(act != NULL);
140
141 act-> label = label;
142 }
143
144 void purple_menu_action_set_callback(PurpleMenuAction *act, PurpleCallback callback)
145 {
146 g_return_if_fail(act != NULL);
147
148 act->callback = callback;
149 }
150
151 void purple_menu_action_set_data(PurpleMenuAction *act, gpointer data)
152 {
153 g_return_if_fail(act != NULL);
154
155 act->data = data;
156 }
157
158 void purple_menu_action_set_children(PurpleMenuAction *act, GList *children)
159 {
160 g_return_if_fail(act != NULL);
161
162 act->children = children;
99 } 163 }
100 164
101 void 165 void
102 purple_util_init(void) 166 purple_util_init(void)
103 { 167 {
4129 (gfud->website.address ? gfud->website.address : ""), 4193 (gfud->website.address ? gfud->website.address : ""),
4130 purple_ssl_strerror(error)); 4194 purple_ssl_strerror(error));
4131 } 4195 }
4132 4196
4133 PurpleUtilFetchUrlData * 4197 PurpleUtilFetchUrlData *
4134 purple_util_fetch_url_request(const char *url, gboolean full, 4198 purple_util_fetch_url_request(PurpleAccount *account,
4135 const char *user_agent, gboolean http11,
4136 const char *request, gboolean include_headers,
4137 PurpleUtilFetchUrlCallback callback, void *user_data)
4138 {
4139 return purple_util_fetch_url_request_len(NULL, url, full,
4140 user_agent, http11,
4141 request, include_headers, -1,
4142 callback, user_data);
4143 }
4144
4145 PurpleUtilFetchUrlData *
4146 purple_util_fetch_url_request_len(PurpleAccount *account,
4147 const char *url, gboolean full, const char *user_agent, gboolean http11, 4199 const char *url, gboolean full, const char *user_agent, gboolean http11,
4148 const char *request, gboolean include_headers, gssize max_len, 4200 const char *request, gboolean include_headers, gssize max_len,
4149 PurpleUtilFetchUrlCallback callback, void *user_data) 4201 PurpleUtilFetchUrlCallback callback, void *user_data)
4150 { 4202 {
4151 PurpleUtilFetchUrlData *gfud; 4203 PurpleUtilFetchUrlData *gfud;
4428 * we didn't see a '::' and saw exactly 8 chunks. 4480 * we didn't see a '::' and saw exactly 8 chunks.
4429 */ 4481 */
4430 return (double_colon && chunks < 8) || (!double_colon && chunks == 8); 4482 return (double_colon && chunks < 8) || (!double_colon && chunks == 8);
4431 } 4483 }
4432 4484
4433 /* TODO 3.0.0: Add ipv6 check, too */
4434 gboolean 4485 gboolean
4435 purple_ip_address_is_valid(const char *ip) 4486 purple_ip_address_is_valid(const char *ip)
4436 { 4487 {
4437 return purple_ipv4_address_is_valid(ip); 4488 return (purple_ipv4_address_is_valid(ip) || purple_ipv6_address_is_valid(ip));
4438 } 4489 }
4439 4490
4440 /* Stolen from gnome_uri_list_extract_uris */ 4491 /* Stolen from gnome_uri_list_extract_uris */
4441 GList * 4492 GList *
4442 purple_uri_list_extract_uris(const gchar *uri_list) 4493 purple_uri_list_extract_uris(const gchar *uri_list)