<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch master
in repository macports-legacy-support.
</pre>
<p><a href="https://github.com/macports/macports-legacy-support/commit/1ac6c0ded16aa2749e6248a754c8579fabcb8711">https://github.com/macports/macports-legacy-support/commit/1ac6c0ded16aa2749e6248a754c8579fabcb8711</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 1ac6c0ded16aa2749e6248a754c8579fabcb8711
</span>Author: Mihai Moldovan <ionic@ionic.de>
AuthorDate: Tue Mar 19 07:40:43 2019 +0100
<span style='display:block; white-space:pre;color:#404040;'> {include/sys/stat.h,src/atcalls.c}: add `fstatat64` function for OS X 10.9-.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Note that this symbol will not be available in either of the header file
</span><span style='display:block; white-space:pre;color:#404040;'> or implementation if the 64-bit-only inode feature is enabled.
</span>---
include/sys/stat.h | 3 +++
src/atcalls.c | 15 +++++++++++++++
2 files changed, 18 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/include/sys/stat.h b/include/sys/stat.h
</span><span style='display:block; white-space:pre;color:#808080;'>index df67d27..0e86529 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/include/sys/stat.h
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/include/sys/stat.h
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -31,6 +31,9 @@ extern "C" {
</span> #endif
extern int fchmodat(int dirfd, const char *pathname, mode_t mode, int flags);
extern int fstatat(int dirfd, const char *pathname, struct stat *buf, int flags);
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#if !__DARWIN_ONLY_64_BIT_INO_T
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern int fstatat64(int dirfd, const char *pathname, struct stat64 *buf, int flags);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif
</span> extern int mkdirat(int dirfd, const char *pathname, mode_t mode);
#ifdef __cplusplus
}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/atcalls.c b/src/atcalls.c
</span><span style='display:block; white-space:pre;color:#808080;'>index ea85ff2..6c010f7 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/atcalls.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/atcalls.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -87,6 +87,9 @@ int unlinkat(int dirfd, const char *pathname, int flags);
</span>
int fchmodat(int dirfd, const char *pathname, mode_t mode, int flags);
int fstatat(int dirfd, const char *pathname, struct stat *buf, int flags);
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#if !__DARWIN_ONLY_64_BIT_INO_T
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+int fstatat64(int dirfd, const char *pathname, struct stat64 *buf, int flags);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif
</span> int mkdirat(int dirfd, const char *pathname, mode_t mode);
/* #include <sys/fcntl.h> */
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -237,6 +240,18 @@ int fstatat(int dirfd, const char *pathname, struct stat *buf, int flags)
</span> }
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#if !__DARWIN_ONLY_64_BIT_INO_T
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+int fstatat64(int dirfd, const char *pathname, struct stat64 *buf, int flags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ERR_ON(EINVAL, flags & ~AT_SYMLINK_NOFOLLOW);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (flags & AT_SYMLINK_NOFOLLOW) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return ATCALL(dirfd, pathname, lstat64(pathname, buf));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return ATCALL(dirfd, pathname, stat64(pathname, buf));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> int getattrlistat(int dirfd, const char *pathname, struct attrlist *a,
void *buf, size_t size, unsigned long flags)
{
</pre><pre style='margin:0'>
</pre>