aboutsummaryrefslogtreecommitdiffstats
path: root/include/asterisk
diff options
context:
space:
mode:
authormurf <murf@f38db490-d61c-443f-a65b-d21fe96a405b>2007-03-30 14:11:59 +0000
committermurf <murf@f38db490-d61c-443f-a65b-d21fe96a405b>2007-03-30 14:11:59 +0000
commit3bbd029dc1830cd9c95e80d40b94b497e8eb03ce (patch)
tree371ceb6ca44bb4823cf9edd0950c46a27e43b866 /include/asterisk
parent9b58ce234b81070f69a8b7b5eb46630fb5643f89 (diff)
These mods fix CDR issues from 8221, 8593, 8680, 8743, and perhaps others. Mainly with CDRs generated from transfer situations.
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@59486 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include/asterisk')
-rw-r--r--include/asterisk/cdr.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/asterisk/cdr.h b/include/asterisk/cdr.h
index e6fbe96ff..1fb4f634b 100644
--- a/include/asterisk/cdr.h
+++ b/include/asterisk/cdr.h
@@ -118,6 +118,12 @@ struct ast_cdr *ast_cdr_dup(struct ast_cdr *cdr);
*/
void ast_cdr_free(struct ast_cdr *cdr);
+/*! \brief Discard and free a CDR record
+ * \param cdr ast_cdr structure to free
+ * Returns nothing important -- same as free, but no checks or complaints
+ */
+void ast_cdr_discard(struct ast_cdr *cdr);
+
/*! \brief Initialize based on a channel
* \param cdr Call Detail Record to use for channel
* \param chan Channel to bind CDR with
@@ -266,6 +272,12 @@ void ast_cdr_reset(struct ast_cdr *cdr, struct ast_flags *flags);
*/
char *ast_cdr_flags2str(int flags);
+/*! Move the non-null data from the "from" cdr to the "to" cdr
+ * \param to the cdr to get the goodies
+ * \param from the cdr to give the goodies
+ */
+void ast_cdr_merge(struct ast_cdr *to, struct ast_cdr *from);
+
int ast_cdr_setaccount(struct ast_channel *chan, const char *account);
int ast_cdr_setamaflags(struct ast_channel *chan, const char *amaflags);