struct ddloc {
LIST_ENTRY(ddloc) loc_lqe; /* entry in list */
long loc_index; /* key associated with structure */
+#if __DARWIN_64_BIT_INO_T
+ __darwin_off_t loc_seek; /* returned by lseek */
+#else /* !__DARWIN_64_BIT_INO_T */
long loc_seek; /* magic cookie returned by getdirentries */
+#endif /* __DARWIN_64_BIT_INO_T */
long loc_loc; /* offset of entry in buffer */
};
struct _telldir {
LIST_HEAD(, ddloc) td_locq; /* list of locations */
long td_loccnt; /* index of entry for sequential readdir's */
+#if __DARWIN_64_BIT_INO_T
+ __darwin_off_t seekoff; /* 64-bit seek offset */
+#endif /* __DARWIN_64_BIT_INO_T */
};
-struct dirent *_readdir_unlocked(DIR *, int);
+#if __DARWIN_64_BIT_INO_T
+size_t __getdirentries64(int fd, void *buf, size_t bufsize, __darwin_off_t *basep);
+#endif /* __DARWIN_64_BIT_INO_T */
+struct dirent *_readdir_unlocked(DIR *, int) __DARWIN_INODE64(_readdir_unlocked);
void _reclaim_telldir(DIR *);
-void _seekdir(DIR *, long);
+void _seekdir(DIR *, long) __DARWIN_ALIAS_I(_seekdir);
+long telldir(DIR *) __DARWIN_ALIAS_I(telldir);
#endif