X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=libbb%2Frun_parts.c;h=c1a45e3d908b8edf5dc5ac5d4822b1553131b567;hb=ddec5af6b0803c7434a1cc2fdee5cb9873fe6bd0;hp=4c8841fe597bd9ba2aeb33c7ef7ac7e31fbae415;hpb=aff114c33d2b8879233fa513e6d760d0ef99b632;p=oweals%2Fbusybox.git diff --git a/libbb/run_parts.c b/libbb/run_parts.c index 4c8841fe5..c1a45e3d9 100644 --- a/libbb/run_parts.c +++ b/libbb/run_parts.c @@ -7,12 +7,7 @@ * rewrite to vfork usage by * Copyright (C) 2002 by Vladimir Oleynik * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * + * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. */ @@ -32,7 +27,7 @@ */ static int valid_name(const struct dirent *d) { - char *c = d->d_name; + const char *c = d->d_name; while (*c) { if (!isalnum(*c) && (*c != '_') && (*c != '-')) { @@ -47,7 +42,7 @@ static int valid_name(const struct dirent *d) * test_mode = 2 means to fail silently on missing directories */ -extern int run_parts(char **args, const unsigned char test_mode, char **env) +int run_parts(char **args, const unsigned char test_mode, char **env) { struct dirent **namelist = 0; struct stat st; @@ -69,16 +64,14 @@ extern int run_parts(char **args, const unsigned char test_mode, char **env) if (test_mode & 2) { return(2); } - bb_perror_msg_and_die("failed to open directory %s", arg0); + bb_perror_msg_and_die("unable to open `%s'", arg0); } for (i = 0; i < entries; i++) { filename = concat_path_file(arg0, namelist[i]->d_name); - if (stat(filename, &st) < 0) { - bb_perror_msg_and_die("failed to stat component %s", filename); - } + xstat(filename, &st); if (S_ISREG(st.st_mode) && !access(filename, X_OK)) { if (test_mode) { puts(filename);