Module: kamailio Branch: master Commit: 2faeae906b182b9f2bf0e79dd073e3de99a3f3cc URL: https://github.com/kamailio/kamailio/commit/2faeae906b182b9f2bf0e79dd073e3de99a3f3cc
Author: herlesupreeth <[email protected]> Committer: Victor Seva <[email protected]> Date: 2026-03-01T15:18:25+01:00 ims_qos: fix in-dialog requests by removing comparison of SDP stream number and direction --- Modified: src/modules/ims_qos/rx_aar.c Modified: src/modules/ims_qos/rx_authdata.c Modified: src/modules/ims_qos/rx_authdata.h --- Diff: https://github.com/kamailio/kamailio/commit/2faeae906b182b9f2bf0e79dd073e3de99a3f3cc.diff Patch: https://github.com/kamailio/kamailio/commit/2faeae906b182b9f2bf0e79dd073e3de99a3f3cc.patch --- diff --git a/src/modules/ims_qos/rx_aar.c b/src/modules/ims_qos/rx_aar.c index 802c8869974..43701ba20bb 100644 --- a/src/modules/ims_qos/rx_aar.c +++ b/src/modules/ims_qos/rx_aar.c @@ -681,9 +681,8 @@ int add_media_components(AAAMessage *aar, struct sip_msg *req, } if(!flow_description_exists(p_session_data, - sdp_stream_num + 1, &req_sdp_stream->media, - &ipA, &portA, &ipB, &portB, - &rpl_sdp_stream->transport, direction, + &req_sdp_stream->media, &ipA, &portA, &ipB, + &portB, &rpl_sdp_stream->transport, in_current_flow_description_list)) { // Flow description does not exist in the list of flow descriptions to be added. So we add it to auth session data. add_flow_description(p_session_data, diff --git a/src/modules/ims_qos/rx_authdata.c b/src/modules/ims_qos/rx_authdata.c index 3cad0a87966..c18bd361a9a 100644 --- a/src/modules/ims_qos/rx_authdata.c +++ b/src/modules/ims_qos/rx_authdata.c @@ -390,10 +390,10 @@ int add_flow_description(rx_authsessiondata_t *session_data, int stream_num, * Returns 1 if flow description exists, 0 otherwise. * Comparison is based on all relevant flow description parameters. */ -int flow_description_exists(rx_authsessiondata_t *session_data, int stream_num, - str *media, str *req_sdp_ip_addr, str *req_sdp_port, - str *rpl_sdp_ip_addr, str *rpl_sdp_port, str *rpl_sdp_transport, - int direction, int current_flow_description_list) +int flow_description_exists(rx_authsessiondata_t *session_data, str *media, + str *req_sdp_ip_addr, str *req_sdp_port, str *rpl_sdp_ip_addr, + str *rpl_sdp_port, str *rpl_sdp_transport, + int current_flow_description_list) { flow_description_t *fd; @@ -408,18 +408,6 @@ int flow_description_exists(rx_authsessiondata_t *session_data, int stream_num, } while(fd) { - /* Compare stream number. */ - if(fd->stream_num != stream_num) { - fd = fd->next; - continue; - } - - /* Compare direction. */ - if(fd->direction != direction) { - fd = fd->next; - continue; - } - /* Compare media. */ if(media && (fd->media.len != media->len diff --git a/src/modules/ims_qos/rx_authdata.h b/src/modules/ims_qos/rx_authdata.h index c30a5d344fa..6d6f864df24 100644 --- a/src/modules/ims_qos/rx_authdata.h +++ b/src/modules/ims_qos/rx_authdata.h @@ -122,10 +122,10 @@ int add_flow_description(rx_authsessiondata_t *session_data, int stream_num, str *req_sdp_raw_stream, str *rpl_sdp_raw_stream, int direction, int current); void free_flow_description(rx_authsessiondata_t *session_data, int current); -int flow_description_exists(rx_authsessiondata_t *session_data, int stream_num, - str *media, str *req_sdp_ip_addr, str *req_sdp_port, - str *rpl_sdp_ip_addr, str *rpl_sdp_port, str *rpl_sdp_transport, - int direction, int current_flow_description_list); +int flow_description_exists(rx_authsessiondata_t *session_data, str *media, + str *req_sdp_ip_addr, str *req_sdp_port, str *rpl_sdp_ip_addr, + str *rpl_sdp_port, str *rpl_sdp_transport, + int current_flow_description_list); void show_callsessiondata(rx_authsessiondata_t *session_data); _______________________________________________ Kamailio - Development Mailing List -- [email protected] To unsubscribe send an email to [email protected] Important: keep the mailing list in the recipients, do not reply only to the sender!
