We need to check the whole string for digit
not only the first character
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Change-Id: I316d931bb344d3e3fe5bb7d7a2454f200b637017
Reviewed-on: http://review.whamcloud.com/1641
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: wangdi <di.wang@whamcloud.com>
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
int lcfg_set_devname(char *name)
{
int lcfg_set_devname(char *name)
{
+ char *ptr;
+ int digit = 1;
+
if (name) {
if (lcfg_devname)
free(lcfg_devname);
/* quietly strip the unnecessary '$' */
if (*name == '$' || *name == '%')
name++;
if (name) {
if (lcfg_devname)
free(lcfg_devname);
/* quietly strip the unnecessary '$' */
if (*name == '$' || *name == '%')
name++;
+
+ ptr = name;
+ while (*ptr != '\0') {
+ if (!isdigit(*ptr)) {
+ digit = 0;
+ break;
+ }
+ ptr++;
+ }
+
+ if (digit) {
/* We can't translate from dev # to name */
lcfg_devname = NULL;
} else {
/* We can't translate from dev # to name */
lcfg_devname = NULL;
} else {