about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/sco3.2.4/direct.h
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/sco3.2.4/direct.h')
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/direct.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/sco3.2.4/direct.h b/sysdeps/unix/sysv/sco3.2.4/direct.h
new file mode 100644
index 0000000000..b3eaa54c8b
--- /dev/null
+++ b/sysdeps/unix/sysv/sco3.2.4/direct.h
@@ -0,0 +1,22 @@
+#ifndef	MAXNAMLEN
+#define	MAXNAMLEN	512
+#endif
+#define DIRBUF	        1048	/* minimum buffer size for call to getdents */
+
+struct direct
+  {
+    unsigned short int d_fileno;
+    short int d_pad;
+    long int d_off;
+    unsigned short int d_reclen;
+    char d_name[1];		/* Actually longer. */
+  };
+
+#include <stddef.h>
+
+/* We calculate the length of the name by taking the length of the whole
+   `struct direct' record, subtracting the size of everything before the
+   name, and subtracting one for the terminating null.  */
+
+#define D_NAMLEN(d) \
+  ((d)->d_reclen - offsetof (struct direct, d_name) - 1)