From fba10fb54c1b2fe1e4926abe032d2b72815e504d Mon Sep 17 00:00:00 2001
From: Alexander Greiner-Baer <alex+asterisk@greiner-baer.de>
Date: Tue, 17 Nov 2020 21:19:35 +0100
Subject: [PATCH] res_pjsip: set Accept-Encoding to identity in OPTIONS
 response

RFC 3261 says that the Accept-Encoding header should be present
in an options response. Permitted values according to RFC 2616
are only compression algorithms like gzip or the default identity
encoding. Therefore "text/plain" is not a correct value here.
As long as the header is hard coded, it should be set to "identity".

Without this fix an Alcatel OmniPCX periodically logs warnings like
"[sip_acceptIncorrectHeader] Header Accept-Encoding is malformed"
on a SIP Trunk.

ASTERISK-29165 #close

Change-Id: I0aa2211ebf0b4c2ed554ac7cda794523803a3840
---
 res/res_pjsip/pjsip_options.c | 2 +-
 res/res_pjsip_dlg_options.c   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/res/res_pjsip/pjsip_options.c b/res/res_pjsip/pjsip_options.c
index 579165fdde..e1f048e9a6 100644
--- a/res/res_pjsip/pjsip_options.c
+++ b/res/res_pjsip/pjsip_options.c
@@ -94,7 +94,7 @@
  */
 
 #define DEFAULT_LANGUAGE "en"
-#define DEFAULT_ENCODING "text/plain"
+#define DEFAULT_ENCODING "identity"
 
 /*! \brief These are the number of buckets to store AORs in */
 #ifdef LOW_MEMORY
diff --git a/res/res_pjsip_dlg_options.c b/res/res_pjsip_dlg_options.c
index 5c1da53583..d07373495f 100644
--- a/res/res_pjsip_dlg_options.c
+++ b/res/res_pjsip_dlg_options.c
@@ -34,7 +34,7 @@
 #include "asterisk/res_pjsip_session.h"
 
 #define DEFAULT_LANGUAGE "en"
-#define DEFAULT_ENCODING "text/plain"
+#define DEFAULT_ENCODING "identity"
 
 static int options_incoming_request(struct ast_sip_session *session, pjsip_rx_data *rdata)
 {
-- 
GitLab