From: Pekka Enberg Switch an open-coded strstrip() to use the new API. Acked-by: Corey Minyard Signed-off-by: Pekka Enberg Signed-off-by: Andrew Morton --- drivers/char/ipmi/ipmi_watchdog.c | 25 +++++++++---------------- 1 files changed, 9 insertions(+), 16 deletions(-) diff -puN drivers/char/ipmi/ipmi_watchdog.c~ipmi-strstrip-conversion drivers/char/ipmi/ipmi_watchdog.c --- 25/drivers/char/ipmi/ipmi_watchdog.c~ipmi-strstrip-conversion Wed Apr 26 14:09:28 2006 +++ 25-akpm/drivers/char/ipmi/ipmi_watchdog.c Wed Apr 26 14:09:28 2006 @@ -212,24 +212,16 @@ static int set_param_str(const char *val { action_fn fn = (action_fn) kp->arg; int rv = 0; - const char *end; - char valcp[16]; - int len; - - /* Truncate leading and trailing spaces. */ - while (isspace(*val)) - val++; - end = val + strlen(val) - 1; - while ((end >= val) && isspace(*end)) - end--; - len = end - val + 1; - if (len > sizeof(valcp) - 1) - return -EINVAL; - memcpy(valcp, val, len); - valcp[len] = '\0'; + char *dup, *s; + + dup = kstrdup(val, GFP_KERNEL); + if (!dup) + return -ENOMEM; + + s = strstrip(dup); down_read(®ister_sem); - rv = fn(valcp, NULL); + rv = fn(s, NULL); if (rv) goto out_unlock; @@ -239,6 +231,7 @@ static int set_param_str(const char *val out_unlock: up_read(®ister_sem); + kfree(dup); return rv; } _