Hello Raja,

according to our policy, the OpenSSL C source code needs to conform to ISO C90, 
which makes it
impossible to adopt C11 features.


                Chapter 20:  Portability

To maximise portability the version of C defined in ISO/IEC 9899:1990
should be used. This is more commonly referred to as C90. ISO/IEC 9899:1999
(also known as C99) is not supported on some platforms that OpenSSL is
used on and therefore should be avoided.

(see https://www.openssl.org/policies/codingstyle.html)


Matthias


On 26.11.19 12:07, Raja ashok wrote:

Hi All,

We are using OpenSSL in our projects and we found some of the C standard 
functions (like memcpy, strcpy) used in OpenSSL may induce security 
vulnerablities like buffer overflow. Currently we have not found any instances 
which causes such issues.

But we feel better to change these calls to C11 standard's secure functions 
like memcpy_s, strcpy_s etc. By defining a secure calls method (list of func 
pointers) and allowing application to register the method. I understand that 
this affects performance because of return value check added for xxxx_s calls, 
but this will make sure it removes buffer overflow kind of issues completely 
from code. And also currently using secure c calls is a general industry 
practice.

Please share your opinion on it, and if any discussion happened in OpenSSL 
coummunity to do this change in future.

Thanks in advance.

Raja Ashok


Reply via email to