Module: kamailio
Branch: master
Commit: d73d56b41028341c46a331dfb74f5805248aae56
URL: 
https://github.com/kamailio/kamailio/commit/d73d56b41028341c46a331dfb74f5805248aae56

Author: jaybeepee <[email protected]>
Committer: jaybeepee <[email protected]>
Date: 2015-11-10T10:36:16+02:00

modules/ims_charging: removed unused impu_data parcel (memory leak)

---

Modified: modules/ims_charging/mod.c
Modified: modules/ims_charging/ro_session_hash.h

---

Diff:  
https://github.com/kamailio/kamailio/commit/d73d56b41028341c46a331dfb74f5805248aae56.diff
Patch: 
https://github.com/kamailio/kamailio/commit/d73d56b41028341c46a331dfb74f5805248aae56.patch

---

diff --git a/modules/ims_charging/mod.c b/modules/ims_charging/mod.c
index 48f050b..d2f371d 100644
--- a/modules/ims_charging/mod.c
+++ b/modules/ims_charging/mod.c
@@ -378,10 +378,7 @@ static int w_ro_ccr(struct sip_msg *msg, char* 
c_route_name, char* c_direction,
        tm_cell_t *t;
        unsigned int tindex = 0,
                                 tlabel = 0;
-       struct impu_data *impu_data;
-       char *p;
        struct dlg_cell* dlg;
-       unsigned int len;
        struct ro_session *ro_session = 0;
        int free_contact = 0;
        
@@ -457,34 +454,6 @@ static int w_ro_ccr(struct sip_msg *msg, char* 
c_route_name, char* c_direction,
        }
        
        LM_DBG("IMPU data to pass to usrloc:  contact <%.*s> identity 
<%.*s>\n", contact.len, contact.s, identity.len, identity.s);
-       
-       //create impu_data_parcel
-       len = identity.len + contact.len +  sizeof (struct impu_data);
-       impu_data = (struct impu_data*) shm_malloc(len);
-       if (!impu_data) {
-           LM_ERR("Unable to allocate memory for impu_data, trying to send 
CCR\n");
-           ret = RO_RETURN_ERROR;
-           goto done;
-       }
-       memset(impu_data, 0, len);
-       
-       p = (char*) (impu_data + 1);
-       impu_data->identity.s = p;
-       impu_data->identity.len = identity.len;
-       memcpy(p, identity.s, identity.len);
-       p += identity.len;
-
-       impu_data->contact.s = p;
-       impu_data->contact.len = contact.len;
-       memcpy(p, contact.s, contact.len);
-       p += contact.len;
-       
-       if (p != (((char*) impu_data) + len)) {
-           LM_ERR("buffer overflow creating impu data, trying to send CCR\n");
-           shm_free(impu_data);
-           ret = RO_RETURN_ERROR;
-           goto done;
-       }
 
 send_ccr:
 
diff --git a/modules/ims_charging/ro_session_hash.h 
b/modules/ims_charging/ro_session_hash.h
index dcd79e5..7257721 100644
--- a/modules/ims_charging/ro_session_hash.h
+++ b/modules/ims_charging/ro_session_hash.h
@@ -173,12 +173,6 @@ static inline void unlink_unsafe_ro_session(struct 
ro_session_entry *ro_session_
 int init_ro_session_table(unsigned int size);
 
 /*!
- * \brief Destroy a ro_session and free memory
- * \param ro_session destroyed Ro Session
- */
-inline void destroy_ro_session(struct ro_session *ro_session);
-
-/*!
  * \brief Destroy the ro_session dialog table
  */
 void destroy_ro_session_table(void);


_______________________________________________
sr-dev mailing list
[email protected]
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev

Reply via email to