|
Message-Id: <20210827232241.23229-2-ismael@iodev.co.uk> Date: Sat, 28 Aug 2021 01:22:40 +0200 From: Ismael Luceno <ismael@...ev.co.uk> To: musl@...ts.openwall.com Cc: Rich Felker <dalias@...c.org>, Ismael Luceno <ismael@...ev.co.uk> Subject: [PATCH v6 2/3] add internal aliases __opendir, __readdir and __closedir Signed-off-by: Ismael Luceno <ismael@...ev.co.uk> --- src/dirent/closedir.c | 4 +++- src/dirent/opendir.c | 4 +++- src/dirent/readdir.c | 5 +++-- src/include/dirent.h | 10 ++++++++++ 4 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 src/include/dirent.h diff --git a/src/dirent/closedir.c b/src/dirent/closedir.c index e794ae9ca44b..f4249f56e210 100644 --- a/src/dirent/closedir.c +++ b/src/dirent/closedir.c @@ -3,9 +3,11 @@ #include <stdlib.h> #include "__dirent.h" -int closedir(DIR *dir) +int __closedir(DIR *dir) { int ret = close(dir->fd); free(dir); return ret; } + +weak_alias(__closedir, closedir); diff --git a/src/dirent/opendir.c b/src/dirent/opendir.c index 5cb84e303fee..4123c81994cd 100644 --- a/src/dirent/opendir.c +++ b/src/dirent/opendir.c @@ -5,7 +5,7 @@ #include "__dirent.h" #include "syscall.h" -DIR *opendir(const char *name) +DIR *__opendir(const char *name) { int fd; DIR *dir; @@ -19,3 +19,5 @@ DIR *opendir(const char *name) dir->fd = fd; return dir; } + +weak_alias(__opendir, opendir); diff --git a/src/dirent/readdir.c b/src/dirent/readdir.c index 569fc7057737..cb34a258569c 100644 --- a/src/dirent/readdir.c +++ b/src/dirent/readdir.c @@ -7,7 +7,7 @@ typedef char dirstream_buf_alignment_check[1-2*(int)( offsetof(struct __dirstream, buf) % sizeof(off_t))]; -struct dirent *readdir(DIR *dir) +struct dirent *__readdir(DIR *dir) { struct dirent *de; @@ -26,4 +26,5 @@ struct dirent *readdir(DIR *dir) return de; } -weak_alias(readdir, readdir64); +weak_alias(__readdir, readdir64); +weak_alias(__readdir, readdir); diff --git a/src/include/dirent.h b/src/include/dirent.h new file mode 100644 index 000000000000..918e123566d4 --- /dev/null +++ b/src/include/dirent.h @@ -0,0 +1,10 @@ +#ifndef DIRENT_H +#define DIRENT_H + +#include "../../include/dirent.h" + +hidden int __closedir(DIR *); +hidden DIR *__opendir(const char *); +hidden struct dirent *__readdir(DIR *); + +#endif -- 2.33.0
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.