Merge branch 'master' of ssh://git.freeswitch.org:222/freeswitch
This commit is contained in:
commit
435879d613
|
@ -239,21 +239,25 @@ static void extract_header_vars(sofia_profile_t *profile, sip_t const *sip,
|
|||
switch_stream_handle_t stream = { 0 };
|
||||
int x = 0;
|
||||
|
||||
if (switch_channel_direction(channel) == SWITCH_CALL_DIRECTION_OUTBOUND) {
|
||||
SWITCH_STANDARD_STREAM(stream);
|
||||
SWITCH_STANDARD_STREAM(stream);
|
||||
|
||||
for(vp = sip->sip_via; vp; vp = vp->v_next) {
|
||||
char *v = sip_header_as_string(nh->nh_home, (void *) vp);
|
||||
|
||||
stream.write_function(&stream, x == 0 ? "%s" : ",%s", v);
|
||||
su_free(nh->nh_home, v);
|
||||
|
||||
x++;
|
||||
}
|
||||
for(vp = sip->sip_via; vp; vp = vp->v_next) {
|
||||
char *v = sip_header_as_string(nh->nh_home, (void *) vp);
|
||||
|
||||
switch_channel_set_variable(channel, "sip_recover_via", (char *)stream.data);
|
||||
free(stream.data);
|
||||
stream.write_function(&stream, x == 0 ? "%s" : ",%s", v);
|
||||
su_free(nh->nh_home, v);
|
||||
|
||||
x++;
|
||||
}
|
||||
|
||||
switch_channel_set_variable(channel, "sip_full_via", (char *)stream.data);
|
||||
|
||||
if (switch_channel_direction(channel) == SWITCH_CALL_DIRECTION_OUTBOUND) {
|
||||
switch_channel_set_variable(channel, "sip_recover_via", (char *)stream.data);
|
||||
}
|
||||
|
||||
free(stream.data);
|
||||
|
||||
}
|
||||
|
||||
if (sip->sip_from) {
|
||||
|
|
Loading…
Reference in New Issue