From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 5499 invoked from network); 27 Aug 2021 20:50:21 -0000 Received: from mother.openwall.net (195.42.179.200) by inbox.vuxu.org with ESMTPUTF8; 27 Aug 2021 20:50:21 -0000 Received: (qmail 23827 invoked by uid 550); 27 Aug 2021 20:50:13 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 23789 invoked from network); 27 Aug 2021 20:50:13 -0000 From: Ismael Luceno To: musl@lists.openwall.com Cc: Rich Felker , Ismael Luceno Date: Fri, 27 Aug 2021 22:49:49 +0200 Message-Id: <20210827204950.10223-2-ismael@iodev.co.uk> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210827204950.10223-1-ismael@iodev.co.uk> References: <20210827204950.10223-1-ismael@iodev.co.uk> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [musl] [PATCH v5 2/3] add internal aliases __opendir, __readdir and __closedir Signed-off-by: Ismael Luceno --- 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 #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