1 //! Common types used by most newlib platforms
2 
3 use crate::off_t;
4 use crate::prelude::*;
5 
6 s! {
7     pub struct sigset_t {
8         #[cfg(target_os = "horizon")]
9         __val: [c_ulong; 16],
10         #[cfg(not(target_os = "horizon"))]
11         __val: u32,
12     }
13 
14     pub struct stat {
15         pub st_dev: crate::dev_t,
16         pub st_ino: crate::ino_t,
17         pub st_mode: crate::mode_t,
18         pub st_nlink: crate::nlink_t,
19         pub st_uid: crate::uid_t,
20         pub st_gid: crate::gid_t,
21         pub st_rdev: crate::dev_t,
22         pub st_size: off_t,
23         pub st_atime: crate::time_t,
24         pub st_spare1: c_long,
25         pub st_mtime: crate::time_t,
26         pub st_spare2: c_long,
27         pub st_ctime: crate::time_t,
28         pub st_spare3: c_long,
29         pub st_blksize: crate::blksize_t,
30         pub st_blocks: crate::blkcnt_t,
31         pub st_spare4: [c_long; 2usize],
32     }
33 
34     pub struct dirent {
35         pub d_ino: crate::ino_t,
36         pub d_type: c_uchar,
37         pub d_name: [c_char; 256usize],
38     }
39 }
40