Explorar o código

core: safety check for server_header lenght

- don't add the header in local generated replies if the value is empty

(cherry picked from commit 866ddc109bfd7c681e13ce529d271e8a2a33a972)
Daniel-Constantin Mierla %!s(int64=11) %!d(string=hai) anos
pai
achega
6f4c872f30
Modificáronse 1 ficheiros con 2 adicións e 2 borrados
  1. 2 2
      msg_translator.c

+ 2 - 2
msg_translator.c

@@ -2398,7 +2398,7 @@ char * build_res_buf_from_sip_req( unsigned int code, str *text ,str *new_tag,
 			body = lump;
 	}
 	/* server header */
-	if (server_signature)
+	if (server_signature && server_hdr.len)
 		len += server_hdr.len + CRLF_LEN;
 	/* warning hdr */
 	if (sip_warning) {
@@ -2536,7 +2536,7 @@ char * build_res_buf_from_sip_req( unsigned int code, str *text ,str *new_tag,
 			p += lump->text.len;
 		}
 	/* server header */
-	if (server_signature) {
+	if (server_signature && server_hdr.len>0) {
 		memcpy( p, server_hdr.s, server_hdr.len );
 		p+=server_hdr.len;
 		memcpy( p, CRLF, CRLF_LEN );