• Rasmus Villemoes's avatar
    lib/string.c: introduce strreplace() · 94df2904
    Rasmus Villemoes authored
    Strings are sometimes sanitized by replacing a certain character (often
    '/') by another (often '!').  In a few places, this is done the same way
    Schlemiel the Painter would do it.  Others are slightly smarter but still
    do multiple strchr() calls.  Introduce strreplace() to do this using a
    single function call and a single pass over the string.
    
    One would expect the return value to be one of three things: void, s, or
    the number of replacements made.  I chose the fourth, returning a pointer
    to the end of the string.  This is more likely to be useful (for example
    allowing the caller to avoid a strlen call).
    Signed-off-by: default avatarRasmus Villemoes <linux@rasmusvillemoes.dk>
    Cc: "Theodore Ts'o" <tytso@mit.edu>
    Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Cc: Neil Brown <neilb@suse.de>
    Cc: Steven Rostedt <rostedt@goodmis.org>
    Cc: Joe Perches <joe@perches.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    94df2904
string.c 17.4 KB