stasis_channels.c: Add null check for referred_by in ast_ari_transfer_message_create

When handling SIP transfers via ARI, the `referred_by` field in
`transfer_ari_state` may be null, since SIP REFER requests are not
required to include a `Referred-By` header. Without this check, a null
value caused the transfer to fail and triggered a NOTIFY with a 500
Internal Server Error.
This commit is contained in:
Sven Kube
2025-09-18 08:26:33 +02:00
committed by github-actions[bot]
parent 896850ca35
commit 9e50fb3880

View File

@@ -1797,11 +1797,14 @@ struct ast_ari_transfer_message *ast_ari_transfer_message_create(struct ast_chan
}
}
msg->referred_by = ast_strdup(referred_by);
if (!msg->referred_by) {
ao2_cleanup(msg);
return NULL;
if (referred_by) {
msg->referred_by = ast_strdup(referred_by);
if (!msg->referred_by) {
ao2_cleanup(msg);
return NULL;
}
}
ast_copy_string(msg->destination, exten, sizeof(msg->destination));
msg->protocol_id = ast_strdup(protocol_id);
if (!msg->protocol_id) {