aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_sip.c
diff options
context:
space:
mode:
Diffstat (limited to 'channels/chan_sip.c')
-rw-r--r--channels/chan_sip.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 5d04495d1..d1cb709fd 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -22076,8 +22076,9 @@ static struct sip_peer *build_peer(const char *name, struct ast_variable *v, str
if (!ast_strlen_zero(callback)) { /* build string from peer info */
char *reg_string;
- asprintf(&reg_string, "%s:%s@%s/%s", peer->username, peer->secret, peer->tohost, callback);
- if (reg_string) {
+ if (asprintf(&reg_string, "%s:%s@%s/%s", peer->username, peer->secret, peer->tohost, callback) < 0) {
+ ast_log(LOG_WARNING, "asprintf() failed: %s\n", strerror(errno));
+ } else if (reg_string) {
sip_register(reg_string, 0); /* XXX TODO: count in registry_count */
ast_free(reg_string);
}