diff mbox

ARM: boot: Add an implementation of strnlen for libfdt

Message ID 1455231994-12048-1-git-send-email-robh@kernel.org (mailing list archive)
State New, archived
Headers show

Commit Message

Rob Herring (Arm) Feb. 11, 2016, 11:06 p.m. UTC
Recent versions of libfdt add a dependency on strnlen. Copy the
implementation in lib/string.c here, so we can update libfdt.

Signed-off-by: Rob Herring <robh@kernel.org>
---
Russell,

I have a pending libfdt update, so I'd like to take this thru the DT 
tree with your ack.

Rob

 arch/arm/boot/compressed/string.c | 9 +++++++++
 1 file changed, 9 insertions(+)

Comments

Russell King - ARM Linux Feb. 11, 2016, 11:24 p.m. UTC | #1
On Thu, Feb 11, 2016 at 05:06:34PM -0600, Rob Herring wrote:
> Recent versions of libfdt add a dependency on strnlen. Copy the
> implementation in lib/string.c here, so we can update libfdt.
> 
> Signed-off-by: Rob Herring <robh@kernel.org>

Thanks.

Acked-by: Russell King <rmk+kernel@arm.linux.org.uk>

> ---
> Russell,
> 
> I have a pending libfdt update, so I'd like to take this thru the DT 
> tree with your ack.
> 
> Rob
> 
>  arch/arm/boot/compressed/string.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/arch/arm/boot/compressed/string.c b/arch/arm/boot/compressed/string.c
> index 36e53ef..6894674 100644
> --- a/arch/arm/boot/compressed/string.c
> +++ b/arch/arm/boot/compressed/string.c
> @@ -65,6 +65,15 @@ size_t strlen(const char *s)
>  	return sc - s;
>  }
>  
> +size_t strnlen(const char *s, size_t count)
> +{
> +	const char *sc;
> +
> +	for (sc = s; count-- && *sc != '\0'; ++sc)
> +		/* nothing */;
> +	return sc - s;
> +}
> +
>  int memcmp(const void *cs, const void *ct, size_t count)
>  {
>  	const unsigned char *su1 = cs, *su2 = ct, *end = su1 + count;
> -- 
> 2.5.0
>
diff mbox

Patch

diff --git a/arch/arm/boot/compressed/string.c b/arch/arm/boot/compressed/string.c
index 36e53ef..6894674 100644
--- a/arch/arm/boot/compressed/string.c
+++ b/arch/arm/boot/compressed/string.c
@@ -65,6 +65,15 @@  size_t strlen(const char *s)
 	return sc - s;
 }
 
+size_t strnlen(const char *s, size_t count)
+{
+	const char *sc;
+
+	for (sc = s; count-- && *sc != '\0'; ++sc)
+		/* nothing */;
+	return sc - s;
+}
+
 int memcmp(const void *cs, const void *ct, size_t count)
 {
 	const unsigned char *su1 = cs, *su2 = ct, *end = su1 + count;