<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Hello,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Posting this on behalf of "Amitanand Chikorde <font size="2"><span style="font-size:11pt"><Amitanand.Chikorde@kpit.com>"</span></font><br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<font size="2"><span style="font-size:11pt">From: "Amitanand.Chikorde" <Amitanand.Chikorde@kpit.com><br>
<br>
Fixed below codesonar warning.<br>
isprint() is invoked here with an argument of signed type char, but<br>
only has defined behavior for int arguments that are either<br>
representable as unsigned char or equal to the value of macro EOF(-1).<br>
<br>
As per codesonar report, in a number of libc implementations, isprint()<br>
is implemented using lookup tables (arrays): passing in a negative<br>
value can result in a read underrun.<br>
<br>
To avoid this unexpected behaviour, typecasted char type argument to<br>
unsigned char type.<br>
<br>
Upstream-Status: Pending<br>
Signed-off-by: Amitanand.Chikorde <Amitanand.Chikorde@kpit.com><br>
Signed-off-by: Rahul Taya <Rahul.Taya@kpit.com><br>
---<br>
 .../files/davici_codesonar_warnings_fix.patch      | 37 ++++++++++++++++++++++<br>
 1 file changed, 37 insertions(+)<br>
 create mode 100644 recipes-support/strongswan/files/davici_codesonar_warnings_fix.patch<br>
<br>
diff --git a/recipes-support/strongswan/files/davici_codesonar_warnings_fix.patch b/recipes-support/strongswan/files/davici_codesonar_warnings_fix.patch<br>
new file mode 100644<br>
index 0000000..2318479<br>
--- /dev/null<br>
+++ b/recipes-support/strongswan/files/davici_codesonar_warnings_fix.patch<br>
@@ -0,0 +1,37 @@<br>
+davici: Fix codesonar warnings<br>
+<br>
+isprint() is invoked here with an argument of signed type char,<br>
+but only has defined behavior for int arguments that are either<br>
+representable as unsigned char or equal to the value of macro<br>
+EOF(-1).<br>
+<br>
+As per codesonar report, in a number of libc implementations,<br>
+isprint() is implemented using lookup tables (arrays): passing<br>
+in a negative value can result in a read underrun.<br>
+<br>
+To avoid this unexpected behaviour, typecasted char type<br>
+argument to unsigned char type.<br>
+<br>
+Signed-off-by: Amitanand N. Chikorde <Amitanand.Chikorde@kpit.com><br>
+Upstream-Status: Pending<br>
+<br>
+--- a/davici.c 2017-03-30 16:15:15.000000000 +0530<br>
++++ b/davici.c 2020-05-29 11:40:45.983656217 +0530<br>
+@@ -180,7 +180,7 @@<br>
+        }<br>
+        for (i = 0; i < inlen; i++)<br>
+        {<br>
+-              if (!isprint(in[i]))<br>
++              if (!isprint((unsigned char) in[i]))<br>
+                {<br>
+                        return -EINVAL;<br>
+                }<br>
+@@ -1157,7 +1157,7 @@<br>
+<br>
+        for (i = 0; i < res->buflen; i++)<br>
+        {<br>
+-              if (!isprint(val[i]))<br>
++              if (!isprint((unsigned char) val[i]))<br>
+                {<br>
+                        return -EINVAL;<br>
+                }<br>
-- <br>
2.7.4</span></font><br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Regards,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Saloni Jain<br>
</div>
This message contains information that may be privileged or confidential and is the property of the KPIT Technologies Ltd. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print,
 retain copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message. KPIT Technologies Ltd. does not accept any liability for virus
 infected mails.
</body>
</html>