df81958
From: Razvan Crainea <razvan@opensips.org>
df81958
Date: Fri, 27 Oct 2017 12:01:36 +0300
df81958
Subject: [PATCH] sst: fix MIN-SE header printing
df81958
df81958
df81958
diff --git a/modules/sst/sst_handlers.c b/modules/sst/sst_handlers.c
df81958
index d3c2e8a4b..7e3661c0a 100644
df81958
--- a/modules/sst/sst_handlers.c
df81958
+++ b/modules/sst/sst_handlers.c
df81958
@@ -985,23 +985,17 @@ static int parse_msg_for_sst_info(struct sip_msg *msg, sst_msg_info_t *minfo)
df81958
  */
df81958
 static int send_reject(struct sip_msg *msg, unsigned int min_se)
df81958
 {
df81958
-	char tmp[2]; /* to find the length */
df81958
+	char tmp[8 /* "MIN-SE: " */ + INT2STR_MAX_LEN + 2 /* CRLF */ + 1 /* '\0' */];
df81958
 	int hdr_len = 0;
df81958
 	char *minse_hdr = NULL;
df81958
 
df81958
-	hdr_len = snprintf(tmp, 2, "%s %d%s", "MIN-SE:", min_se, CRLF);
df81958
-	if ((minse_hdr = pkg_malloc(hdr_len+1)) != NULL) {
df81958
-		memset(minse_hdr, 0, hdr_len+1);
df81958
-		snprintf(minse_hdr, hdr_len+1, "%s %d%s", "MIN-SE:", min_se, CRLF);
df81958
-		if (send_response(msg, 422, &sst_422_rpl, minse_hdr, hdr_len)) {
df81958
-			LM_ERR("Error sending 422 reply.\n");
df81958
-			return(-1);
df81958
-		}
df81958
-		pkg_free(minse_hdr);
df81958
-		LM_DBG("Send reject reply 422 with Min-SE: %d\n", min_se);
df81958
-		return(0);
df81958
+	hdr_len = snprintf(tmp, sizeof(tmp), "%s %d%s", "MIN-SE:", min_se, CRLF);
df81958
+	if (send_response(msg, 422, &sst_422_rpl, minse_hdr, hdr_len)) {
df81958
+		LM_ERR("Error sending 422 reply.\n");
df81958
+		return(-1);
df81958
 	}
df81958
-	return(-1);
df81958
+	LM_DBG("Send reject reply 422 with Min-SE: %d\n", min_se);
df81958
+	return(0);
df81958
 }
df81958
 
df81958
 /**