libpurple/protocols/simple/sipmsg.c

changeset 40416
54c050e07348
parent 40415
f38b64939ecb
child 40443
025772e2b454
equal deleted inserted replaced
40415:f38b64939ecb 40416:54c050e07348
148 (gchar *)elem->value); 148 (gchar *)elem->value);
149 cur = g_slist_next(cur); 149 cur = g_slist_next(cur);
150 } 150 }
151 } 151 }
152 152
153 char *sipmsg_to_string(const struct sipmsg *msg) { 153 gchar *
154 sipmsg_to_string(const struct sipmsg *msg, const gchar *status_text)
155 {
154 GSList *cur; 156 GSList *cur;
155 GString *outstr = g_string_new(""); 157 GString *outstr = g_string_new("");
156 PurpleKeyValuePair *elem; 158 PurpleKeyValuePair *elem;
157 159
158 if(msg->response) 160 if (msg->response) {
159 g_string_append_printf(outstr, "SIP/2.0 %d Unknown\r\n", 161 g_string_append_printf(outstr, "SIP/2.0 %d %s\r\n", msg->response,
160 msg->response); 162 status_text ? status_text : "Unknown");
161 else 163 } else {
162 g_string_append_printf(outstr, "%s %s SIP/2.0\r\n", 164 g_string_append_printf(outstr, "%s %s SIP/2.0\r\n",
163 msg->method, msg->target); 165 msg->method, msg->target);
166 }
164 167
165 cur = msg->headers; 168 cur = msg->headers;
166 while(cur) { 169 while(cur) {
167 elem = cur->data; 170 elem = cur->data;
168 g_string_append_printf(outstr, "%s: %s\r\n", elem->key, 171 g_string_append_printf(outstr, "%s: %s\r\n", elem->key,

mercurial