diff options
Diffstat (limited to 'pjsip/src/pjsip/sip_msg.c')
-rw-r--r-- | pjsip/src/pjsip/sip_msg.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/pjsip/src/pjsip/sip_msg.c b/pjsip/src/pjsip/sip_msg.c index 7ef55746..8596aa91 100644 --- a/pjsip/src/pjsip/sip_msg.c +++ b/pjsip/src/pjsip/sip_msg.c @@ -21,6 +21,7 @@ #include <pjsip/sip_parser.h> #include <pjsip/print_util.h> #include <pjsip/sip_errno.h> +#include <pj/ctype.h> #include <pj/string.h> #include <pj/pool.h> #include <pj/assert.h> @@ -1903,7 +1904,14 @@ static int pjsip_via_hdr_print( pjsip_via_hdr *hdr, /* SIP/2.0/transport host:port */ pj_memcpy(buf, sip_ver.ptr, sip_ver.slen); buf += sip_ver.slen; - pj_memcpy(buf, hdr->transport.ptr, hdr->transport.slen); + //pj_memcpy(buf, hdr->transport.ptr, hdr->transport.slen); + /* Convert transport type to UPPERCASE (some endpoints want that) */ + { + int i; + for (i=0; i<hdr->transport.slen; ++i) { + buf[i] = (char)pj_toupper(hdr->transport.ptr[i]); + } + } buf += hdr->transport.slen; *buf++ = ' '; |