[PATCH] run-parts: permit dot later in file name

Ján Sáreník jajomojo at gmail.com
Thu May 13 16:36:02 UTC 2021


If dot is the first character of file name, file is ignored. Thanks tito!

See https://gist.github.com/andyshinn/3ae01fa13cb64c9d36e7#gistcomment-2044506

To test:

    mkdir /tmp/testrp
    printf "#!/bin/sh\necho test\n" > /tmp/testrp/test.sh
    chmod a+x /tmp/testrp/*
    busybox run-parts /tmp/testrp
    test
    mv /tmp/testrp/test.sh /tmp/testrp/.test.sh
    busybox run-parts /tmp/testrp
    # no output
---
 debianutils/run_parts.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/debianutils/run_parts.c b/debianutils/run_parts.c
index 585a4b58f..7677ab894 100644
--- a/debianutils/run_parts.c
+++ b/debianutils/run_parts.c
@@ -119,7 +119,10 @@ static bool invalid_name(const char *c)
 {
        c = bb_basename(c);

-       while (*c && (isalnum(*c) || *c == '_' || *c == '-'))
+       if (*c == '.')
+               return *c;
+
+       while (*c && (isalnum(*c) || *c == '_' || *c == '-' || *c == '.'))
                c++;

        return *c; /* TRUE (!0) if terminating NUL is not reached */
--
2.25.1


More information about the busybox mailing list