Security-Enhanced CRT Functions for Windows Embedded CE (Windows Embedded CE 6.0)
1/5/2010
The Windows Embedded CE 6.0 compilers support a substantial subset of the secure versions of run-time library routines that are available in Visual C++ 2005.
For further information concerning Security Enhancements in the CRT, see CRT Security Enhancements.
In addition, the safe string functions offer more secure implementations of many string functions. For more information, see Safe String Functions.
CRT Functions
The following table shows the security-enhanced CRT functions that are supported by Windows Embedded CE 6.0.
Security-enhanced CRT function | Description |
---|---|
_ecvt_s |
Converts a double number to a string. Security-enhanced version of deprecated function _ecvt. Validates parameters and sets errno. Template overload available. |
_fcvt_s |
Converts a floating-point number to a string. Security-enhanced version of deprecated function _fcvt. Validates parameters and sets errno. Template overload available. |
_freea |
Deallocates or frees a memory block. |
_gcvt_s |
Converts a floating-point value to a string. Security-enhanced version of deprecated function _gcvt. Validates parameters and sets errno. Template overload available. |
_itoa_s, _itow_s, |
Converts an integer to a string. Security-enhanced versions of deprecated functions _itoa and _itow. Validates parameters and sets errno. Template overload available. Windows Embedded CE 6.0 does not support forms of this function that convert int64 values, _i64toa_s, _ui64toa_s, _i64tow_s, and _ui64tow_s. |
_ltoa_s, _ltow_s |
Converts a long integer to a string. Security-enhanced versions of deprecated functions _ltoa and _ltow. Validates parameters, won't write past end of buffer. |
_malloca |
Allocates memory on the stack. Security-enhanced version of deprecated function _alloca. |
_recalloc |
Reallocates memory blocks. |
_set_invalid_parameter_handler |
Sets a function to be called when the CRT detects an invalid argument. |
_snprintf_s, _snwprintf_s |
Writes formatted data to a string. Security-enhanced versions of deprecated functions _snprintf and _snwprintf. Validates parameters, returns errors. Template overload available. Windows Embedded CE 6.0 does not support forms of this function that use the Locale parameter, snprintf_s_l, and snwprintf_s_l. |
_strlwr_s, _wcslwr_s |
Converts a string to lowercase, using the current locale or a locale object passed in. Security-enhanced versions of deprecated function _strlwr and _wcslwr. Windows Embedded CE 6.0 does not support the multibyte forms of this function or forms of this function that use the Locale parameter, _mbslwr_s, _mbslwr_s_l and _wcslwr_s_l. |
_strnset_s, _wcsnset_s |
Initializes characters of a string to a given character. Security-enhanced versions of deprecated functions _strnset and _wcsnet. Windows Embedded CE 6.0 does not support the multibyte forms of this function or forms that use the Locale parameter, strnset_s_l, _mbsnset_s, _mbsnset_s_l and _wcsnset_s_l. |
_strset_s, _wcsset_s |
Sets characters of a string to a character. Security-enhanced versions of deprecated functions _strset and _wcsset. Windows Embedded CE 6.0 does not support the multibyte forms of this function or forms that use the Locale parameter, strset_s_l, _mbsset_s, _mbsset_s_l and _wcsset_s_l. |
_strupr_s, _wcsupr_s |
Converts a string to uppercase, using the current locale or a specified locale passed in. Security-enhanced versions of deprecated functions _strup and _wcsrup. |
_ultoa_s, _ultow_s |
Converts an unsigned long integer to a string. Security-enhanced versions of deprecated functions _ultoa and _ultow. Sets errno, template overload available. |
_vfprintf_s, _vfwprintf_s |
Writes formatted output using a pointer to a list of arguments. Security-enhanced versions of vfprintf and vfwprintf. Windows Embedded CE 6.0 does not support forms of this function that use the Locale parameter _vfprintf_s_l and vfwprintf_s_l. |
_vsnprintf_s, _vsnwprintf_s |
Writes formatted output using a pointer to a list of arguments. Security-enhanced versions of deprecated functions vsnprintf and _vsnwprintf. Windows Embedded CE 6.0 does not support forms of this function that use the Locale parameter _vsnprintf_s_l and vsnwprintf_s_l. |
clearerr_s |
Resets the error indicator for a stream. Security-enhanced version of clearerr. |
controlfp_s |
Gets and sets the floating-point control word. Security-enhanced version of deprecated function _controlfp. Returns error for bad parameters. |
fopen_s¸ _wfopen_s |
Opens a file. Security-enhanced versions of deprecated functions fopen and _wfopen. Denies read/write sharing by default. |
fprintf_s, fwprintf_s |
Prints formatted data to a stream. Security-enhanced versions of deprecated functions fprintf and fwprintf. Windows Embedded CE 6.0 does not support forms of this function that accept a Locale parameter, _fprint_s_l and fwprint_s_l. |
fread |
Reads data from a stream. Invokes the invalid parameter handler. |
fscanf_s, _fwscanf_s |
Reads formatted data from a stream. Security-enhanced versions of deprecated functions fscanf and fwscanf. Requires buffer length. Windows Embedded CE 6.0 does not support forms of this function that accept a Locale parameter,_fscanf_s_l and fwscanf_s_l. |
gets_s, _getws_s |
Gets a line from the stdin stream. Security-enhanced version of deprecated functions gets and _getws. Template overload available. |
mbstowcs_s |
Converts a sequence of multibyte characters to a corresponding sequence of wide characters. Security-enhanced version of deprecated function mbstowcs. Takes a buffer size and won't write past end of buffer. Template overload available. Windows Embedded CE 6.0 does not support the form of this function that uses the Locale parameter, _mbstowcs_s_l. |
memcpy_s |
Copies bytes between buffers. Security-enhanced version of deprecated function memcpy. |
memmove_s |
Moves one buffer to another. Security-enhanced version of deprecated function memmove. |
printf_s, wprintf_s |
Prints formatted output to the standard output stream. Security-enhanced versions of printf and wprintf. Windows Embedded CE 6.0 does not support forms of this function that use the Locale parameter printf_s_l, and wprintf_s_l. |
qsort_s |
Performs a quick sort. Security-enhanced version of qsort. |
rand_s |
Generates a pseudorandom number. Security-enhanced version of rand.
To use this function, you must add filesys.dll to your run-time image by including one of the following SYSGEN variables:
|
scanf_s, wscanf_s |
Reads formatted data from the standard input stream. Security-enhanced versions of deprecated functions scanf and wscanf. Requires buffer size. Windows Embedded CE 6.0 does not support forms of this function that use the Locale parameter, scanf_s_l, and wscanf _s_l. |
sprintf_s, swprintf_s |
Writes formatted data to a string. Security-enhanced versions of deprecated functions sprintf and swprintf. Windows Embedded CE 6.0 does not support forms of this function that use the Locale parameter, sprintf_s_l, and swprintf_s_l. |
sscanf_s, swscanf_s |
Reads formatted data from a string. Security-enhanced versions of sscanf and swscanf. Requires buffer size. Windows Embedded CE 6.0 does not support forms of this function that use the Locale parameter, sscanf_s_l, swscanf_s_l. |
strcat_s, wsccat_s |
Appends a string. Security-enhanced versions of deprecated functions strcat and wcscat. Template overload available. Windows Embedded CE 6.0 does not support the multibyte form of this function, _mbscat_s. |
strcpy_s, wcscpy_s |
Copies a string. Security-enhanced versions of deprecated functions strcpy and wcscpy. Buffers require NULL termination and should assert on truncation. Template overload available. Windows Embedded CE 6.0 does not support the multibyte form of this function, _mbscpy_s. |
strncat_s, wcsncat_s |
Appends characters to a string. Security-enhanced versions of deprecated functions strncat and wcsncat. Validates parameters, template overload available. Windows Embedded CE 6.0 does not support the multibyte forms of this function or forms that use the Locale parameter, strncat_s_l, _mbsncat_s, _mbsncat_s_l and _wcsncat_s_l. |
strncpy_s, wcsncpy_s |
Copies characters of one string to another. Security-enhanced versions of deprecated functions strncpy and wcsncpy. Template overload available. Windows Embedded CE 6.0 does not support the multibyte forms of this function or forms that use the Locale parameter, strncpy_s_l, _mbsncpy_s, _mbsncpy_s_l and _wcsncpy_s_l. |
strnlen, wcsnlen |
Gets the length of a string, using the current locale or one that has been passed in. More secure than previous versions of strlen and wcslen. Windows Embedded CE 6.0 does not support the multibyte forms of this function or forms that use the Locale parameter, strnlen_s_l, _mbsnlen_s, _mbsnlen_s_l and _wcsnlen_s_l. |
strtok_s, wcstok_s |
Finds the next token in a string, using the current locale or a locale passed in. Security-enhanced versions of deprecated functions strtok and wcstok. Windows Embedded CE 6.0 does not support the multibyte forms of this function or forms that use the Locale parameter, strtok_s_l, _mbstok_s, _mbstok_s_l and _wcstok_s_l. |
vprintf_s, vwprintf_s |
Writes formatted output using a pointer to a list of arguments. Security-enhanced versions of deprecated functions vprintf and vwprintf. Windows Embedded CE 6.0 does not support forms of this function that use the Locale parameter _vprintf_s_l and vwprintf_s_l. |
vsprintf_s, vswprintf_s |
Writes formatted output using a pointer to a list of arguments. Security-enhanced versions of deprecated functions vsprintf and vswprintf. Validates parameters and sets errno. Template overload available. Windows Embedded CE 6.0 does not support forms of this function that use the Locale parameter _vsprintf_s_l and vswprintf_s_l. |
wcstombs_s |
Converts a sequence of wide characters to a corresponding sequence of multibyte characters. Security-enhanced version of deprecated function wcstombs. Template overload available. Windows Embedded CE 6.0 does not support the form of this function that uses the Locale parameter wcstombs_s_l. |
See Also
Other Resources
What's New in the C Run-Time Library
C/C++ Libraries for Windows Embedded CE
Safe String Functions