| Wiki Markup |
|---|
In section 5.1.2.3 Program execution, the C99 standard \[[ISO/IEC 9899:1999|AA. References#ISOBibliography#ISO/IEC 9899-1999]\] states that: |
...
| Wiki Markup |
|---|
C1X includes a {{memset_s}} function. According to the November 24, 2009 C1X Committee Draft \[Jones 09|AA. References#JonesBibliography#Jones 09]\]: |
Unlike
memset, any call to thememset_sfunction shall be evaluated strictly according to the rules of the abstract machine as described in (5.1.2.3). That is, any call to thememset_sfunction shall assume that the memory indicated bysandnmay be accessible in the future and thus must contain the values indicated byc.
...
| Wiki Markup |
|---|
\[[ISO/IEC 9899:1999|AA. References#ISOBibliography#ISO/IEC 9899-1999]\] Section 6.7.3, "Type qualifiers" \[Jones 09|AA. References#JonesBibliography#Jones 09]\] Section K.3.7.4.1, "The {{memset_s}} function" \[[US-CERT|https://buildsecurityin.us-cert.gov/daisy/bsi-rules/home/g1/771.html]\] "MEMSET" \[[MITRE 07|AA. References#MITREBibliography#MITRE 07]\] [CWE ID 14|http://cwe.mitre.org/data/definitions/14.html], "Compiler Removal of Code to Clear Buffers" \[[MSDN|AA. References#MSDNBibliography#MSDN]\] "[SecureZeroMemory|http://msdn.microsoft.com/en-us/library/aa366877.aspx]" \[[MSDN|AA. References#MSDNBibliography#MSDN]\] "[Optimize (C/C++)|http://msdn.microsoft.com/en-us/library/chh3fb0k(VS.80).aspx]" \[[Wheeler 03|AA. References#WheelerBibliography#Wheeler 03]\] [Section 11.4|http://www.dwheeler.com/secure-programs/Secure-Programs-HOWTO/protect-secrets.html], "Specially Protect Secrets (Passwords and Keys) in User Memory" |
...