int fetion_buddylist_create(User* user , const char* name) { FetionSip* sip = user->sip; SipHeader* eheader; char *res , *body; int ret; fetion_sip_set_type(sip , SIP_SERVICE); eheader = fetion_sip_event_header_new(SIP_EVENT_CREATEBUDDYLIST); fetion_sip_add_header(sip , eheader); body = generate_create_buddylist_body(name); res = fetion_sip_to_string(sip , body); free(body); tcp_connection_send(sip->tcp , res , strlen(res)); free(res) ; res = fetion_sip_get_response(sip); ret = fetion_sip_get_code(res); if(ret == 200) { ret = parse_create_buddylist_response(user , res); free(res); debug_info("Create buddy list success"); return ret; } else { free(res); debug_error("Create buddy list failed , errno :" , ret); return -1; } }
gint fetion_buddylist_create(User *user, const gchar *name) { fetion_sip* sip = user->sip; SipHeader* eheader; gchar *res , *body; fetion_sip_set_type(sip , SIP_SERVICE); eheader = fetion_sip_event_header_new(SIP_EVENT_CREATEBUDDYLIST); fetion_sip_add_header(sip , eheader); body = generate_create_buddylist_body(name); res = fetion_sip_to_string(sip , body); g_free(body); g_free(res); return 0; }