Re: [PATCH 1/3] Add a kstrtobool function matching semantics of existingin kernel equivalents.

From: Jonathan Cameron
Date: Wed Mar 23 2011 - 09:58:49 EST


On 03/23/11 13:54, David Sterba wrote:
> Hi,
>
> you've missed a few breaks :)
Gah! This really isn't going well. Lets just pretend I'm not an idiot and
those were there in the first place. One day I'll remember to never
refactor (and not check) my code just before sending the emails out.

Thanks,
>
> On Wed, Mar 23, 2011 at 01:39:12PM +0000, Jonathan Cameron wrote:
>> Signed-off-by: Jonathan Cameron <jic23@xxxxxxxxx>
>> ---
>> include/linux/kernel.h | 1 +
>> lib/kstrtox.c | 18 ++++++++++++++++++
>> 2 files changed, 19 insertions(+), 0 deletions(-)
>>
>> diff --git a/include/linux/kernel.h b/include/linux/kernel.h
>> index 00cec4d..0babad3 100644
>> --- a/include/linux/kernel.h
>> +++ b/include/linux/kernel.h
>> @@ -247,6 +247,7 @@ int __must_check kstrtou16(const char *s, unsigned int base, u16 *res);
>> int __must_check kstrtos16(const char *s, unsigned int base, s16 *res);
>> int __must_check kstrtou8(const char *s, unsigned int base, u8 *res);
>> int __must_check kstrtos8(const char *s, unsigned int base, s8 *res);
>> +int __must_check kstrtobool(const char *s, bool *res);
>>
>> extern unsigned long simple_strtoul(const char *,char **,unsigned int);
>> extern long simple_strtol(const char *,char **,unsigned int);
>> diff --git a/lib/kstrtox.c b/lib/kstrtox.c
>> index 05672e8..84cf08f 100644
>> --- a/lib/kstrtox.c
>> +++ b/lib/kstrtox.c
>> @@ -225,4 +225,21 @@ int kstrtos8(const char *s, unsigned int base, s8 *res)
>> return 0;
>> }
>> EXPORT_SYMBOL(kstrtos8);
>> +
>> +int kstrtobool(const char *s, bool *res)
>> +{
>> + switch (s[0]) {
>> + case 'y':
>> + case 'Y':
>> + case '1':
>> + *res = true;
> break;
>
>> + case 'n':
>> + case 'N':
>> + case '0':
>> + *res = false;
> break;
>
>> + default:
>> + return -EINVAL;
>> + }
>> + return 0;
>> +}
>> +EXPORT_SYMBOL(kstrtobool);
>> --
>> 1.7.3.4
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at http://www.tux.org/lkml/
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/