2009-12-01 Joel Sherrill <joel.sherrill@OARcorp.com>

* libmisc/stringto/stringto.h, libmisc/stringto/stringto_template.h:
	Tidy up as part of adding new test.
This commit is contained in:
Joel Sherrill
2009-12-01 22:16:10 +00:00
parent 57544fbb52
commit 2c6a3e7e2e
3 changed files with 33 additions and 0 deletions

View File

@@ -1,3 +1,8 @@
2009-12-01 Joel Sherrill <joel.sherrill@OARcorp.com>
* libmisc/stringto/stringto.h, libmisc/stringto/stringto_template.h:
Tidy up as part of adding new test.
2009-12-01 Joel Sherrill <joel.sherrill@oarcorp.com>
* libcsupport/Makefile.am: Split no_posix.c so using sleep() does not

View File

@@ -77,6 +77,27 @@ rtems_status_code rtems_string_to_int(
int base
);
/**
* @brief Convert String to Unsigned Int (with validation)
*
* This method converts a string to an unsigned int with range validation.
*
* @param[in] s is the string to convert
* @param[in] n points to the variable to place the converted output in
* @param[in] endptr is used to keep track of the position in the string
* @param[in] base is the expected base of the number
*
* @return This method returns RTEMS_SUCCESSFUL on successful conversion
* and *n is filled in. Otherwise, the status indicates the
* source of the error.
*/
rtems_status_code rtems_string_to_unsigned_int(
const char *s,
unsigned int *n,
char **endptr,
int base
);
/**
* @brief Convert String to Long (with validation)
*

View File

@@ -104,9 +104,16 @@ rtems_status_code STRING_TO_NAME (
if ( end == s )
return RTEMS_NOT_DEFINED;
/*
* In theory, we should check this but newlib never returns anything
* but range errors. So this is unreachable code based upon the newlib
* implementation of strXXX methods as of 1 December 2009. --joel
*/
#if 0
/* there was a conversion error */
if ( (result == ZERO) && errno )
return RTEMS_INVALID_NUMBER;
#endif
#ifdef STRING_TO_MAX
/* there was an overflow */