static int w_sdp_keep_codecs_by_name(sip_msg_t* msg, char* codecs, char* media) { str lcodecs = {0, 0}; str lmedia = {0, 0}; if(codecs==0) { LM_ERR("invalid parameters\n"); return -1; } if(fixup_get_svalue(msg, (gparam_p)codecs, &lcodecs)!=0) { LM_ERR("unable to get the list of codecs\n"); return -1; } if(media!=NULL) { if(fixup_get_svalue(msg, (gparam_p)media, &lmedia)!=0) { LM_ERR("unable to get the media type\n"); return -1; } } if(sdp_keep_codecs_by_name(msg, &lcodecs, (media)?&lmedia:NULL)<0) return -1; return 1; }
static int w_sdp_keep_codecs_by_name(sip_msg_t* msg, char* codecs, char* bar) { str lcodecs = {0, 0}; if(codecs==0) { LM_ERR("invalid parameters\n"); return -1; } if(fixup_get_svalue(msg, (gparam_p)codecs, &lcodecs)!=0) { LM_ERR("unable to get the list of codecs\n"); return -1; } if(sdp_keep_codecs_by_name(msg, &lcodecs)<0) return -1; return 1; }