From b2b50a1030874fa1cac33052d20327d4d18be0fe Mon Sep 17 00:00:00 2001 From: David Yat Sin Date: Fri, 25 Feb 2011 12:20:32 -0500 Subject: [PATCH] freetdm: Removed unnecessary parameter copy Added ftdm_raw_data_t --- libs/freetdm/src/ftdm_io.c | 7 ++----- libs/freetdm/src/ftdm_variables.c | 2 +- libs/freetdm/src/include/freetdm.h | 16 +++++++--------- libs/freetdm/src/include/private/ftdm_core.h | 2 +- 4 files changed, 11 insertions(+), 16 deletions(-) diff --git a/libs/freetdm/src/ftdm_io.c b/libs/freetdm/src/ftdm_io.c index 4aea149234..8059d1ee4c 100644 --- a/libs/freetdm/src/ftdm_io.c +++ b/libs/freetdm/src/ftdm_io.c @@ -4049,7 +4049,7 @@ done: return status; } -FT_DECLARE(ftdm_iterator_t) *get_iterator(ftdm_iterator_type_t type, ftdm_iterator_t *iter) +FT_DECLARE(ftdm_iterator_t) *ftdm_get_iterator(ftdm_iterator_type_t type, ftdm_iterator_t *iter) { int allocated = 0; if (iter) { @@ -4075,7 +4075,7 @@ FT_DECLARE(ftdm_iterator_t) *get_iterator(ftdm_iterator_type_t type, ftdm_iterat FT_DECLARE(ftdm_iterator_t *) ftdm_span_get_chan_iterator(const ftdm_span_t *span, ftdm_iterator_t *iter) { - if (!(iter = get_iterator(FTDM_ITERATOR_CHANS, iter))) { + if (!(iter = ftdm_get_iterator(FTDM_ITERATOR_CHANS, iter))) { return NULL; } iter->pvt.chaniter.index = 1; @@ -6100,9 +6100,6 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_save_usrmsg(ftdm_channel_t *ftdmchan, ftd memcpy(ftdmchan->usrmsg, usrmsg, sizeof(ftdm_usrmsg_t)); if (usrmsg->raw.data) { - ftdmchan->usrmsg->raw.data = usrmsg->raw.data; - ftdmchan->usrmsg->raw.len = usrmsg->raw.len; - usrmsg->raw.data = NULL; usrmsg->raw.len = 0; } diff --git a/libs/freetdm/src/ftdm_variables.c b/libs/freetdm/src/ftdm_variables.c index 96db383b6e..a2899c4ca9 100644 --- a/libs/freetdm/src/ftdm_variables.c +++ b/libs/freetdm/src/ftdm_variables.c @@ -92,7 +92,7 @@ FT_DECLARE(ftdm_iterator_t *) ftdm_sigmsg_get_var_iterator(const ftdm_sigmsg_t * return NULL; } - if (!(iter = get_iterator(FTDM_ITERATOR_VARS, iter))) { + if (!(iter = ftdm_get_iterator(FTDM_ITERATOR_VARS, iter))) { return NULL; } iter->pvt.hashiter = hashiter; diff --git a/libs/freetdm/src/include/freetdm.h b/libs/freetdm/src/include/freetdm.h index 86c9b739c9..a34a2ca188 100644 --- a/libs/freetdm/src/include/freetdm.h +++ b/libs/freetdm/src/include/freetdm.h @@ -550,6 +550,11 @@ typedef struct { typedef void * ftdm_variable_container_t; +typedef struct { + ftdm_size_t len; + void *data; +} ftdm_raw_data_t; + /*! \brief Generic signaling message received from the stack */ struct ftdm_sigmsg { ftdm_signal_event_t event_id; /*!< The type of message */ @@ -565,20 +570,13 @@ struct ftdm_sigmsg { ftdm_event_collected_t collected; /*!< valid if event_id is FTDM_SIGEVENT_COLLECTED_DIGIT */ ftdm_event_indication_completed_t indication_completed; /*!< valid if the event_id is FTDM_SIGEVENT_INDICATION_COMPLETED */ } ev_data; - struct { - ftdm_size_t len; /*!< Data len */ - void *data; /*!< Signaling module specific data */ - } raw; + ftdm_raw_data_t raw; }; /*! \brief Generic user message sent to the stack */ struct ftdm_usrmsg { - uint32_t call_id; /*!< unique call id for this call */ ftdm_variable_container_t variables; - struct { - ftdm_size_t len; /*!< Data len */ - void *data; /*!< Signaling module specific data */ - } raw; + ftdm_raw_data_t raw; }; /*! \brief Crash policy diff --git a/libs/freetdm/src/include/private/ftdm_core.h b/libs/freetdm/src/include/private/ftdm_core.h index ae8adfb203..464b1c0209 100644 --- a/libs/freetdm/src/include/private/ftdm_core.h +++ b/libs/freetdm/src/include/private/ftdm_core.h @@ -590,7 +590,7 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_open_chan(ftdm_channel_t *ftdmchan); FT_DECLARE(void) ftdm_ack_indication(ftdm_channel_t *ftdmchan, ftdm_channel_indication_t indication, ftdm_status_t status); -FT_DECLARE(ftdm_iterator_t) *get_iterator(ftdm_iterator_type_t type, ftdm_iterator_t *iter); +FT_DECLARE(ftdm_iterator_t) *ftdm_get_iterator(ftdm_iterator_type_t type, ftdm_iterator_t *iter); /*!