libclues
Linux C++ Tracing Library
Loading...
Searching...
No Matches
dirent.hxx
1#pragma once
2
3#include <stdint.h>
4
5namespace clues {
6
7extern "C" {
8
9/*
10 * the man page says there's no header for this.
11 */
12
15 unsigned long d_ino;
16 unsigned long d_off;
17 unsigned short d_reclen;
18 char d_name[];
19 /*
20 * following fields, cannot be sensibly accessed by the compiler,
21 * needs to be calculated during runtime, therefore only as comments
22 char pad; // zero padding byte
23 char d_type; // file type since Linux 2.6.4
24 */
25};
26
29 uint32_t d_ino;
30 uint32_t d_off;
31 uint16_t d_reclen;
32 char d_name[];
33};
34
37 ino64_t d_ino;
38 off64_t d_off;
39 unsigned short d_reclen;
40 unsigned char d_type;
41 char d_name[];
42};
43
44} // end extern "C"
45
46} // end ns
32-bit getdents() directory entries used in 32-bit emulation ABI.
Definition dirent.hxx:28
64-bit entries used with getdents64() on both 32-bit and 64-bit ABIs
Definition dirent.hxx:36
32-bit getdents() directory entries.used on native 32-bit/64-bit ABIs.
Definition dirent.hxx:14