summaryrefslogtreecommitdiff
path: root/channels/chan_iax2.c
diff options
context:
space:
mode:
authorKevin P. Fleming <kpfleming@digium.com>2006-10-17 22:24:45 +0000
committerKevin P. Fleming <kpfleming@digium.com>2006-10-17 22:24:45 +0000
commit696f9ed6770cec3d2a43317c3a0839f6854248a3 (patch)
tree8796bfc07201b298a7b085d159b527c2fa5a9fd9 /channels/chan_iax2.c
parent17fabe225d59d30a01163fea76a5f6a976362c83 (diff)
Merged revisions 45408 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r45408 | kpfleming | 2006-10-17 17:24:10 -0500 (Tue, 17 Oct 2006) | 3 lines optimize the 'quick response' code a bit more... no more malloc() or memset() for each response expand stringfields API a bit to allow reusing the stringfield pool on a structure when needed, and remove some unnecessary code when the structure was being freed ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45409 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_iax2.c')
-rw-r--r--channels/chan_iax2.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index f71a32af5..7abe62fdf 100644
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -1751,7 +1751,7 @@ retry:
iax2_frame_free(frame.data);
jb_destroy(pvt->jb);
/* gotta free up the stringfields */
- ast_string_field_free_all(pvt);
+ ast_string_field_free_pools(pvt);
free(pvt);
}
}
@@ -8309,7 +8309,7 @@ static struct iax2_peer *build_peer(const char *name, struct ast_variable *v, st
peer->expire = -1;
ast_clear_flag(peer, IAX_DYNAMIC);
if (ast_dnsmgr_lookup(v->value, &peer->addr.sin_addr, &peer->dnsmgr)) {
- ast_string_field_free_all(peer);
+ ast_string_field_free_pools(peer);
free(peer);
return NULL;
}
@@ -8320,7 +8320,7 @@ static struct iax2_peer *build_peer(const char *name, struct ast_variable *v, st
inet_aton("255.255.255.255", &peer->mask);
} else if (!strcasecmp(v->name, "defaultip")) {
if (ast_get_ip(&peer->defaddr, v->value)) {
- ast_string_field_free_all(peer);
+ ast_string_field_free_pools(peer);
free(peer);
return NULL;
}
@@ -8456,7 +8456,7 @@ static struct iax2_user *build_user(const char *name, struct ast_variable *v, st
if (user) {
if (firstpass) {
- ast_string_field_free_all(user);
+ ast_string_field_free_pools(user);
memset(user, 0, sizeof(struct iax2_user));
if (ast_string_field_init(user, 32)) {
free(user);
@@ -8654,7 +8654,7 @@ static void destroy_user(struct iax2_user *user)
ast_variables_destroy(user->vars);
user->vars = NULL;
}
- ast_string_field_free_all(user);
+ ast_string_field_free_pools(user);
free(user);
}
@@ -8695,7 +8695,7 @@ static void destroy_peer(struct iax2_peer *peer)
register_peer_exten(peer, 0);
if (peer->dnsmgr)
ast_dnsmgr_release(peer->dnsmgr);
- ast_string_field_free_all(peer);
+ ast_string_field_free_pools(peer);
free(peer);
}