Re: [PATCH/RFC] s390: Hypervisor File System

From: Pekka Enberg
Date: Tue Apr 25 2006 - 03:32:20 EST


On Mon, 2006-04-24 at 19:19 +0200, Michael Holzheu wrote:
> > +#ifndef __HAVE_ARCH_STRRTRIM
> > +/**
> > + * strrtrim - Remove trailing characters specified in @reject
> > + * @s: The string to be searched
> > + * @reject: The string of letters to avoid
> > + */
> > +void strrtrim(char *s, const char *reject)

On Tue, 2006-04-25 at 09:58 +0300, Pekka Enberg wrote:
> I think this should return s to be consistent with other string API
> functions.

Hmm, thinking about this, I think a better API would be to not have that
reject parameter at all. Would something like this be accetable for your
use?

Pekka

diff --git a/include/linux/string.h b/include/linux/string.h
index c61306d..3d66cae 100644
--- a/include/linux/string.h
+++ b/include/linux/string.h
@@ -56,6 +56,9 @@ #endif
#ifndef __HAVE_ARCH_STRRCHR
extern char * strrchr(const char *,int);
#endif
+#ifndef __HAVE_ARCH_STRSTRIP
+extern char * strstrip(char *);
+#endif
#ifndef __HAVE_ARCH_STRSTR
extern char * strstr(const char *,const char *);
#endif
diff --git a/lib/string.c b/lib/string.c
index 064f631..5b4257d 100644
--- a/lib/string.c
+++ b/lib/string.c
@@ -301,6 +301,38 @@ char *strnchr(const char *s, size_t coun
EXPORT_SYMBOL(strnchr);
#endif

+#ifndef __HAVE_ARCH_STRSTRIP
+/**
+ * strstrip - Removes leading and trailing whitespace from @s.
+ * @s: The string to be stripped.
+ *
+ * Note that the first trailing whitespace is replaced with a %NUL-terminator
+ * in the given string @s. Returns a pointer to the first non-whitespace
+ * character in @s.
+ */
+char *strstrip(char *s)
+{
+ size_t size;
+ char *end;
+
+ size = strlen(s);
+
+ if (!size)
+ return s;
+
+ end = s + size - 1;
+ while (end != s && isspace(*end))
+ end--;
+ *(end + 1) = '\0';
+
+ while (*s && isspace(*s))
+ s++;
+
+ return s;
+}
+EXPORT_SYMBOL(strstrip);
+#endif
+
#ifndef __HAVE_ARCH_STRLEN
/**
* strlen - Find the length of a string


-
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/