dius 0.1.0
Loading...
Searching...
No Matches
c_definitions.h
Go to the documentation of this file.
1#pragma once
2
3#include <asm-generic/ioctls.h>
4#include <asm-generic/termios.h>
5#include <asm/unistd.h>
6#include <linux/errno.h>
7#include <linux/fcntl.h>
8#include <linux/mman.h>
9#include <linux/sched.h>
10#include <linux/signal.h>
11#include <linux/socket.h>
12#include <linux/stat.h>
13#include <linux/time.h>
14#include <linux/types.h>
15#include <linux/un.h>
16#include <linux/utsname.h>
17#include <linux/wait.h>
18
19#include "di/types/integers.h"
20#include "di/vocab/array/prelude.h"
21
22namespace dius::syscalls {
23// Linux stat64 structure, with correct padding.
24struct Stat {
25 u64 st_dev;
26 u64 st_ino;
29 u32 st_uid;
30 u32 st_gid;
31 di::Array<di::Byte, 4> pading;
36 timespec st_atime;
37 timespec st_mtime;
38 timespec st_ctime;
39 di::Array<di::Byte, 24> padding_end;
40};
41
42using UtsName = struct ::new_utsname;
43}
Definition c_definitions.h:21
struct ::utsname UtsName
Definition c_definitions.h:23
Definition c_definitions.h:24
u64 st_ino
Definition c_definitions.h:26
timespec st_ctime
Definition c_definitions.h:38
timespec st_mtime
Definition c_definitions.h:37
u32 st_uid
Definition c_definitions.h:29
i64 st_blocks
Definition c_definitions.h:35
i64 st_blksize
Definition c_definitions.h:34
timespec st_atime
Definition c_definitions.h:36
di::Array< di::Byte, 24 > padding_end
Definition c_definitions.h:39
u64 st_dev
Definition c_definitions.h:25
di::Array< di::Byte, 4 > pading
Definition c_definitions.h:31
u32 st_gid
Definition c_definitions.h:30
i64 st_size
Definition c_definitions.h:33
u32 st_mode
Definition c_definitions.h:28
u64 st_nlink
Definition c_definitions.h:27
u64 st_rdev
Definition c_definitions.h:32