res_pjsip: Fixed invalid empty Server and User-Agent SIP headers.

Setting pjsip.conf useragent to an empty string results in an empty SIP
header being sent.

* Made not add an empty SIP header item to the global SIP headers list.

Review: https://reviewboard.asterisk.org/r/4467/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@432764 65c4cc65-6c06-0410-ace0-fbb531ad65f3
changes/43/43/1
Richard Mudgett 10 years ago
parent bc357c1d7e
commit 737064bfa4

@ -121,18 +121,22 @@ static void remove_header(struct header_list *headers, const char *to_remove)
static int add_header(struct header_list *headers, const char *name, const char *value, int replace)
{
struct header *to_add;
struct header *to_add = NULL;
to_add = alloc_header(name, value);
if (!to_add) {
return -1;
if (!ast_strlen_zero(value)) {
to_add = alloc_header(name, value);
if (!to_add) {
return -1;
}
}
AST_RWLIST_WRLOCK(headers);
if (replace) {
remove_header(headers, name);
}
AST_LIST_INSERT_TAIL(headers, to_add, next);
if (to_add) {
AST_LIST_INSERT_TAIL(headers, to_add, next);
}
AST_RWLIST_UNLOCK(headers);
return 0;

Loading…
Cancel
Save