All of lore.kernel.org
 help / color / mirror / Atom feed
From: Frank Rowand <frowand.list@gmail.com>
To: Grant Likely <grant.likely@linaro.org>
Cc: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH 1/3] lib: add glibc style strchrnul() variant
Date: Thu, 15 May 2014 15:19:00 -0700	[thread overview]
Message-ID: <53753D54.7040308@gmail.com> (raw)
In-Reply-To: <1399993115-21552-2-git-send-email-grant.likely@linaro.org>

On 5/13/2014 7:58 AM, Grant Likely wrote:
> The strchrnul() variant helpfully returns a the end of the string
> instead of a NULL if the requested character is not found. This can
> simplify string parsing code since it doesn't need to expicitly check
> for a NULL return. If a valid string pointer is passed in, then a valid
> null terminated string will always come back out.
> 
> Signed-off-by: Grant Likely <grant.likely@linaro.org>
> ---
>  include/linux/string.h |  3 +++
>  lib/string.c           | 15 +++++++++++++++
>  2 files changed, 18 insertions(+)
> 
> diff --git a/include/linux/string.h b/include/linux/string.h
> index ac889c5ea11b..d36977e029af 100644
> --- a/include/linux/string.h
> +++ b/include/linux/string.h
> @@ -52,6 +52,9 @@ extern int strncasecmp(const char *s1, const char *s2, size_t n);
>  #ifndef __HAVE_ARCH_STRCHR
>  extern char * strchr(const char *,int);
>  #endif
> +#ifndef __HAVE_ARCH_STRCHRNUL
> +extern char * strchrnul(const char *,int);
> +#endif
>  #ifndef __HAVE_ARCH_STRNCHR
>  extern char * strnchr(const char *, size_t, int);
>  #endif
> diff --git a/lib/string.c b/lib/string.c
> index 9b1f9062a202..059636f92c26 100644
> --- a/lib/string.c
> +++ b/lib/string.c
> @@ -301,6 +301,21 @@ char *strchr(const char *s, int c)
>  EXPORT_SYMBOL(strchr);
>  #endif
>  
> +#ifndef __HAVE_ARCH_STRCHRNUL
> +/**
> + * strchr - Find the first occurrence of a character in a string

s/strchr/strchrnul/

Add to the end of the description: if c is not found in s then return
a pointer to the null byte at the end of s

> + * @s: The string to be searched
> + * @c: The character to search for
> + */
> +char *strchrnul(const char *s, int c)
> +{
> +	while (*s && *s != (char)c)
> +		s++;
> +	return (char *)s;
> +}
> +EXPORT_SYMBOL(strchrnul);
> +#endif
> +
>  #ifndef __HAVE_ARCH_STRRCHR
>  /**
>   * strrchr - Find the last occurrence of a character in a string
> 

  reply	other threads:[~2014-05-15 22:19 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-13 14:58 [PATCH 0/3] Rework of_find_node_by_path() code Grant Likely
2014-05-13 14:58 ` [PATCH 1/3] lib: add glibc style strchrnul() variant Grant Likely
2014-05-15 22:19   ` Frank Rowand [this message]
2014-05-16 15:00     ` Grant Likely
2014-05-13 14:58 ` [PATCH 2/3] of: Make of_find_node_by_path() handle /aliases Grant Likely
2014-05-16  2:51   ` Frank Rowand
     [not found]     ` <53757D25.1060005-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-05-16 10:54       ` Grant Likely
2014-05-16 10:54         ` Grant Likely
2014-05-18  9:27         ` Grant Likely
     [not found]           ` <20140518092730.109AAC40B8A-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-05-21  2:41             ` Frank Rowand
2014-05-21  2:41               ` Frank Rowand
     [not found]               ` <537C1252.3090900-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-05-21  2:46                 ` Frank Rowand
2014-05-21  2:46                   ` Frank Rowand
2014-05-22  3:13                   ` Grant Likely
     [not found]                     ` <20140522031306.DD6B7C41847-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-05-23  0:53                       ` Frank Rowand
2014-05-23  0:53                         ` Frank Rowand
2014-05-22  1:16               ` Grant Likely
     [not found]                 ` <20140522011600.C0014C40B13-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-05-23  1:14                   ` Frank Rowand
2014-05-23  1:14                     ` Frank Rowand
2014-05-23 21:13                     ` Grant Likely
     [not found]   ` <1399993115-21552-3-git-send-email-grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2014-05-21  2:55     ` Frank Rowand
2014-05-21  2:55       ` Frank Rowand
2014-05-21 16:09       ` Grant Likely
2014-05-22  1:27         ` Frank Rowand
     [not found] ` <1399993115-21552-1-git-send-email-grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2014-05-13 14:58   ` [PATCH 3/3] of: Add a testcase for of_find_node_by_path() Grant Likely
2014-05-13 14:58     ` Grant Likely

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53753D54.7040308@gmail.com \
    --to=frowand.list@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=grant.likely@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.