| 246 char **elems, **cur, **tokens; |
246 char **elems, **cur, **tokens; |
| 247 |
247 |
| 248 session->nexus = msn_nexus_new(session); |
248 session->nexus = msn_nexus_new(session); |
| 249 |
249 |
| 250 /* Parse the challenge data. */ |
250 /* Parse the challenge data. */ |
| 251 |
251 session->nexus->challenge_data_str = g_strdup(cmd->params[3]); |
| 252 elems = g_strsplit(cmd->params[3], ",", 0); |
252 elems = g_strsplit(cmd->params[3], ",", 0); |
| 253 |
253 |
| 254 for (cur = elems; *cur != NULL; cur++){ |
254 for (cur = elems; *cur != NULL; cur++){ |
| 255 tokens = g_strsplit(*cur, "=", 2); |
255 tokens = g_strsplit(*cur, "=", 2); |
| 256 // gaim_debug_info("MaYuan","challenge %p,key:%s,value:%s\n", |
256 if(tokens[0]&&tokens[1]){ |
| 257 // session->nexus->challenge_data,tokens[0],tokens[1]); |
257 gaim_debug_info("MaYuan","challenge %p,key:%s,value:%s\n", |
| 258 if(tokens[0]&&tokens[1]) |
258 session->nexus->challenge_data,tokens[0],tokens[1]); |
| 259 g_hash_table_insert(session->nexus->challenge_data, tokens[0], tokens[1]); |
259 g_hash_table_insert(session->nexus->challenge_data, tokens[0], tokens[1]); |
| |
260 } |
| 260 /* Don't free each of the tokens, only the array. */ |
261 /* Don't free each of the tokens, only the array. */ |
| 261 g_free(tokens); |
262 g_free(tokens); |
| 262 } |
263 } |
| 263 |
264 |
| 264 g_strfreev(elems); |
265 g_strfreev(elems); |