From: Karel Zak Date: Thu, 28 Jan 2021 09:27:21 +0000 (+0100) Subject: lib: use ul_prefix for close_all_fds() and mkdir_p() X-Git-Tag: v2.37-rc1~150 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=867df2617cdf2a0eca0778c016ac684ead7c91c7;p=thirdparty%2Futil-linux.git lib: use ul_prefix for close_all_fds() and mkdir_p() The names are too generic and it makes problems in static libraries. Addresses: https://gitlab.com/cryptsetup/cryptsetup/-/issues/623 Signed-off-by: Karel Zak --- diff --git a/include/fileutils.h b/include/fileutils.h index 7047ac5ccb..10fe46a25d 100644 --- a/include/fileutils.h +++ b/include/fileutils.h @@ -55,7 +55,7 @@ static inline int is_same_inode(const int fd, const struct stat *st) extern int dup_fd_cloexec(int oldfd, int lowfd); extern unsigned int get_fd_tabsize(void); -extern int mkdir_p(const char *path, mode_t mode); +extern int ul_mkdir_p(const char *path, mode_t mode); extern char *stripoff_last_component(char *path); /* This is readdir()-like function, but skips "." and ".." directory entries */ @@ -87,7 +87,7 @@ static inline int close_range(unsigned int first, unsigned int last) #endif /* __linux__ */ #ifndef HAVE_CLOSE_RANGE -extern void close_all_fds(unsigned int first, unsigned int last); +extern void ul_close_all_fds(unsigned int first, unsigned int last); #endif #define UL_COPY_READ_ERROR (-1) diff --git a/lib/fileutils.c b/lib/fileutils.c index a9cb335812..846b718c9b 100644 --- a/lib/fileutils.c +++ b/lib/fileutils.c @@ -130,7 +130,7 @@ unsigned int get_fd_tabsize(void) } #ifndef HAVE_CLOSE_RANGE -void close_all_fds(unsigned int first, unsigned int last) +void ul_close_all_fds(unsigned int first, unsigned int last) { struct dirent *d; DIR *dir; @@ -191,7 +191,7 @@ int main(int argc, char *argv[]) # ifdef HAVE_CLOSE_RANGE close_range(STDERR_FILENO + 1, ~0U); # else - close_all_fds(STDERR_FILENO + 1, ~0U); + ul_close_all_fds(STDERR_FILENO + 1, ~0U); # endif } else if (strcmp(argv[1], "--copy-file") == 0) { int ret = ul_copy_file(STDIN_FILENO, STDOUT_FILENO); @@ -205,7 +205,7 @@ int main(int argc, char *argv[]) #endif -int mkdir_p(const char *path, mode_t mode) +int ul_mkdir_p(const char *path, mode_t mode) { char *p, *dir; int rc = 0; diff --git a/libmount/src/context.c b/libmount/src/context.c index 19a8cb1a62..fa8a8c54b5 100644 --- a/libmount/src/context.c +++ b/libmount/src/context.c @@ -1956,7 +1956,7 @@ int mnt_context_prepare_target(struct libmnt_context *cxt) /* supported only for root or non-suid mount(8) */ if (!mnt_context_is_restricted(cxt)) { - rc = mkdir_p(tgt, mode); + rc = ul_mkdir_p(tgt, mode); if (rc) DBG(CXT, ul_debug("mkdir %s failed: %m", tgt)); } else diff --git a/libmount/src/utils.c b/libmount/src/utils.c index aed2afb81f..35afce32c0 100644 --- a/libmount/src/utils.c +++ b/libmount/src/utils.c @@ -1311,7 +1311,7 @@ static int test_mkdir(struct libmnt_test *ts, int argc, char *argv[]) { int rc; - rc = mkdir_p(argv[1], S_IRWXU | + rc = ul_mkdir_p(argv[1], S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH); if (rc) diff --git a/login-utils/login.c b/login-utils/login.c index 4f71925dbd..552e9c1d5a 100644 --- a/login-utils/login.c +++ b/login-utils/login.c @@ -1365,7 +1365,7 @@ static void initialize(int argc, char **argv, struct login_context *cxt) #ifdef HAVE_CLOSE_RANGE close_range(STDERR_FILENO + 1, ~0U); #else - close_all_fds(STDERR_FILENO + 1, ~0U); + ul_close_all_fds(STDERR_FILENO + 1, ~0U); #endif }