12add0d91Sopenharmony_cipub type c_char = i8; 22add0d91Sopenharmony_cipub type c_long = i64; 32add0d91Sopenharmony_cipub type c_ulong = u64; 42add0d91Sopenharmony_cipub type caddr_t = *mut ::c_char; 52add0d91Sopenharmony_ci 62add0d91Sopenharmony_cipub type clockid_t = ::c_int; 72add0d91Sopenharmony_cipub type blkcnt_t = ::c_long; 82add0d91Sopenharmony_cipub type clock_t = ::c_long; 92add0d91Sopenharmony_cipub type daddr_t = ::c_long; 102add0d91Sopenharmony_cipub type dev_t = ::c_ulong; 112add0d91Sopenharmony_cipub type fsblkcnt_t = ::c_ulong; 122add0d91Sopenharmony_cipub type fsfilcnt_t = ::c_ulong; 132add0d91Sopenharmony_cipub type ino_t = ::c_ulong; 142add0d91Sopenharmony_cipub type key_t = ::c_int; 152add0d91Sopenharmony_cipub type major_t = ::c_uint; 162add0d91Sopenharmony_cipub type minor_t = ::c_uint; 172add0d91Sopenharmony_cipub type mode_t = ::c_uint; 182add0d91Sopenharmony_cipub type nlink_t = ::c_uint; 192add0d91Sopenharmony_cipub type rlim_t = ::c_ulong; 202add0d91Sopenharmony_cipub type speed_t = ::c_uint; 212add0d91Sopenharmony_cipub type tcflag_t = ::c_uint; 222add0d91Sopenharmony_cipub type time_t = ::c_long; 232add0d91Sopenharmony_cipub type timer_t = ::c_int; 242add0d91Sopenharmony_cipub type wchar_t = ::c_int; 252add0d91Sopenharmony_cipub type nfds_t = ::c_ulong; 262add0d91Sopenharmony_cipub type projid_t = ::c_int; 272add0d91Sopenharmony_cipub type zoneid_t = ::c_int; 282add0d91Sopenharmony_cipub type psetid_t = ::c_int; 292add0d91Sopenharmony_cipub type processorid_t = ::c_int; 302add0d91Sopenharmony_cipub type chipid_t = ::c_int; 312add0d91Sopenharmony_cipub type ctid_t = ::id_t; 322add0d91Sopenharmony_ci 332add0d91Sopenharmony_cipub type suseconds_t = ::c_long; 342add0d91Sopenharmony_cipub type off_t = ::c_long; 352add0d91Sopenharmony_cipub type useconds_t = ::c_uint; 362add0d91Sopenharmony_cipub type socklen_t = ::c_uint; 372add0d91Sopenharmony_cipub type sa_family_t = u16; 382add0d91Sopenharmony_cipub type pthread_t = ::c_uint; 392add0d91Sopenharmony_cipub type pthread_key_t = ::c_uint; 402add0d91Sopenharmony_cipub type thread_t = ::c_uint; 412add0d91Sopenharmony_cipub type blksize_t = ::c_int; 422add0d91Sopenharmony_cipub type nl_item = ::c_int; 432add0d91Sopenharmony_cipub type mqd_t = *mut ::c_void; 442add0d91Sopenharmony_cipub type id_t = ::c_int; 452add0d91Sopenharmony_cipub type idtype_t = ::c_uint; 462add0d91Sopenharmony_cipub type shmatt_t = ::c_ulong; 472add0d91Sopenharmony_ci 482add0d91Sopenharmony_cipub type lgrp_rsrc_t = ::c_int; 492add0d91Sopenharmony_cipub type lgrp_affinity_t = ::c_int; 502add0d91Sopenharmony_cipub type lgrp_id_t = ::id_t; 512add0d91Sopenharmony_cipub type lgrp_mem_size_t = ::c_longlong; 522add0d91Sopenharmony_cipub type lgrp_cookie_t = ::uintptr_t; 532add0d91Sopenharmony_cipub type lgrp_content_t = ::c_uint; 542add0d91Sopenharmony_cipub type lgrp_lat_between_t = ::c_uint; 552add0d91Sopenharmony_cipub type lgrp_mem_size_flag_t = ::c_uint; 562add0d91Sopenharmony_cipub type lgrp_view_t = ::c_uint; 572add0d91Sopenharmony_ci 582add0d91Sopenharmony_ci#[cfg_attr(feature = "extra_traits", derive(Debug))] 592add0d91Sopenharmony_cipub enum timezone {} 602add0d91Sopenharmony_ciimpl ::Copy for timezone {} 612add0d91Sopenharmony_ciimpl ::Clone for timezone { 622add0d91Sopenharmony_ci fn clone(&self) -> timezone { 632add0d91Sopenharmony_ci *self 642add0d91Sopenharmony_ci } 652add0d91Sopenharmony_ci} 662add0d91Sopenharmony_ci 672add0d91Sopenharmony_ci#[cfg_attr(feature = "extra_traits", derive(Debug))] 682add0d91Sopenharmony_cipub enum ucred_t {} 692add0d91Sopenharmony_ciimpl ::Copy for ucred_t {} 702add0d91Sopenharmony_ciimpl ::Clone for ucred_t { 712add0d91Sopenharmony_ci fn clone(&self) -> ucred_t { 722add0d91Sopenharmony_ci *self 732add0d91Sopenharmony_ci } 742add0d91Sopenharmony_ci} 752add0d91Sopenharmony_ci 762add0d91Sopenharmony_cis! { 772add0d91Sopenharmony_ci pub struct in_addr { 782add0d91Sopenharmony_ci pub s_addr: ::in_addr_t, 792add0d91Sopenharmony_ci } 802add0d91Sopenharmony_ci 812add0d91Sopenharmony_ci pub struct ip_mreq { 822add0d91Sopenharmony_ci pub imr_multiaddr: in_addr, 832add0d91Sopenharmony_ci pub imr_interface: in_addr, 842add0d91Sopenharmony_ci } 852add0d91Sopenharmony_ci 862add0d91Sopenharmony_ci pub struct ip_mreq_source { 872add0d91Sopenharmony_ci pub imr_multiaddr: in_addr, 882add0d91Sopenharmony_ci pub imr_sourceaddr: in_addr, 892add0d91Sopenharmony_ci pub imr_interface: in_addr, 902add0d91Sopenharmony_ci } 912add0d91Sopenharmony_ci 922add0d91Sopenharmony_ci pub struct ipc_perm { 932add0d91Sopenharmony_ci pub uid: ::uid_t, 942add0d91Sopenharmony_ci pub gid: ::gid_t, 952add0d91Sopenharmony_ci pub cuid: ::uid_t, 962add0d91Sopenharmony_ci pub cgid: ::gid_t, 972add0d91Sopenharmony_ci pub mode: ::mode_t, 982add0d91Sopenharmony_ci pub seq: ::c_uint, 992add0d91Sopenharmony_ci pub key: ::key_t, 1002add0d91Sopenharmony_ci } 1012add0d91Sopenharmony_ci 1022add0d91Sopenharmony_ci pub struct sockaddr { 1032add0d91Sopenharmony_ci pub sa_family: sa_family_t, 1042add0d91Sopenharmony_ci pub sa_data: [::c_char; 14], 1052add0d91Sopenharmony_ci } 1062add0d91Sopenharmony_ci 1072add0d91Sopenharmony_ci pub struct sockaddr_in { 1082add0d91Sopenharmony_ci pub sin_family: sa_family_t, 1092add0d91Sopenharmony_ci pub sin_port: ::in_port_t, 1102add0d91Sopenharmony_ci pub sin_addr: ::in_addr, 1112add0d91Sopenharmony_ci pub sin_zero: [::c_char; 8] 1122add0d91Sopenharmony_ci } 1132add0d91Sopenharmony_ci 1142add0d91Sopenharmony_ci pub struct sockaddr_in6 { 1152add0d91Sopenharmony_ci pub sin6_family: sa_family_t, 1162add0d91Sopenharmony_ci pub sin6_port: ::in_port_t, 1172add0d91Sopenharmony_ci pub sin6_flowinfo: u32, 1182add0d91Sopenharmony_ci pub sin6_addr: ::in6_addr, 1192add0d91Sopenharmony_ci pub sin6_scope_id: u32, 1202add0d91Sopenharmony_ci pub __sin6_src_id: u32 1212add0d91Sopenharmony_ci } 1222add0d91Sopenharmony_ci 1232add0d91Sopenharmony_ci pub struct passwd { 1242add0d91Sopenharmony_ci pub pw_name: *mut ::c_char, 1252add0d91Sopenharmony_ci pub pw_passwd: *mut ::c_char, 1262add0d91Sopenharmony_ci pub pw_uid: ::uid_t, 1272add0d91Sopenharmony_ci pub pw_gid: ::gid_t, 1282add0d91Sopenharmony_ci pub pw_age: *mut ::c_char, 1292add0d91Sopenharmony_ci pub pw_comment: *mut ::c_char, 1302add0d91Sopenharmony_ci pub pw_gecos: *mut ::c_char, 1312add0d91Sopenharmony_ci pub pw_dir: *mut ::c_char, 1322add0d91Sopenharmony_ci pub pw_shell: *mut ::c_char 1332add0d91Sopenharmony_ci } 1342add0d91Sopenharmony_ci 1352add0d91Sopenharmony_ci pub struct ifaddrs { 1362add0d91Sopenharmony_ci pub ifa_next: *mut ifaddrs, 1372add0d91Sopenharmony_ci pub ifa_name: *mut ::c_char, 1382add0d91Sopenharmony_ci pub ifa_flags: ::c_ulong, 1392add0d91Sopenharmony_ci pub ifa_addr: *mut ::sockaddr, 1402add0d91Sopenharmony_ci pub ifa_netmask: *mut ::sockaddr, 1412add0d91Sopenharmony_ci pub ifa_dstaddr: *mut ::sockaddr, 1422add0d91Sopenharmony_ci pub ifa_data: *mut ::c_void 1432add0d91Sopenharmony_ci } 1442add0d91Sopenharmony_ci 1452add0d91Sopenharmony_ci pub struct itimerspec { 1462add0d91Sopenharmony_ci pub it_interval: ::timespec, 1472add0d91Sopenharmony_ci pub it_value: ::timespec, 1482add0d91Sopenharmony_ci } 1492add0d91Sopenharmony_ci 1502add0d91Sopenharmony_ci pub struct tm { 1512add0d91Sopenharmony_ci pub tm_sec: ::c_int, 1522add0d91Sopenharmony_ci pub tm_min: ::c_int, 1532add0d91Sopenharmony_ci pub tm_hour: ::c_int, 1542add0d91Sopenharmony_ci pub tm_mday: ::c_int, 1552add0d91Sopenharmony_ci pub tm_mon: ::c_int, 1562add0d91Sopenharmony_ci pub tm_year: ::c_int, 1572add0d91Sopenharmony_ci pub tm_wday: ::c_int, 1582add0d91Sopenharmony_ci pub tm_yday: ::c_int, 1592add0d91Sopenharmony_ci pub tm_isdst: ::c_int 1602add0d91Sopenharmony_ci } 1612add0d91Sopenharmony_ci 1622add0d91Sopenharmony_ci pub struct msghdr { 1632add0d91Sopenharmony_ci pub msg_name: *mut ::c_void, 1642add0d91Sopenharmony_ci pub msg_namelen: ::socklen_t, 1652add0d91Sopenharmony_ci pub msg_iov: *mut ::iovec, 1662add0d91Sopenharmony_ci pub msg_iovlen: ::c_int, 1672add0d91Sopenharmony_ci pub msg_control: *mut ::c_void, 1682add0d91Sopenharmony_ci pub msg_controllen: ::socklen_t, 1692add0d91Sopenharmony_ci pub msg_flags: ::c_int, 1702add0d91Sopenharmony_ci } 1712add0d91Sopenharmony_ci 1722add0d91Sopenharmony_ci pub struct cmsghdr { 1732add0d91Sopenharmony_ci pub cmsg_len: ::socklen_t, 1742add0d91Sopenharmony_ci pub cmsg_level: ::c_int, 1752add0d91Sopenharmony_ci pub cmsg_type: ::c_int, 1762add0d91Sopenharmony_ci } 1772add0d91Sopenharmony_ci 1782add0d91Sopenharmony_ci pub struct pthread_attr_t { 1792add0d91Sopenharmony_ci __pthread_attrp: *mut ::c_void 1802add0d91Sopenharmony_ci } 1812add0d91Sopenharmony_ci 1822add0d91Sopenharmony_ci pub struct pthread_mutex_t { 1832add0d91Sopenharmony_ci __pthread_mutex_flag1: u16, 1842add0d91Sopenharmony_ci __pthread_mutex_flag2: u8, 1852add0d91Sopenharmony_ci __pthread_mutex_ceiling: u8, 1862add0d91Sopenharmony_ci __pthread_mutex_type: u16, 1872add0d91Sopenharmony_ci __pthread_mutex_magic: u16, 1882add0d91Sopenharmony_ci __pthread_mutex_lock: u64, 1892add0d91Sopenharmony_ci __pthread_mutex_data: u64 1902add0d91Sopenharmony_ci } 1912add0d91Sopenharmony_ci 1922add0d91Sopenharmony_ci pub struct pthread_mutexattr_t { 1932add0d91Sopenharmony_ci __pthread_mutexattrp: *mut ::c_void 1942add0d91Sopenharmony_ci } 1952add0d91Sopenharmony_ci 1962add0d91Sopenharmony_ci pub struct pthread_cond_t { 1972add0d91Sopenharmony_ci __pthread_cond_flag: [u8; 4], 1982add0d91Sopenharmony_ci __pthread_cond_type: u16, 1992add0d91Sopenharmony_ci __pthread_cond_magic: u16, 2002add0d91Sopenharmony_ci __pthread_cond_data: u64 2012add0d91Sopenharmony_ci } 2022add0d91Sopenharmony_ci 2032add0d91Sopenharmony_ci pub struct pthread_condattr_t { 2042add0d91Sopenharmony_ci __pthread_condattrp: *mut ::c_void, 2052add0d91Sopenharmony_ci } 2062add0d91Sopenharmony_ci 2072add0d91Sopenharmony_ci pub struct pthread_rwlock_t { 2082add0d91Sopenharmony_ci __pthread_rwlock_readers: i32, 2092add0d91Sopenharmony_ci __pthread_rwlock_type: u16, 2102add0d91Sopenharmony_ci __pthread_rwlock_magic: u16, 2112add0d91Sopenharmony_ci __pthread_rwlock_mutex: ::pthread_mutex_t, 2122add0d91Sopenharmony_ci __pthread_rwlock_readercv: ::pthread_cond_t, 2132add0d91Sopenharmony_ci __pthread_rwlock_writercv: ::pthread_cond_t 2142add0d91Sopenharmony_ci } 2152add0d91Sopenharmony_ci 2162add0d91Sopenharmony_ci pub struct pthread_rwlockattr_t { 2172add0d91Sopenharmony_ci __pthread_rwlockattrp: *mut ::c_void, 2182add0d91Sopenharmony_ci } 2192add0d91Sopenharmony_ci 2202add0d91Sopenharmony_ci pub struct dirent { 2212add0d91Sopenharmony_ci pub d_ino: ::ino_t, 2222add0d91Sopenharmony_ci pub d_off: ::off_t, 2232add0d91Sopenharmony_ci pub d_reclen: u16, 2242add0d91Sopenharmony_ci pub d_name: [::c_char; 3] 2252add0d91Sopenharmony_ci } 2262add0d91Sopenharmony_ci 2272add0d91Sopenharmony_ci pub struct glob_t { 2282add0d91Sopenharmony_ci pub gl_pathc: ::size_t, 2292add0d91Sopenharmony_ci pub gl_pathv: *mut *mut ::c_char, 2302add0d91Sopenharmony_ci pub gl_offs: ::size_t, 2312add0d91Sopenharmony_ci __unused1: *mut ::c_void, 2322add0d91Sopenharmony_ci __unused2: ::c_int, 2332add0d91Sopenharmony_ci __unused3: ::c_int, 2342add0d91Sopenharmony_ci __unused4: ::c_int, 2352add0d91Sopenharmony_ci __unused5: *mut ::c_void, 2362add0d91Sopenharmony_ci __unused6: *mut ::c_void, 2372add0d91Sopenharmony_ci __unused7: *mut ::c_void, 2382add0d91Sopenharmony_ci __unused8: *mut ::c_void, 2392add0d91Sopenharmony_ci __unused9: *mut ::c_void, 2402add0d91Sopenharmony_ci __unused10: *mut ::c_void, 2412add0d91Sopenharmony_ci } 2422add0d91Sopenharmony_ci 2432add0d91Sopenharmony_ci pub struct addrinfo { 2442add0d91Sopenharmony_ci pub ai_flags: ::c_int, 2452add0d91Sopenharmony_ci pub ai_family: ::c_int, 2462add0d91Sopenharmony_ci pub ai_socktype: ::c_int, 2472add0d91Sopenharmony_ci pub ai_protocol: ::c_int, 2482add0d91Sopenharmony_ci #[cfg(target_arch = "sparc64")] 2492add0d91Sopenharmony_ci __sparcv9_pad: ::c_int, 2502add0d91Sopenharmony_ci pub ai_addrlen: ::socklen_t, 2512add0d91Sopenharmony_ci pub ai_canonname: *mut ::c_char, 2522add0d91Sopenharmony_ci pub ai_addr: *mut ::sockaddr, 2532add0d91Sopenharmony_ci pub ai_next: *mut addrinfo, 2542add0d91Sopenharmony_ci } 2552add0d91Sopenharmony_ci 2562add0d91Sopenharmony_ci pub struct sigset_t { 2572add0d91Sopenharmony_ci bits: [u32; 4], 2582add0d91Sopenharmony_ci } 2592add0d91Sopenharmony_ci 2602add0d91Sopenharmony_ci pub struct sigaction { 2612add0d91Sopenharmony_ci pub sa_flags: ::c_int, 2622add0d91Sopenharmony_ci pub sa_sigaction: ::sighandler_t, 2632add0d91Sopenharmony_ci pub sa_mask: sigset_t, 2642add0d91Sopenharmony_ci } 2652add0d91Sopenharmony_ci 2662add0d91Sopenharmony_ci pub struct stack_t { 2672add0d91Sopenharmony_ci pub ss_sp: *mut ::c_void, 2682add0d91Sopenharmony_ci pub ss_size: ::size_t, 2692add0d91Sopenharmony_ci pub ss_flags: ::c_int, 2702add0d91Sopenharmony_ci } 2712add0d91Sopenharmony_ci 2722add0d91Sopenharmony_ci pub struct statvfs { 2732add0d91Sopenharmony_ci pub f_bsize: ::c_ulong, 2742add0d91Sopenharmony_ci pub f_frsize: ::c_ulong, 2752add0d91Sopenharmony_ci pub f_blocks: ::fsblkcnt_t, 2762add0d91Sopenharmony_ci pub f_bfree: ::fsblkcnt_t, 2772add0d91Sopenharmony_ci pub f_bavail: ::fsblkcnt_t, 2782add0d91Sopenharmony_ci pub f_files: ::fsfilcnt_t, 2792add0d91Sopenharmony_ci pub f_ffree: ::fsfilcnt_t, 2802add0d91Sopenharmony_ci pub f_favail: ::fsfilcnt_t, 2812add0d91Sopenharmony_ci pub f_fsid: ::c_ulong, 2822add0d91Sopenharmony_ci pub f_basetype: [::c_char; 16], 2832add0d91Sopenharmony_ci pub f_flag: ::c_ulong, 2842add0d91Sopenharmony_ci pub f_namemax: ::c_ulong, 2852add0d91Sopenharmony_ci pub f_fstr: [::c_char; 32] 2862add0d91Sopenharmony_ci } 2872add0d91Sopenharmony_ci 2882add0d91Sopenharmony_ci pub struct sendfilevec_t { 2892add0d91Sopenharmony_ci pub sfv_fd: ::c_int, 2902add0d91Sopenharmony_ci pub sfv_flag: ::c_uint, 2912add0d91Sopenharmony_ci pub sfv_off: ::off_t, 2922add0d91Sopenharmony_ci pub sfv_len: ::size_t, 2932add0d91Sopenharmony_ci } 2942add0d91Sopenharmony_ci 2952add0d91Sopenharmony_ci pub struct sched_param { 2962add0d91Sopenharmony_ci pub sched_priority: ::c_int, 2972add0d91Sopenharmony_ci sched_pad: [::c_int; 8] 2982add0d91Sopenharmony_ci } 2992add0d91Sopenharmony_ci 3002add0d91Sopenharmony_ci pub struct Dl_info { 3012add0d91Sopenharmony_ci pub dli_fname: *const ::c_char, 3022add0d91Sopenharmony_ci pub dli_fbase: *mut ::c_void, 3032add0d91Sopenharmony_ci pub dli_sname: *const ::c_char, 3042add0d91Sopenharmony_ci pub dli_saddr: *mut ::c_void, 3052add0d91Sopenharmony_ci } 3062add0d91Sopenharmony_ci 3072add0d91Sopenharmony_ci pub struct stat { 3082add0d91Sopenharmony_ci pub st_dev: ::dev_t, 3092add0d91Sopenharmony_ci pub st_ino: ::ino_t, 3102add0d91Sopenharmony_ci pub st_mode: ::mode_t, 3112add0d91Sopenharmony_ci pub st_nlink: ::nlink_t, 3122add0d91Sopenharmony_ci pub st_uid: ::uid_t, 3132add0d91Sopenharmony_ci pub st_gid: ::gid_t, 3142add0d91Sopenharmony_ci pub st_rdev: ::dev_t, 3152add0d91Sopenharmony_ci pub st_size: ::off_t, 3162add0d91Sopenharmony_ci pub st_atime: ::time_t, 3172add0d91Sopenharmony_ci pub st_atime_nsec: ::c_long, 3182add0d91Sopenharmony_ci pub st_mtime: ::time_t, 3192add0d91Sopenharmony_ci pub st_mtime_nsec: ::c_long, 3202add0d91Sopenharmony_ci pub st_ctime: ::time_t, 3212add0d91Sopenharmony_ci pub st_ctime_nsec: ::c_long, 3222add0d91Sopenharmony_ci pub st_blksize: ::blksize_t, 3232add0d91Sopenharmony_ci pub st_blocks: ::blkcnt_t, 3242add0d91Sopenharmony_ci __unused: [::c_char; 16] 3252add0d91Sopenharmony_ci } 3262add0d91Sopenharmony_ci 3272add0d91Sopenharmony_ci pub struct termios { 3282add0d91Sopenharmony_ci pub c_iflag: ::tcflag_t, 3292add0d91Sopenharmony_ci pub c_oflag: ::tcflag_t, 3302add0d91Sopenharmony_ci pub c_cflag: ::tcflag_t, 3312add0d91Sopenharmony_ci pub c_lflag: ::tcflag_t, 3322add0d91Sopenharmony_ci pub c_cc: [::cc_t; ::NCCS] 3332add0d91Sopenharmony_ci } 3342add0d91Sopenharmony_ci 3352add0d91Sopenharmony_ci pub struct lconv { 3362add0d91Sopenharmony_ci pub decimal_point: *mut ::c_char, 3372add0d91Sopenharmony_ci pub thousands_sep: *mut ::c_char, 3382add0d91Sopenharmony_ci pub grouping: *mut ::c_char, 3392add0d91Sopenharmony_ci pub int_curr_symbol: *mut ::c_char, 3402add0d91Sopenharmony_ci pub currency_symbol: *mut ::c_char, 3412add0d91Sopenharmony_ci pub mon_decimal_point: *mut ::c_char, 3422add0d91Sopenharmony_ci pub mon_thousands_sep: *mut ::c_char, 3432add0d91Sopenharmony_ci pub mon_grouping: *mut ::c_char, 3442add0d91Sopenharmony_ci pub positive_sign: *mut ::c_char, 3452add0d91Sopenharmony_ci pub negative_sign: *mut ::c_char, 3462add0d91Sopenharmony_ci pub int_frac_digits: ::c_char, 3472add0d91Sopenharmony_ci pub frac_digits: ::c_char, 3482add0d91Sopenharmony_ci pub p_cs_precedes: ::c_char, 3492add0d91Sopenharmony_ci pub p_sep_by_space: ::c_char, 3502add0d91Sopenharmony_ci pub n_cs_precedes: ::c_char, 3512add0d91Sopenharmony_ci pub n_sep_by_space: ::c_char, 3522add0d91Sopenharmony_ci pub p_sign_posn: ::c_char, 3532add0d91Sopenharmony_ci pub n_sign_posn: ::c_char, 3542add0d91Sopenharmony_ci pub int_p_cs_precedes: ::c_char, 3552add0d91Sopenharmony_ci pub int_p_sep_by_space: ::c_char, 3562add0d91Sopenharmony_ci pub int_n_cs_precedes: ::c_char, 3572add0d91Sopenharmony_ci pub int_n_sep_by_space: ::c_char, 3582add0d91Sopenharmony_ci pub int_p_sign_posn: ::c_char, 3592add0d91Sopenharmony_ci pub int_n_sign_posn: ::c_char, 3602add0d91Sopenharmony_ci } 3612add0d91Sopenharmony_ci 3622add0d91Sopenharmony_ci pub struct sem_t { 3632add0d91Sopenharmony_ci pub sem_count: u32, 3642add0d91Sopenharmony_ci pub sem_type: u16, 3652add0d91Sopenharmony_ci pub sem_magic: u16, 3662add0d91Sopenharmony_ci pub sem_pad1: [u64; 3], 3672add0d91Sopenharmony_ci pub sem_pad2: [u64; 2] 3682add0d91Sopenharmony_ci } 3692add0d91Sopenharmony_ci 3702add0d91Sopenharmony_ci pub struct flock { 3712add0d91Sopenharmony_ci pub l_type: ::c_short, 3722add0d91Sopenharmony_ci pub l_whence: ::c_short, 3732add0d91Sopenharmony_ci pub l_start: ::off_t, 3742add0d91Sopenharmony_ci pub l_len: ::off_t, 3752add0d91Sopenharmony_ci pub l_sysid: ::c_int, 3762add0d91Sopenharmony_ci pub l_pid: ::pid_t, 3772add0d91Sopenharmony_ci pub l_pad: [::c_long; 4] 3782add0d91Sopenharmony_ci } 3792add0d91Sopenharmony_ci 3802add0d91Sopenharmony_ci pub struct if_nameindex { 3812add0d91Sopenharmony_ci pub if_index: ::c_uint, 3822add0d91Sopenharmony_ci pub if_name: *mut ::c_char, 3832add0d91Sopenharmony_ci } 3842add0d91Sopenharmony_ci 3852add0d91Sopenharmony_ci pub struct mq_attr { 3862add0d91Sopenharmony_ci pub mq_flags: ::c_long, 3872add0d91Sopenharmony_ci pub mq_maxmsg: ::c_long, 3882add0d91Sopenharmony_ci pub mq_msgsize: ::c_long, 3892add0d91Sopenharmony_ci pub mq_curmsgs: ::c_long, 3902add0d91Sopenharmony_ci _pad: [::c_int; 12] 3912add0d91Sopenharmony_ci } 3922add0d91Sopenharmony_ci 3932add0d91Sopenharmony_ci pub struct port_event { 3942add0d91Sopenharmony_ci pub portev_events: ::c_int, 3952add0d91Sopenharmony_ci pub portev_source: ::c_ushort, 3962add0d91Sopenharmony_ci pub portev_pad: ::c_ushort, 3972add0d91Sopenharmony_ci pub portev_object: ::uintptr_t, 3982add0d91Sopenharmony_ci pub portev_user: *mut ::c_void, 3992add0d91Sopenharmony_ci } 4002add0d91Sopenharmony_ci 4012add0d91Sopenharmony_ci pub struct port_notify { 4022add0d91Sopenharmony_ci pub portnfy_port: ::c_int, 4032add0d91Sopenharmony_ci pub portnfy_user: *mut ::c_void, 4042add0d91Sopenharmony_ci } 4052add0d91Sopenharmony_ci 4062add0d91Sopenharmony_ci pub struct exit_status { 4072add0d91Sopenharmony_ci e_termination: ::c_short, 4082add0d91Sopenharmony_ci e_exit: ::c_short, 4092add0d91Sopenharmony_ci } 4102add0d91Sopenharmony_ci 4112add0d91Sopenharmony_ci pub struct utmp { 4122add0d91Sopenharmony_ci pub ut_user: [::c_char; 8], 4132add0d91Sopenharmony_ci pub ut_id: [::c_char; 4], 4142add0d91Sopenharmony_ci pub ut_line: [::c_char; 12], 4152add0d91Sopenharmony_ci pub ut_pid: ::c_short, 4162add0d91Sopenharmony_ci pub ut_type: ::c_short, 4172add0d91Sopenharmony_ci pub ut_exit: exit_status, 4182add0d91Sopenharmony_ci pub ut_time: ::time_t, 4192add0d91Sopenharmony_ci } 4202add0d91Sopenharmony_ci 4212add0d91Sopenharmony_ci pub struct timex { 4222add0d91Sopenharmony_ci pub modes: u32, 4232add0d91Sopenharmony_ci pub offset: i32, 4242add0d91Sopenharmony_ci pub freq: i32, 4252add0d91Sopenharmony_ci pub maxerror: i32, 4262add0d91Sopenharmony_ci pub esterror: i32, 4272add0d91Sopenharmony_ci pub status: i32, 4282add0d91Sopenharmony_ci pub constant: i32, 4292add0d91Sopenharmony_ci pub precision: i32, 4302add0d91Sopenharmony_ci pub tolerance: i32, 4312add0d91Sopenharmony_ci pub ppsfreq: i32, 4322add0d91Sopenharmony_ci pub jitter: i32, 4332add0d91Sopenharmony_ci pub shift: i32, 4342add0d91Sopenharmony_ci pub stabil: i32, 4352add0d91Sopenharmony_ci pub jitcnt: i32, 4362add0d91Sopenharmony_ci pub calcnt: i32, 4372add0d91Sopenharmony_ci pub errcnt: i32, 4382add0d91Sopenharmony_ci pub stbcnt: i32, 4392add0d91Sopenharmony_ci } 4402add0d91Sopenharmony_ci 4412add0d91Sopenharmony_ci pub struct ntptimeval { 4422add0d91Sopenharmony_ci pub time: ::timeval, 4432add0d91Sopenharmony_ci pub maxerror: i32, 4442add0d91Sopenharmony_ci pub esterror: i32, 4452add0d91Sopenharmony_ci } 4462add0d91Sopenharmony_ci 4472add0d91Sopenharmony_ci pub struct mmapobj_result_t { 4482add0d91Sopenharmony_ci pub mr_addr: ::caddr_t, 4492add0d91Sopenharmony_ci pub mr_msize: ::size_t, 4502add0d91Sopenharmony_ci pub mr_fsize: ::size_t, 4512add0d91Sopenharmony_ci pub mr_offset: ::size_t, 4522add0d91Sopenharmony_ci pub mr_prot: ::c_uint, 4532add0d91Sopenharmony_ci pub mr_flags: ::c_uint, 4542add0d91Sopenharmony_ci } 4552add0d91Sopenharmony_ci 4562add0d91Sopenharmony_ci pub struct lgrp_affinity_args { 4572add0d91Sopenharmony_ci pub idtype: ::idtype_t, 4582add0d91Sopenharmony_ci pub id: ::id_t, 4592add0d91Sopenharmony_ci pub lgrp: ::lgrp_id_t, 4602add0d91Sopenharmony_ci pub aff: ::lgrp_affinity_t, 4612add0d91Sopenharmony_ci } 4622add0d91Sopenharmony_ci 4632add0d91Sopenharmony_ci pub struct processor_info_t { 4642add0d91Sopenharmony_ci pub pi_state: ::c_int, 4652add0d91Sopenharmony_ci pub pi_processor_type: [::c_char; PI_TYPELEN as usize], 4662add0d91Sopenharmony_ci pub pi_fputypes: [::c_char; PI_FPUTYPE as usize], 4672add0d91Sopenharmony_ci pub pi_clock: ::c_int, 4682add0d91Sopenharmony_ci } 4692add0d91Sopenharmony_ci 4702add0d91Sopenharmony_ci pub struct option { 4712add0d91Sopenharmony_ci pub name: *const ::c_char, 4722add0d91Sopenharmony_ci pub has_arg: ::c_int, 4732add0d91Sopenharmony_ci pub flag: *mut ::c_int, 4742add0d91Sopenharmony_ci pub val: ::c_int, 4752add0d91Sopenharmony_ci } 4762add0d91Sopenharmony_ci} 4772add0d91Sopenharmony_ci 4782add0d91Sopenharmony_cis_no_extra_traits! { 4792add0d91Sopenharmony_ci #[cfg_attr(all( 4802add0d91Sopenharmony_ci any(target_arch = "x86", target_arch = "x86_64"), 4812add0d91Sopenharmony_ci libc_packedN 4822add0d91Sopenharmony_ci ), repr(packed(4)))] 4832add0d91Sopenharmony_ci #[cfg_attr(all( 4842add0d91Sopenharmony_ci any(target_arch = "x86", target_arch = "x86_64"), 4852add0d91Sopenharmony_ci not(libc_packedN) 4862add0d91Sopenharmony_ci ), repr(packed))] 4872add0d91Sopenharmony_ci pub struct epoll_event { 4882add0d91Sopenharmony_ci pub events: u32, 4892add0d91Sopenharmony_ci pub u64: u64, 4902add0d91Sopenharmony_ci } 4912add0d91Sopenharmony_ci 4922add0d91Sopenharmony_ci pub struct utmpx { 4932add0d91Sopenharmony_ci pub ut_user: [::c_char; _UTX_USERSIZE], 4942add0d91Sopenharmony_ci pub ut_id: [::c_char; _UTX_IDSIZE], 4952add0d91Sopenharmony_ci pub ut_line: [::c_char; _UTX_LINESIZE], 4962add0d91Sopenharmony_ci pub ut_pid: ::pid_t, 4972add0d91Sopenharmony_ci pub ut_type: ::c_short, 4982add0d91Sopenharmony_ci pub ut_exit: exit_status, 4992add0d91Sopenharmony_ci pub ut_tv: ::timeval, 5002add0d91Sopenharmony_ci pub ut_session: ::c_int, 5012add0d91Sopenharmony_ci pub ut_pad: [::c_int; _UTX_PADSIZE], 5022add0d91Sopenharmony_ci pub ut_syslen: ::c_short, 5032add0d91Sopenharmony_ci pub ut_host: [::c_char; _UTX_HOSTSIZE], 5042add0d91Sopenharmony_ci } 5052add0d91Sopenharmony_ci 5062add0d91Sopenharmony_ci pub struct sockaddr_un { 5072add0d91Sopenharmony_ci pub sun_family: sa_family_t, 5082add0d91Sopenharmony_ci pub sun_path: [c_char; 108] 5092add0d91Sopenharmony_ci } 5102add0d91Sopenharmony_ci 5112add0d91Sopenharmony_ci pub struct utsname { 5122add0d91Sopenharmony_ci pub sysname: [::c_char; 257], 5132add0d91Sopenharmony_ci pub nodename: [::c_char; 257], 5142add0d91Sopenharmony_ci pub release: [::c_char; 257], 5152add0d91Sopenharmony_ci pub version: [::c_char; 257], 5162add0d91Sopenharmony_ci pub machine: [::c_char; 257], 5172add0d91Sopenharmony_ci } 5182add0d91Sopenharmony_ci 5192add0d91Sopenharmony_ci pub struct fd_set { 5202add0d91Sopenharmony_ci #[cfg(target_pointer_width = "64")] 5212add0d91Sopenharmony_ci fds_bits: [i64; FD_SETSIZE / 64], 5222add0d91Sopenharmony_ci #[cfg(target_pointer_width = "32")] 5232add0d91Sopenharmony_ci fds_bits: [i32; FD_SETSIZE / 32], 5242add0d91Sopenharmony_ci } 5252add0d91Sopenharmony_ci 5262add0d91Sopenharmony_ci pub struct sockaddr_storage { 5272add0d91Sopenharmony_ci pub ss_family: ::sa_family_t, 5282add0d91Sopenharmony_ci __ss_pad1: [u8; 6], 5292add0d91Sopenharmony_ci __ss_align: i64, 5302add0d91Sopenharmony_ci __ss_pad2: [u8; 240], 5312add0d91Sopenharmony_ci } 5322add0d91Sopenharmony_ci 5332add0d91Sopenharmony_ci #[cfg_attr(all(target_pointer_width = "64", libc_align), repr(align(8)))] 5342add0d91Sopenharmony_ci pub struct siginfo_t { 5352add0d91Sopenharmony_ci pub si_signo: ::c_int, 5362add0d91Sopenharmony_ci pub si_code: ::c_int, 5372add0d91Sopenharmony_ci pub si_errno: ::c_int, 5382add0d91Sopenharmony_ci #[cfg(target_pointer_width = "64")] 5392add0d91Sopenharmony_ci pub si_pad: ::c_int, 5402add0d91Sopenharmony_ci 5412add0d91Sopenharmony_ci __data_pad: [::c_int; SIGINFO_DATA_SIZE], 5422add0d91Sopenharmony_ci } 5432add0d91Sopenharmony_ci 5442add0d91Sopenharmony_ci pub struct sockaddr_dl { 5452add0d91Sopenharmony_ci pub sdl_family: ::c_ushort, 5462add0d91Sopenharmony_ci pub sdl_index: ::c_ushort, 5472add0d91Sopenharmony_ci pub sdl_type: ::c_uchar, 5482add0d91Sopenharmony_ci pub sdl_nlen: ::c_uchar, 5492add0d91Sopenharmony_ci pub sdl_alen: ::c_uchar, 5502add0d91Sopenharmony_ci pub sdl_slen: ::c_uchar, 5512add0d91Sopenharmony_ci pub sdl_data: [::c_char; 244], 5522add0d91Sopenharmony_ci } 5532add0d91Sopenharmony_ci 5542add0d91Sopenharmony_ci pub struct sigevent { 5552add0d91Sopenharmony_ci pub sigev_notify: ::c_int, 5562add0d91Sopenharmony_ci pub sigev_signo: ::c_int, 5572add0d91Sopenharmony_ci pub sigev_value: ::sigval, 5582add0d91Sopenharmony_ci pub ss_sp: *mut ::c_void, 5592add0d91Sopenharmony_ci pub sigev_notify_attributes: *const ::pthread_attr_t, 5602add0d91Sopenharmony_ci __sigev_pad2: ::c_int, 5612add0d91Sopenharmony_ci } 5622add0d91Sopenharmony_ci 5632add0d91Sopenharmony_ci #[cfg(libc_union)] 5642add0d91Sopenharmony_ci #[cfg_attr(libc_align, repr(align(16)))] 5652add0d91Sopenharmony_ci pub union pad128_t { 5662add0d91Sopenharmony_ci // pub _q in this structure would be a "long double", of 16 bytes 5672add0d91Sopenharmony_ci pub _l: [i32; 4], 5682add0d91Sopenharmony_ci } 5692add0d91Sopenharmony_ci 5702add0d91Sopenharmony_ci #[cfg(libc_union)] 5712add0d91Sopenharmony_ci #[cfg_attr(libc_align, repr(align(16)))] 5722add0d91Sopenharmony_ci pub union upad128_t { 5732add0d91Sopenharmony_ci // pub _q in this structure would be a "long double", of 16 bytes 5742add0d91Sopenharmony_ci pub _l: [u32; 4], 5752add0d91Sopenharmony_ci } 5762add0d91Sopenharmony_ci} 5772add0d91Sopenharmony_ci 5782add0d91Sopenharmony_cicfg_if! { 5792add0d91Sopenharmony_ci if #[cfg(feature = "extra_traits")] { 5802add0d91Sopenharmony_ci impl PartialEq for utmpx { 5812add0d91Sopenharmony_ci fn eq(&self, other: &utmpx) -> bool { 5822add0d91Sopenharmony_ci self.ut_type == other.ut_type 5832add0d91Sopenharmony_ci && self.ut_pid == other.ut_pid 5842add0d91Sopenharmony_ci && self.ut_user == other.ut_user 5852add0d91Sopenharmony_ci && self.ut_line == other.ut_line 5862add0d91Sopenharmony_ci && self.ut_id == other.ut_id 5872add0d91Sopenharmony_ci && self.ut_exit == other.ut_exit 5882add0d91Sopenharmony_ci && self.ut_session == other.ut_session 5892add0d91Sopenharmony_ci && self.ut_tv == other.ut_tv 5902add0d91Sopenharmony_ci && self.ut_syslen == other.ut_syslen 5912add0d91Sopenharmony_ci && self.ut_pad == other.ut_pad 5922add0d91Sopenharmony_ci && self 5932add0d91Sopenharmony_ci .ut_host 5942add0d91Sopenharmony_ci .iter() 5952add0d91Sopenharmony_ci .zip(other.ut_host.iter()) 5962add0d91Sopenharmony_ci .all(|(a,b)| a == b) 5972add0d91Sopenharmony_ci } 5982add0d91Sopenharmony_ci } 5992add0d91Sopenharmony_ci 6002add0d91Sopenharmony_ci impl Eq for utmpx {} 6012add0d91Sopenharmony_ci 6022add0d91Sopenharmony_ci impl ::fmt::Debug for utmpx { 6032add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 6042add0d91Sopenharmony_ci f.debug_struct("utmpx") 6052add0d91Sopenharmony_ci .field("ut_user", &self.ut_user) 6062add0d91Sopenharmony_ci .field("ut_id", &self.ut_id) 6072add0d91Sopenharmony_ci .field("ut_line", &self.ut_line) 6082add0d91Sopenharmony_ci .field("ut_pid", &self.ut_pid) 6092add0d91Sopenharmony_ci .field("ut_type", &self.ut_type) 6102add0d91Sopenharmony_ci .field("ut_exit", &self.ut_exit) 6112add0d91Sopenharmony_ci .field("ut_tv", &self.ut_tv) 6122add0d91Sopenharmony_ci .field("ut_session", &self.ut_session) 6132add0d91Sopenharmony_ci .field("ut_pad", &self.ut_pad) 6142add0d91Sopenharmony_ci .field("ut_syslen", &self.ut_syslen) 6152add0d91Sopenharmony_ci .field("ut_host", &&self.ut_host[..]) 6162add0d91Sopenharmony_ci .finish() 6172add0d91Sopenharmony_ci } 6182add0d91Sopenharmony_ci } 6192add0d91Sopenharmony_ci 6202add0d91Sopenharmony_ci impl ::hash::Hash for utmpx { 6212add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 6222add0d91Sopenharmony_ci self.ut_user.hash(state); 6232add0d91Sopenharmony_ci self.ut_type.hash(state); 6242add0d91Sopenharmony_ci self.ut_pid.hash(state); 6252add0d91Sopenharmony_ci self.ut_line.hash(state); 6262add0d91Sopenharmony_ci self.ut_id.hash(state); 6272add0d91Sopenharmony_ci self.ut_host.hash(state); 6282add0d91Sopenharmony_ci self.ut_exit.hash(state); 6292add0d91Sopenharmony_ci self.ut_session.hash(state); 6302add0d91Sopenharmony_ci self.ut_tv.hash(state); 6312add0d91Sopenharmony_ci self.ut_syslen.hash(state); 6322add0d91Sopenharmony_ci self.ut_pad.hash(state); 6332add0d91Sopenharmony_ci } 6342add0d91Sopenharmony_ci } 6352add0d91Sopenharmony_ci 6362add0d91Sopenharmony_ci impl PartialEq for epoll_event { 6372add0d91Sopenharmony_ci fn eq(&self, other: &epoll_event) -> bool { 6382add0d91Sopenharmony_ci self.events == other.events 6392add0d91Sopenharmony_ci && self.u64 == other.u64 6402add0d91Sopenharmony_ci } 6412add0d91Sopenharmony_ci } 6422add0d91Sopenharmony_ci impl Eq for epoll_event {} 6432add0d91Sopenharmony_ci impl ::fmt::Debug for epoll_event { 6442add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 6452add0d91Sopenharmony_ci let events = self.events; 6462add0d91Sopenharmony_ci let u64 = self.u64; 6472add0d91Sopenharmony_ci f.debug_struct("epoll_event") 6482add0d91Sopenharmony_ci .field("events", &events) 6492add0d91Sopenharmony_ci .field("u64", &u64) 6502add0d91Sopenharmony_ci .finish() 6512add0d91Sopenharmony_ci } 6522add0d91Sopenharmony_ci } 6532add0d91Sopenharmony_ci impl ::hash::Hash for epoll_event { 6542add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 6552add0d91Sopenharmony_ci let events = self.events; 6562add0d91Sopenharmony_ci let u64 = self.u64; 6572add0d91Sopenharmony_ci events.hash(state); 6582add0d91Sopenharmony_ci u64.hash(state); 6592add0d91Sopenharmony_ci } 6602add0d91Sopenharmony_ci } 6612add0d91Sopenharmony_ci 6622add0d91Sopenharmony_ci impl PartialEq for sockaddr_un { 6632add0d91Sopenharmony_ci fn eq(&self, other: &sockaddr_un) -> bool { 6642add0d91Sopenharmony_ci self.sun_family == other.sun_family 6652add0d91Sopenharmony_ci && self 6662add0d91Sopenharmony_ci .sun_path 6672add0d91Sopenharmony_ci .iter() 6682add0d91Sopenharmony_ci .zip(other.sun_path.iter()) 6692add0d91Sopenharmony_ci .all(|(a, b)| a == b) 6702add0d91Sopenharmony_ci } 6712add0d91Sopenharmony_ci } 6722add0d91Sopenharmony_ci impl Eq for sockaddr_un {} 6732add0d91Sopenharmony_ci impl ::fmt::Debug for sockaddr_un { 6742add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 6752add0d91Sopenharmony_ci f.debug_struct("sockaddr_un") 6762add0d91Sopenharmony_ci .field("sun_family", &self.sun_family) 6772add0d91Sopenharmony_ci // FIXME: .field("sun_path", &self.sun_path) 6782add0d91Sopenharmony_ci .finish() 6792add0d91Sopenharmony_ci } 6802add0d91Sopenharmony_ci } 6812add0d91Sopenharmony_ci impl ::hash::Hash for sockaddr_un { 6822add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 6832add0d91Sopenharmony_ci self.sun_family.hash(state); 6842add0d91Sopenharmony_ci self.sun_path.hash(state); 6852add0d91Sopenharmony_ci } 6862add0d91Sopenharmony_ci } 6872add0d91Sopenharmony_ci 6882add0d91Sopenharmony_ci impl PartialEq for utsname { 6892add0d91Sopenharmony_ci fn eq(&self, other: &utsname) -> bool { 6902add0d91Sopenharmony_ci self.sysname 6912add0d91Sopenharmony_ci .iter() 6922add0d91Sopenharmony_ci .zip(other.sysname.iter()) 6932add0d91Sopenharmony_ci .all(|(a, b)| a == b) 6942add0d91Sopenharmony_ci && self 6952add0d91Sopenharmony_ci .nodename 6962add0d91Sopenharmony_ci .iter() 6972add0d91Sopenharmony_ci .zip(other.nodename.iter()) 6982add0d91Sopenharmony_ci .all(|(a, b)| a == b) 6992add0d91Sopenharmony_ci && self 7002add0d91Sopenharmony_ci .release 7012add0d91Sopenharmony_ci .iter() 7022add0d91Sopenharmony_ci .zip(other.release.iter()) 7032add0d91Sopenharmony_ci .all(|(a, b)| a == b) 7042add0d91Sopenharmony_ci && self 7052add0d91Sopenharmony_ci .version 7062add0d91Sopenharmony_ci .iter() 7072add0d91Sopenharmony_ci .zip(other.version.iter()) 7082add0d91Sopenharmony_ci .all(|(a, b)| a == b) 7092add0d91Sopenharmony_ci && self 7102add0d91Sopenharmony_ci .machine 7112add0d91Sopenharmony_ci .iter() 7122add0d91Sopenharmony_ci .zip(other.machine.iter()) 7132add0d91Sopenharmony_ci .all(|(a, b)| a == b) 7142add0d91Sopenharmony_ci } 7152add0d91Sopenharmony_ci } 7162add0d91Sopenharmony_ci impl Eq for utsname {} 7172add0d91Sopenharmony_ci impl ::fmt::Debug for utsname { 7182add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 7192add0d91Sopenharmony_ci f.debug_struct("utsname") 7202add0d91Sopenharmony_ci // FIXME: .field("sysname", &self.sysname) 7212add0d91Sopenharmony_ci // FIXME: .field("nodename", &self.nodename) 7222add0d91Sopenharmony_ci // FIXME: .field("release", &self.release) 7232add0d91Sopenharmony_ci // FIXME: .field("version", &self.version) 7242add0d91Sopenharmony_ci // FIXME: .field("machine", &self.machine) 7252add0d91Sopenharmony_ci .finish() 7262add0d91Sopenharmony_ci } 7272add0d91Sopenharmony_ci } 7282add0d91Sopenharmony_ci impl ::hash::Hash for utsname { 7292add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 7302add0d91Sopenharmony_ci self.sysname.hash(state); 7312add0d91Sopenharmony_ci self.nodename.hash(state); 7322add0d91Sopenharmony_ci self.release.hash(state); 7332add0d91Sopenharmony_ci self.version.hash(state); 7342add0d91Sopenharmony_ci self.machine.hash(state); 7352add0d91Sopenharmony_ci } 7362add0d91Sopenharmony_ci } 7372add0d91Sopenharmony_ci 7382add0d91Sopenharmony_ci impl PartialEq for fd_set { 7392add0d91Sopenharmony_ci fn eq(&self, other: &fd_set) -> bool { 7402add0d91Sopenharmony_ci self.fds_bits 7412add0d91Sopenharmony_ci .iter() 7422add0d91Sopenharmony_ci .zip(other.fds_bits.iter()) 7432add0d91Sopenharmony_ci .all(|(a, b)| a == b) 7442add0d91Sopenharmony_ci } 7452add0d91Sopenharmony_ci } 7462add0d91Sopenharmony_ci impl Eq for fd_set {} 7472add0d91Sopenharmony_ci impl ::fmt::Debug for fd_set { 7482add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 7492add0d91Sopenharmony_ci f.debug_struct("fd_set") 7502add0d91Sopenharmony_ci // FIXME: .field("fds_bits", &self.fds_bits) 7512add0d91Sopenharmony_ci .finish() 7522add0d91Sopenharmony_ci } 7532add0d91Sopenharmony_ci } 7542add0d91Sopenharmony_ci impl ::hash::Hash for fd_set { 7552add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 7562add0d91Sopenharmony_ci self.fds_bits.hash(state); 7572add0d91Sopenharmony_ci } 7582add0d91Sopenharmony_ci } 7592add0d91Sopenharmony_ci 7602add0d91Sopenharmony_ci impl PartialEq for sockaddr_storage { 7612add0d91Sopenharmony_ci fn eq(&self, other: &sockaddr_storage) -> bool { 7622add0d91Sopenharmony_ci self.ss_family == other.ss_family 7632add0d91Sopenharmony_ci && self.__ss_pad1 == other.__ss_pad1 7642add0d91Sopenharmony_ci && self.__ss_align == other.__ss_align 7652add0d91Sopenharmony_ci && self 7662add0d91Sopenharmony_ci .__ss_pad2 7672add0d91Sopenharmony_ci .iter() 7682add0d91Sopenharmony_ci .zip(other.__ss_pad2.iter()) 7692add0d91Sopenharmony_ci .all(|(a, b)| a == b) 7702add0d91Sopenharmony_ci } 7712add0d91Sopenharmony_ci } 7722add0d91Sopenharmony_ci impl Eq for sockaddr_storage {} 7732add0d91Sopenharmony_ci impl ::fmt::Debug for sockaddr_storage { 7742add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 7752add0d91Sopenharmony_ci f.debug_struct("sockaddr_storage") 7762add0d91Sopenharmony_ci .field("ss_family", &self.ss_family) 7772add0d91Sopenharmony_ci .field("__ss_pad1", &self.__ss_pad1) 7782add0d91Sopenharmony_ci .field("__ss_align", &self.__ss_align) 7792add0d91Sopenharmony_ci // FIXME: .field("__ss_pad2", &self.__ss_pad2) 7802add0d91Sopenharmony_ci .finish() 7812add0d91Sopenharmony_ci } 7822add0d91Sopenharmony_ci } 7832add0d91Sopenharmony_ci impl ::hash::Hash for sockaddr_storage { 7842add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 7852add0d91Sopenharmony_ci self.ss_family.hash(state); 7862add0d91Sopenharmony_ci self.__ss_pad1.hash(state); 7872add0d91Sopenharmony_ci self.__ss_align.hash(state); 7882add0d91Sopenharmony_ci self.__ss_pad2.hash(state); 7892add0d91Sopenharmony_ci } 7902add0d91Sopenharmony_ci } 7912add0d91Sopenharmony_ci 7922add0d91Sopenharmony_ci impl siginfo_t { 7932add0d91Sopenharmony_ci /// The siginfo_t will have differing contents based on the delivered signal. Based on 7942add0d91Sopenharmony_ci /// `si_signo`, this determines how many of the `c_int` pad fields contain valid data 7952add0d91Sopenharmony_ci /// exposed by the C unions. 7962add0d91Sopenharmony_ci /// 7972add0d91Sopenharmony_ci /// It is not yet exhausitive for the OS-defined types, and defaults to assuming the 7982add0d91Sopenharmony_ci /// entire data pad area is "valid" for otherwise unrecognized signal numbers. 7992add0d91Sopenharmony_ci fn data_field_count(&self) -> usize { 8002add0d91Sopenharmony_ci match self.si_signo { 8012add0d91Sopenharmony_ci ::SIGSEGV | ::SIGBUS | ::SIGILL | ::SIGTRAP | ::SIGFPE => { 8022add0d91Sopenharmony_ci ::mem::size_of::<siginfo_fault>() / ::mem::size_of::<::c_int>() 8032add0d91Sopenharmony_ci } 8042add0d91Sopenharmony_ci ::SIGCLD => ::mem::size_of::<siginfo_sigcld>() / ::mem::size_of::<::c_int>(), 8052add0d91Sopenharmony_ci ::SIGHUP 8062add0d91Sopenharmony_ci | ::SIGINT 8072add0d91Sopenharmony_ci | ::SIGQUIT 8082add0d91Sopenharmony_ci | ::SIGABRT 8092add0d91Sopenharmony_ci | ::SIGSYS 8102add0d91Sopenharmony_ci | ::SIGPIPE 8112add0d91Sopenharmony_ci | ::SIGALRM 8122add0d91Sopenharmony_ci | ::SIGTERM 8132add0d91Sopenharmony_ci | ::SIGUSR1 8142add0d91Sopenharmony_ci | ::SIGUSR2 8152add0d91Sopenharmony_ci | ::SIGPWR 8162add0d91Sopenharmony_ci | ::SIGWINCH 8172add0d91Sopenharmony_ci | ::SIGURG => ::mem::size_of::<siginfo_kill>() / ::mem::size_of::<::c_int>(), 8182add0d91Sopenharmony_ci _ => SIGINFO_DATA_SIZE, 8192add0d91Sopenharmony_ci } 8202add0d91Sopenharmony_ci } 8212add0d91Sopenharmony_ci } 8222add0d91Sopenharmony_ci impl PartialEq for siginfo_t { 8232add0d91Sopenharmony_ci fn eq(&self, other: &siginfo_t) -> bool { 8242add0d91Sopenharmony_ci if self.si_signo == other.si_signo 8252add0d91Sopenharmony_ci && self.si_code == other.si_code 8262add0d91Sopenharmony_ci && self.si_errno == other.si_errno { 8272add0d91Sopenharmony_ci // FIXME: The `si_pad` field in the 64-bit version of the struct is ignored 8282add0d91Sopenharmony_ci // (for now) when doing comparisons. 8292add0d91Sopenharmony_ci 8302add0d91Sopenharmony_ci let field_count = self.data_field_count(); 8312add0d91Sopenharmony_ci self.__data_pad[..field_count] 8322add0d91Sopenharmony_ci .iter() 8332add0d91Sopenharmony_ci .zip(other.__data_pad[..field_count].iter()) 8342add0d91Sopenharmony_ci .all(|(a, b)| a == b) 8352add0d91Sopenharmony_ci } else { 8362add0d91Sopenharmony_ci false 8372add0d91Sopenharmony_ci } 8382add0d91Sopenharmony_ci } 8392add0d91Sopenharmony_ci } 8402add0d91Sopenharmony_ci impl Eq for siginfo_t {} 8412add0d91Sopenharmony_ci impl ::fmt::Debug for siginfo_t { 8422add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 8432add0d91Sopenharmony_ci f.debug_struct("siginfo_t") 8442add0d91Sopenharmony_ci .field("si_signo", &self.si_signo) 8452add0d91Sopenharmony_ci .field("si_code", &self.si_code) 8462add0d91Sopenharmony_ci .field("si_errno", &self.si_errno) 8472add0d91Sopenharmony_ci // FIXME: .field("__pad", &self.__pad) 8482add0d91Sopenharmony_ci .finish() 8492add0d91Sopenharmony_ci } 8502add0d91Sopenharmony_ci } 8512add0d91Sopenharmony_ci impl ::hash::Hash for siginfo_t { 8522add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 8532add0d91Sopenharmony_ci self.si_signo.hash(state); 8542add0d91Sopenharmony_ci self.si_code.hash(state); 8552add0d91Sopenharmony_ci self.si_errno.hash(state); 8562add0d91Sopenharmony_ci 8572add0d91Sopenharmony_ci // FIXME: The `si_pad` field in the 64-bit version of the struct is ignored 8582add0d91Sopenharmony_ci // (for now) when doing hashing. 8592add0d91Sopenharmony_ci 8602add0d91Sopenharmony_ci let field_count = self.data_field_count(); 8612add0d91Sopenharmony_ci self.__data_pad[..field_count].hash(state) 8622add0d91Sopenharmony_ci } 8632add0d91Sopenharmony_ci } 8642add0d91Sopenharmony_ci 8652add0d91Sopenharmony_ci impl PartialEq for sockaddr_dl { 8662add0d91Sopenharmony_ci fn eq(&self, other: &sockaddr_dl) -> bool { 8672add0d91Sopenharmony_ci self.sdl_family == other.sdl_family 8682add0d91Sopenharmony_ci && self.sdl_index == other.sdl_index 8692add0d91Sopenharmony_ci && self.sdl_type == other.sdl_type 8702add0d91Sopenharmony_ci && self.sdl_nlen == other.sdl_nlen 8712add0d91Sopenharmony_ci && self.sdl_alen == other.sdl_alen 8722add0d91Sopenharmony_ci && self.sdl_slen == other.sdl_slen 8732add0d91Sopenharmony_ci && self 8742add0d91Sopenharmony_ci .sdl_data 8752add0d91Sopenharmony_ci .iter() 8762add0d91Sopenharmony_ci .zip(other.sdl_data.iter()) 8772add0d91Sopenharmony_ci .all(|(a,b)| a == b) 8782add0d91Sopenharmony_ci } 8792add0d91Sopenharmony_ci } 8802add0d91Sopenharmony_ci impl Eq for sockaddr_dl {} 8812add0d91Sopenharmony_ci impl ::fmt::Debug for sockaddr_dl { 8822add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 8832add0d91Sopenharmony_ci f.debug_struct("sockaddr_dl") 8842add0d91Sopenharmony_ci .field("sdl_family", &self.sdl_family) 8852add0d91Sopenharmony_ci .field("sdl_index", &self.sdl_index) 8862add0d91Sopenharmony_ci .field("sdl_type", &self.sdl_type) 8872add0d91Sopenharmony_ci .field("sdl_nlen", &self.sdl_nlen) 8882add0d91Sopenharmony_ci .field("sdl_alen", &self.sdl_alen) 8892add0d91Sopenharmony_ci .field("sdl_slen", &self.sdl_slen) 8902add0d91Sopenharmony_ci // FIXME: .field("sdl_data", &self.sdl_data) 8912add0d91Sopenharmony_ci .finish() 8922add0d91Sopenharmony_ci } 8932add0d91Sopenharmony_ci } 8942add0d91Sopenharmony_ci impl ::hash::Hash for sockaddr_dl { 8952add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 8962add0d91Sopenharmony_ci self.sdl_family.hash(state); 8972add0d91Sopenharmony_ci self.sdl_index.hash(state); 8982add0d91Sopenharmony_ci self.sdl_type.hash(state); 8992add0d91Sopenharmony_ci self.sdl_nlen.hash(state); 9002add0d91Sopenharmony_ci self.sdl_alen.hash(state); 9012add0d91Sopenharmony_ci self.sdl_slen.hash(state); 9022add0d91Sopenharmony_ci self.sdl_data.hash(state); 9032add0d91Sopenharmony_ci } 9042add0d91Sopenharmony_ci } 9052add0d91Sopenharmony_ci 9062add0d91Sopenharmony_ci impl PartialEq for sigevent { 9072add0d91Sopenharmony_ci fn eq(&self, other: &sigevent) -> bool { 9082add0d91Sopenharmony_ci self.sigev_notify == other.sigev_notify 9092add0d91Sopenharmony_ci && self.sigev_signo == other.sigev_signo 9102add0d91Sopenharmony_ci && self.sigev_value == other.sigev_value 9112add0d91Sopenharmony_ci && self.ss_sp == other.ss_sp 9122add0d91Sopenharmony_ci && self.sigev_notify_attributes 9132add0d91Sopenharmony_ci == other.sigev_notify_attributes 9142add0d91Sopenharmony_ci } 9152add0d91Sopenharmony_ci } 9162add0d91Sopenharmony_ci impl Eq for sigevent {} 9172add0d91Sopenharmony_ci impl ::fmt::Debug for sigevent { 9182add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 9192add0d91Sopenharmony_ci f.debug_struct("sigevent") 9202add0d91Sopenharmony_ci .field("sigev_notify", &self.sigev_notify) 9212add0d91Sopenharmony_ci .field("sigev_signo", &self.sigev_signo) 9222add0d91Sopenharmony_ci .field("sigev_value", &self.sigev_value) 9232add0d91Sopenharmony_ci .field("ss_sp", &self.ss_sp) 9242add0d91Sopenharmony_ci .field("sigev_notify_attributes", 9252add0d91Sopenharmony_ci &self.sigev_notify_attributes) 9262add0d91Sopenharmony_ci .finish() 9272add0d91Sopenharmony_ci } 9282add0d91Sopenharmony_ci } 9292add0d91Sopenharmony_ci impl ::hash::Hash for sigevent { 9302add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 9312add0d91Sopenharmony_ci self.sigev_notify.hash(state); 9322add0d91Sopenharmony_ci self.sigev_signo.hash(state); 9332add0d91Sopenharmony_ci self.sigev_value.hash(state); 9342add0d91Sopenharmony_ci self.ss_sp.hash(state); 9352add0d91Sopenharmony_ci self.sigev_notify_attributes.hash(state); 9362add0d91Sopenharmony_ci } 9372add0d91Sopenharmony_ci } 9382add0d91Sopenharmony_ci 9392add0d91Sopenharmony_ci #[cfg(libc_union)] 9402add0d91Sopenharmony_ci impl PartialEq for pad128_t { 9412add0d91Sopenharmony_ci fn eq(&self, other: &pad128_t) -> bool { 9422add0d91Sopenharmony_ci unsafe { 9432add0d91Sopenharmony_ci // FIXME: self._q == other._q || 9442add0d91Sopenharmony_ci self._l == other._l 9452add0d91Sopenharmony_ci } 9462add0d91Sopenharmony_ci } 9472add0d91Sopenharmony_ci } 9482add0d91Sopenharmony_ci #[cfg(libc_union)] 9492add0d91Sopenharmony_ci impl Eq for pad128_t {} 9502add0d91Sopenharmony_ci #[cfg(libc_union)] 9512add0d91Sopenharmony_ci impl ::fmt::Debug for pad128_t { 9522add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 9532add0d91Sopenharmony_ci unsafe { 9542add0d91Sopenharmony_ci f.debug_struct("pad128_t") 9552add0d91Sopenharmony_ci // FIXME: .field("_q", &{self._q}) 9562add0d91Sopenharmony_ci .field("_l", &{self._l}) 9572add0d91Sopenharmony_ci .finish() 9582add0d91Sopenharmony_ci } 9592add0d91Sopenharmony_ci } 9602add0d91Sopenharmony_ci } 9612add0d91Sopenharmony_ci #[cfg(libc_union)] 9622add0d91Sopenharmony_ci impl ::hash::Hash for pad128_t { 9632add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 9642add0d91Sopenharmony_ci unsafe { 9652add0d91Sopenharmony_ci // FIXME: state.write_i64(self._q as i64); 9662add0d91Sopenharmony_ci self._l.hash(state); 9672add0d91Sopenharmony_ci } 9682add0d91Sopenharmony_ci } 9692add0d91Sopenharmony_ci } 9702add0d91Sopenharmony_ci #[cfg(libc_union)] 9712add0d91Sopenharmony_ci impl PartialEq for upad128_t { 9722add0d91Sopenharmony_ci fn eq(&self, other: &upad128_t) -> bool { 9732add0d91Sopenharmony_ci unsafe { 9742add0d91Sopenharmony_ci // FIXME: self._q == other._q || 9752add0d91Sopenharmony_ci self._l == other._l 9762add0d91Sopenharmony_ci } 9772add0d91Sopenharmony_ci } 9782add0d91Sopenharmony_ci } 9792add0d91Sopenharmony_ci #[cfg(libc_union)] 9802add0d91Sopenharmony_ci impl Eq for upad128_t {} 9812add0d91Sopenharmony_ci #[cfg(libc_union)] 9822add0d91Sopenharmony_ci impl ::fmt::Debug for upad128_t { 9832add0d91Sopenharmony_ci fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { 9842add0d91Sopenharmony_ci unsafe { 9852add0d91Sopenharmony_ci f.debug_struct("upad128_t") 9862add0d91Sopenharmony_ci // FIXME: .field("_q", &{self._q}) 9872add0d91Sopenharmony_ci .field("_l", &{self._l}) 9882add0d91Sopenharmony_ci .finish() 9892add0d91Sopenharmony_ci } 9902add0d91Sopenharmony_ci } 9912add0d91Sopenharmony_ci } 9922add0d91Sopenharmony_ci #[cfg(libc_union)] 9932add0d91Sopenharmony_ci impl ::hash::Hash for upad128_t { 9942add0d91Sopenharmony_ci fn hash<H: ::hash::Hasher>(&self, state: &mut H) { 9952add0d91Sopenharmony_ci unsafe { 9962add0d91Sopenharmony_ci // FIXME: state.write_i64(self._q as i64); 9972add0d91Sopenharmony_ci self._l.hash(state); 9982add0d91Sopenharmony_ci } 9992add0d91Sopenharmony_ci } 10002add0d91Sopenharmony_ci } 10012add0d91Sopenharmony_ci } 10022add0d91Sopenharmony_ci} 10032add0d91Sopenharmony_ci 10042add0d91Sopenharmony_cicfg_if! { 10052add0d91Sopenharmony_ci if #[cfg(target_pointer_width = "64")] { 10062add0d91Sopenharmony_ci const SIGINFO_DATA_SIZE: usize = 60; 10072add0d91Sopenharmony_ci } else { 10082add0d91Sopenharmony_ci const SIGINFO_DATA_SIZE: usize = 29; 10092add0d91Sopenharmony_ci } 10102add0d91Sopenharmony_ci} 10112add0d91Sopenharmony_ci 10122add0d91Sopenharmony_ci#[repr(C)] 10132add0d91Sopenharmony_cistruct siginfo_fault { 10142add0d91Sopenharmony_ci addr: *mut ::c_void, 10152add0d91Sopenharmony_ci trapno: ::c_int, 10162add0d91Sopenharmony_ci pc: *mut ::caddr_t, 10172add0d91Sopenharmony_ci} 10182add0d91Sopenharmony_ciimpl ::Copy for siginfo_fault {} 10192add0d91Sopenharmony_ciimpl ::Clone for siginfo_fault { 10202add0d91Sopenharmony_ci fn clone(&self) -> Self { 10212add0d91Sopenharmony_ci *self 10222add0d91Sopenharmony_ci } 10232add0d91Sopenharmony_ci} 10242add0d91Sopenharmony_ci 10252add0d91Sopenharmony_ci#[repr(C)] 10262add0d91Sopenharmony_cistruct siginfo_cldval { 10272add0d91Sopenharmony_ci utime: ::clock_t, 10282add0d91Sopenharmony_ci status: ::c_int, 10292add0d91Sopenharmony_ci stime: ::clock_t, 10302add0d91Sopenharmony_ci} 10312add0d91Sopenharmony_ciimpl ::Copy for siginfo_cldval {} 10322add0d91Sopenharmony_ciimpl ::Clone for siginfo_cldval { 10332add0d91Sopenharmony_ci fn clone(&self) -> Self { 10342add0d91Sopenharmony_ci *self 10352add0d91Sopenharmony_ci } 10362add0d91Sopenharmony_ci} 10372add0d91Sopenharmony_ci 10382add0d91Sopenharmony_ci#[repr(C)] 10392add0d91Sopenharmony_cistruct siginfo_killval { 10402add0d91Sopenharmony_ci uid: ::uid_t, 10412add0d91Sopenharmony_ci value: ::sigval, 10422add0d91Sopenharmony_ci // Pad out to match the SIGCLD value size 10432add0d91Sopenharmony_ci _pad: *mut ::c_void, 10442add0d91Sopenharmony_ci} 10452add0d91Sopenharmony_ciimpl ::Copy for siginfo_killval {} 10462add0d91Sopenharmony_ciimpl ::Clone for siginfo_killval { 10472add0d91Sopenharmony_ci fn clone(&self) -> Self { 10482add0d91Sopenharmony_ci *self 10492add0d91Sopenharmony_ci } 10502add0d91Sopenharmony_ci} 10512add0d91Sopenharmony_ci 10522add0d91Sopenharmony_ci#[repr(C)] 10532add0d91Sopenharmony_cistruct siginfo_sigcld { 10542add0d91Sopenharmony_ci pid: ::pid_t, 10552add0d91Sopenharmony_ci val: siginfo_cldval, 10562add0d91Sopenharmony_ci ctid: ::ctid_t, 10572add0d91Sopenharmony_ci zoneid: ::zoneid_t, 10582add0d91Sopenharmony_ci} 10592add0d91Sopenharmony_ciimpl ::Copy for siginfo_sigcld {} 10602add0d91Sopenharmony_ciimpl ::Clone for siginfo_sigcld { 10612add0d91Sopenharmony_ci fn clone(&self) -> Self { 10622add0d91Sopenharmony_ci *self 10632add0d91Sopenharmony_ci } 10642add0d91Sopenharmony_ci} 10652add0d91Sopenharmony_ci 10662add0d91Sopenharmony_ci#[repr(C)] 10672add0d91Sopenharmony_cistruct siginfo_kill { 10682add0d91Sopenharmony_ci pid: ::pid_t, 10692add0d91Sopenharmony_ci val: siginfo_killval, 10702add0d91Sopenharmony_ci ctid: ::ctid_t, 10712add0d91Sopenharmony_ci zoneid: ::zoneid_t, 10722add0d91Sopenharmony_ci} 10732add0d91Sopenharmony_ciimpl ::Copy for siginfo_kill {} 10742add0d91Sopenharmony_ciimpl ::Clone for siginfo_kill { 10752add0d91Sopenharmony_ci fn clone(&self) -> Self { 10762add0d91Sopenharmony_ci *self 10772add0d91Sopenharmony_ci } 10782add0d91Sopenharmony_ci} 10792add0d91Sopenharmony_ci 10802add0d91Sopenharmony_ciimpl siginfo_t { 10812add0d91Sopenharmony_ci unsafe fn sidata<T: ::Copy>(&self) -> T { 10822add0d91Sopenharmony_ci *((&self.__data_pad) as *const ::c_int as *const T) 10832add0d91Sopenharmony_ci } 10842add0d91Sopenharmony_ci pub unsafe fn si_addr(&self) -> *mut ::c_void { 10852add0d91Sopenharmony_ci let sifault: siginfo_fault = self.sidata(); 10862add0d91Sopenharmony_ci sifault.addr 10872add0d91Sopenharmony_ci } 10882add0d91Sopenharmony_ci pub unsafe fn si_uid(&self) -> ::uid_t { 10892add0d91Sopenharmony_ci let kill: siginfo_kill = self.sidata(); 10902add0d91Sopenharmony_ci kill.val.uid 10912add0d91Sopenharmony_ci } 10922add0d91Sopenharmony_ci pub unsafe fn si_value(&self) -> ::sigval { 10932add0d91Sopenharmony_ci let kill: siginfo_kill = self.sidata(); 10942add0d91Sopenharmony_ci kill.val.value 10952add0d91Sopenharmony_ci } 10962add0d91Sopenharmony_ci pub unsafe fn si_pid(&self) -> ::pid_t { 10972add0d91Sopenharmony_ci let sigcld: siginfo_sigcld = self.sidata(); 10982add0d91Sopenharmony_ci sigcld.pid 10992add0d91Sopenharmony_ci } 11002add0d91Sopenharmony_ci pub unsafe fn si_status(&self) -> ::c_int { 11012add0d91Sopenharmony_ci let sigcld: siginfo_sigcld = self.sidata(); 11022add0d91Sopenharmony_ci sigcld.val.status 11032add0d91Sopenharmony_ci } 11042add0d91Sopenharmony_ci pub unsafe fn si_utime(&self) -> ::c_long { 11052add0d91Sopenharmony_ci let sigcld: siginfo_sigcld = self.sidata(); 11062add0d91Sopenharmony_ci sigcld.val.utime 11072add0d91Sopenharmony_ci } 11082add0d91Sopenharmony_ci pub unsafe fn si_stime(&self) -> ::c_long { 11092add0d91Sopenharmony_ci let sigcld: siginfo_sigcld = self.sidata(); 11102add0d91Sopenharmony_ci sigcld.val.stime 11112add0d91Sopenharmony_ci } 11122add0d91Sopenharmony_ci} 11132add0d91Sopenharmony_ci 11142add0d91Sopenharmony_cipub const LC_CTYPE: ::c_int = 0; 11152add0d91Sopenharmony_cipub const LC_NUMERIC: ::c_int = 1; 11162add0d91Sopenharmony_cipub const LC_TIME: ::c_int = 2; 11172add0d91Sopenharmony_cipub const LC_COLLATE: ::c_int = 3; 11182add0d91Sopenharmony_cipub const LC_MONETARY: ::c_int = 4; 11192add0d91Sopenharmony_cipub const LC_MESSAGES: ::c_int = 5; 11202add0d91Sopenharmony_cipub const LC_ALL: ::c_int = 6; 11212add0d91Sopenharmony_cipub const LC_CTYPE_MASK: ::c_int = 1 << LC_CTYPE; 11222add0d91Sopenharmony_cipub const LC_NUMERIC_MASK: ::c_int = 1 << LC_NUMERIC; 11232add0d91Sopenharmony_cipub const LC_TIME_MASK: ::c_int = 1 << LC_TIME; 11242add0d91Sopenharmony_cipub const LC_COLLATE_MASK: ::c_int = 1 << LC_COLLATE; 11252add0d91Sopenharmony_cipub const LC_MONETARY_MASK: ::c_int = 1 << LC_MONETARY; 11262add0d91Sopenharmony_cipub const LC_MESSAGES_MASK: ::c_int = 1 << LC_MESSAGES; 11272add0d91Sopenharmony_cipub const LC_ALL_MASK: ::c_int = LC_CTYPE_MASK 11282add0d91Sopenharmony_ci | LC_NUMERIC_MASK 11292add0d91Sopenharmony_ci | LC_TIME_MASK 11302add0d91Sopenharmony_ci | LC_COLLATE_MASK 11312add0d91Sopenharmony_ci | LC_MONETARY_MASK 11322add0d91Sopenharmony_ci | LC_MESSAGES_MASK; 11332add0d91Sopenharmony_ci 11342add0d91Sopenharmony_cipub const DAY_1: ::nl_item = 1; 11352add0d91Sopenharmony_cipub const DAY_2: ::nl_item = 2; 11362add0d91Sopenharmony_cipub const DAY_3: ::nl_item = 3; 11372add0d91Sopenharmony_cipub const DAY_4: ::nl_item = 4; 11382add0d91Sopenharmony_cipub const DAY_5: ::nl_item = 5; 11392add0d91Sopenharmony_cipub const DAY_6: ::nl_item = 6; 11402add0d91Sopenharmony_cipub const DAY_7: ::nl_item = 7; 11412add0d91Sopenharmony_ci 11422add0d91Sopenharmony_cipub const ABDAY_1: ::nl_item = 8; 11432add0d91Sopenharmony_cipub const ABDAY_2: ::nl_item = 9; 11442add0d91Sopenharmony_cipub const ABDAY_3: ::nl_item = 10; 11452add0d91Sopenharmony_cipub const ABDAY_4: ::nl_item = 11; 11462add0d91Sopenharmony_cipub const ABDAY_5: ::nl_item = 12; 11472add0d91Sopenharmony_cipub const ABDAY_6: ::nl_item = 13; 11482add0d91Sopenharmony_cipub const ABDAY_7: ::nl_item = 14; 11492add0d91Sopenharmony_ci 11502add0d91Sopenharmony_cipub const MON_1: ::nl_item = 15; 11512add0d91Sopenharmony_cipub const MON_2: ::nl_item = 16; 11522add0d91Sopenharmony_cipub const MON_3: ::nl_item = 17; 11532add0d91Sopenharmony_cipub const MON_4: ::nl_item = 18; 11542add0d91Sopenharmony_cipub const MON_5: ::nl_item = 19; 11552add0d91Sopenharmony_cipub const MON_6: ::nl_item = 20; 11562add0d91Sopenharmony_cipub const MON_7: ::nl_item = 21; 11572add0d91Sopenharmony_cipub const MON_8: ::nl_item = 22; 11582add0d91Sopenharmony_cipub const MON_9: ::nl_item = 23; 11592add0d91Sopenharmony_cipub const MON_10: ::nl_item = 24; 11602add0d91Sopenharmony_cipub const MON_11: ::nl_item = 25; 11612add0d91Sopenharmony_cipub const MON_12: ::nl_item = 26; 11622add0d91Sopenharmony_ci 11632add0d91Sopenharmony_cipub const ABMON_1: ::nl_item = 27; 11642add0d91Sopenharmony_cipub const ABMON_2: ::nl_item = 28; 11652add0d91Sopenharmony_cipub const ABMON_3: ::nl_item = 29; 11662add0d91Sopenharmony_cipub const ABMON_4: ::nl_item = 30; 11672add0d91Sopenharmony_cipub const ABMON_5: ::nl_item = 31; 11682add0d91Sopenharmony_cipub const ABMON_6: ::nl_item = 32; 11692add0d91Sopenharmony_cipub const ABMON_7: ::nl_item = 33; 11702add0d91Sopenharmony_cipub const ABMON_8: ::nl_item = 34; 11712add0d91Sopenharmony_cipub const ABMON_9: ::nl_item = 35; 11722add0d91Sopenharmony_cipub const ABMON_10: ::nl_item = 36; 11732add0d91Sopenharmony_cipub const ABMON_11: ::nl_item = 37; 11742add0d91Sopenharmony_cipub const ABMON_12: ::nl_item = 38; 11752add0d91Sopenharmony_ci 11762add0d91Sopenharmony_cipub const RADIXCHAR: ::nl_item = 39; 11772add0d91Sopenharmony_cipub const THOUSEP: ::nl_item = 40; 11782add0d91Sopenharmony_cipub const YESSTR: ::nl_item = 41; 11792add0d91Sopenharmony_cipub const NOSTR: ::nl_item = 42; 11802add0d91Sopenharmony_cipub const CRNCYSTR: ::nl_item = 43; 11812add0d91Sopenharmony_ci 11822add0d91Sopenharmony_cipub const D_T_FMT: ::nl_item = 44; 11832add0d91Sopenharmony_cipub const D_FMT: ::nl_item = 45; 11842add0d91Sopenharmony_cipub const T_FMT: ::nl_item = 46; 11852add0d91Sopenharmony_cipub const AM_STR: ::nl_item = 47; 11862add0d91Sopenharmony_cipub const PM_STR: ::nl_item = 48; 11872add0d91Sopenharmony_ci 11882add0d91Sopenharmony_cipub const CODESET: ::nl_item = 49; 11892add0d91Sopenharmony_cipub const T_FMT_AMPM: ::nl_item = 50; 11902add0d91Sopenharmony_cipub const ERA: ::nl_item = 51; 11912add0d91Sopenharmony_cipub const ERA_D_FMT: ::nl_item = 52; 11922add0d91Sopenharmony_cipub const ERA_D_T_FMT: ::nl_item = 53; 11932add0d91Sopenharmony_cipub const ERA_T_FMT: ::nl_item = 54; 11942add0d91Sopenharmony_cipub const ALT_DIGITS: ::nl_item = 55; 11952add0d91Sopenharmony_cipub const YESEXPR: ::nl_item = 56; 11962add0d91Sopenharmony_cipub const NOEXPR: ::nl_item = 57; 11972add0d91Sopenharmony_cipub const _DATE_FMT: ::nl_item = 58; 11982add0d91Sopenharmony_cipub const MAXSTRMSG: ::nl_item = 58; 11992add0d91Sopenharmony_ci 12002add0d91Sopenharmony_cipub const PATH_MAX: ::c_int = 1024; 12012add0d91Sopenharmony_ci 12022add0d91Sopenharmony_cipub const SA_ONSTACK: ::c_int = 0x00000001; 12032add0d91Sopenharmony_cipub const SA_RESETHAND: ::c_int = 0x00000002; 12042add0d91Sopenharmony_cipub const SA_RESTART: ::c_int = 0x00000004; 12052add0d91Sopenharmony_cipub const SA_SIGINFO: ::c_int = 0x00000008; 12062add0d91Sopenharmony_cipub const SA_NODEFER: ::c_int = 0x00000010; 12072add0d91Sopenharmony_cipub const SA_NOCLDWAIT: ::c_int = 0x00010000; 12082add0d91Sopenharmony_cipub const SA_NOCLDSTOP: ::c_int = 0x00020000; 12092add0d91Sopenharmony_ci 12102add0d91Sopenharmony_cipub const SS_ONSTACK: ::c_int = 1; 12112add0d91Sopenharmony_cipub const SS_DISABLE: ::c_int = 2; 12122add0d91Sopenharmony_ci 12132add0d91Sopenharmony_cipub const FIOCLEX: ::c_int = 0x20006601; 12142add0d91Sopenharmony_cipub const FIONCLEX: ::c_int = 0x20006602; 12152add0d91Sopenharmony_cipub const FIONREAD: ::c_int = 0x4004667f; 12162add0d91Sopenharmony_cipub const FIONBIO: ::c_int = 0x8004667e; 12172add0d91Sopenharmony_cipub const FIOASYNC: ::c_int = 0x8004667d; 12182add0d91Sopenharmony_cipub const FIOSETOWN: ::c_int = 0x8004667c; 12192add0d91Sopenharmony_cipub const FIOGETOWN: ::c_int = 0x4004667b; 12202add0d91Sopenharmony_ci 12212add0d91Sopenharmony_cipub const SIGCHLD: ::c_int = 18; 12222add0d91Sopenharmony_cipub const SIGCLD: ::c_int = ::SIGCHLD; 12232add0d91Sopenharmony_cipub const SIGBUS: ::c_int = 10; 12242add0d91Sopenharmony_cipub const SIGINFO: ::c_int = 41; 12252add0d91Sopenharmony_cipub const SIG_BLOCK: ::c_int = 1; 12262add0d91Sopenharmony_cipub const SIG_UNBLOCK: ::c_int = 2; 12272add0d91Sopenharmony_cipub const SIG_SETMASK: ::c_int = 3; 12282add0d91Sopenharmony_ci 12292add0d91Sopenharmony_cipub const SIGEV_NONE: ::c_int = 1; 12302add0d91Sopenharmony_cipub const SIGEV_SIGNAL: ::c_int = 2; 12312add0d91Sopenharmony_cipub const SIGEV_THREAD: ::c_int = 3; 12322add0d91Sopenharmony_ci 12332add0d91Sopenharmony_cipub const CLD_EXITED: ::c_int = 1; 12342add0d91Sopenharmony_cipub const CLD_KILLED: ::c_int = 2; 12352add0d91Sopenharmony_cipub const CLD_DUMPED: ::c_int = 3; 12362add0d91Sopenharmony_cipub const CLD_TRAPPED: ::c_int = 4; 12372add0d91Sopenharmony_cipub const CLD_STOPPED: ::c_int = 5; 12382add0d91Sopenharmony_cipub const CLD_CONTINUED: ::c_int = 6; 12392add0d91Sopenharmony_ci 12402add0d91Sopenharmony_cipub const IP_RECVDSTADDR: ::c_int = 0x7; 12412add0d91Sopenharmony_cipub const IP_SEC_OPT: ::c_int = 0x22; 12422add0d91Sopenharmony_ci 12432add0d91Sopenharmony_cipub const IPV6_UNICAST_HOPS: ::c_int = 0x5; 12442add0d91Sopenharmony_cipub const IPV6_MULTICAST_IF: ::c_int = 0x6; 12452add0d91Sopenharmony_cipub const IPV6_MULTICAST_HOPS: ::c_int = 0x7; 12462add0d91Sopenharmony_cipub const IPV6_MULTICAST_LOOP: ::c_int = 0x8; 12472add0d91Sopenharmony_cipub const IPV6_RECVPKTINFO: ::c_int = 0x12; 12482add0d91Sopenharmony_cipub const IPV6_SEC_OPT: ::c_int = 0x22; 12492add0d91Sopenharmony_cipub const IPV6_V6ONLY: ::c_int = 0x27; 12502add0d91Sopenharmony_ci 12512add0d91Sopenharmony_cicfg_if! { 12522add0d91Sopenharmony_ci if #[cfg(target_pointer_width = "64")] { 12532add0d91Sopenharmony_ci pub const FD_SETSIZE: usize = 65536; 12542add0d91Sopenharmony_ci } else { 12552add0d91Sopenharmony_ci pub const FD_SETSIZE: usize = 1024; 12562add0d91Sopenharmony_ci } 12572add0d91Sopenharmony_ci} 12582add0d91Sopenharmony_ci 12592add0d91Sopenharmony_cipub const ST_RDONLY: ::c_ulong = 1; 12602add0d91Sopenharmony_cipub const ST_NOSUID: ::c_ulong = 2; 12612add0d91Sopenharmony_ci 12622add0d91Sopenharmony_cipub const NI_MAXHOST: ::socklen_t = 1025; 12632add0d91Sopenharmony_cipub const NI_MAXSERV: ::socklen_t = 32; 12642add0d91Sopenharmony_ci 12652add0d91Sopenharmony_cipub const EXIT_FAILURE: ::c_int = 1; 12662add0d91Sopenharmony_cipub const EXIT_SUCCESS: ::c_int = 0; 12672add0d91Sopenharmony_cipub const RAND_MAX: ::c_int = 32767; 12682add0d91Sopenharmony_cipub const EOF: ::c_int = -1; 12692add0d91Sopenharmony_cipub const SEEK_SET: ::c_int = 0; 12702add0d91Sopenharmony_cipub const SEEK_CUR: ::c_int = 1; 12712add0d91Sopenharmony_cipub const SEEK_END: ::c_int = 2; 12722add0d91Sopenharmony_cipub const SEEK_DATA: ::c_int = 3; 12732add0d91Sopenharmony_cipub const SEEK_HOLE: ::c_int = 4; 12742add0d91Sopenharmony_cipub const _IOFBF: ::c_int = 0; 12752add0d91Sopenharmony_cipub const _IONBF: ::c_int = 4; 12762add0d91Sopenharmony_cipub const _IOLBF: ::c_int = 64; 12772add0d91Sopenharmony_cipub const BUFSIZ: ::c_uint = 1024; 12782add0d91Sopenharmony_cipub const FOPEN_MAX: ::c_uint = 20; 12792add0d91Sopenharmony_cipub const FILENAME_MAX: ::c_uint = 1024; 12802add0d91Sopenharmony_cipub const L_tmpnam: ::c_uint = 25; 12812add0d91Sopenharmony_cipub const TMP_MAX: ::c_uint = 17576; 12822add0d91Sopenharmony_ci 12832add0d91Sopenharmony_cipub const GRND_NONBLOCK: ::c_int = 0x0001; 12842add0d91Sopenharmony_cipub const GRND_RANDOM: ::c_int = 0x0002; 12852add0d91Sopenharmony_ci 12862add0d91Sopenharmony_cipub const O_RDONLY: ::c_int = 0; 12872add0d91Sopenharmony_cipub const O_WRONLY: ::c_int = 1; 12882add0d91Sopenharmony_cipub const O_RDWR: ::c_int = 2; 12892add0d91Sopenharmony_cipub const O_NDELAY: ::c_int = 0x04; 12902add0d91Sopenharmony_cipub const O_APPEND: ::c_int = 8; 12912add0d91Sopenharmony_cipub const O_DSYNC: ::c_int = 0x40; 12922add0d91Sopenharmony_cipub const O_CREAT: ::c_int = 256; 12932add0d91Sopenharmony_cipub const O_EXCL: ::c_int = 1024; 12942add0d91Sopenharmony_cipub const O_NOCTTY: ::c_int = 2048; 12952add0d91Sopenharmony_cipub const O_TRUNC: ::c_int = 512; 12962add0d91Sopenharmony_cipub const O_NOFOLLOW: ::c_int = 0x20000; 12972add0d91Sopenharmony_cipub const O_DIRECTORY: ::c_int = 0x1000000; 12982add0d91Sopenharmony_cipub const O_SEARCH: ::c_int = 0x200000; 12992add0d91Sopenharmony_cipub const O_EXEC: ::c_int = 0x400000; 13002add0d91Sopenharmony_cipub const O_CLOEXEC: ::c_int = 0x800000; 13012add0d91Sopenharmony_cipub const O_ACCMODE: ::c_int = 0x600003; 13022add0d91Sopenharmony_cipub const O_XATTR: ::c_int = 0x4000; 13032add0d91Sopenharmony_cipub const S_IFIFO: mode_t = 4096; 13042add0d91Sopenharmony_cipub const S_IFCHR: mode_t = 8192; 13052add0d91Sopenharmony_cipub const S_IFBLK: mode_t = 24576; 13062add0d91Sopenharmony_cipub const S_IFDIR: mode_t = 16384; 13072add0d91Sopenharmony_cipub const S_IFREG: mode_t = 32768; 13082add0d91Sopenharmony_cipub const S_IFLNK: mode_t = 40960; 13092add0d91Sopenharmony_cipub const S_IFSOCK: mode_t = 49152; 13102add0d91Sopenharmony_cipub const S_IFMT: mode_t = 61440; 13112add0d91Sopenharmony_cipub const S_IEXEC: mode_t = 64; 13122add0d91Sopenharmony_cipub const S_IWRITE: mode_t = 128; 13132add0d91Sopenharmony_cipub const S_IREAD: mode_t = 256; 13142add0d91Sopenharmony_cipub const S_IRWXU: mode_t = 448; 13152add0d91Sopenharmony_cipub const S_IXUSR: mode_t = 64; 13162add0d91Sopenharmony_cipub const S_IWUSR: mode_t = 128; 13172add0d91Sopenharmony_cipub const S_IRUSR: mode_t = 256; 13182add0d91Sopenharmony_cipub const S_IRWXG: mode_t = 56; 13192add0d91Sopenharmony_cipub const S_IXGRP: mode_t = 8; 13202add0d91Sopenharmony_cipub const S_IWGRP: mode_t = 16; 13212add0d91Sopenharmony_cipub const S_IRGRP: mode_t = 32; 13222add0d91Sopenharmony_cipub const S_IRWXO: mode_t = 7; 13232add0d91Sopenharmony_cipub const S_IXOTH: mode_t = 1; 13242add0d91Sopenharmony_cipub const S_IWOTH: mode_t = 2; 13252add0d91Sopenharmony_cipub const S_IROTH: mode_t = 4; 13262add0d91Sopenharmony_cipub const F_OK: ::c_int = 0; 13272add0d91Sopenharmony_cipub const R_OK: ::c_int = 4; 13282add0d91Sopenharmony_cipub const W_OK: ::c_int = 2; 13292add0d91Sopenharmony_cipub const X_OK: ::c_int = 1; 13302add0d91Sopenharmony_cipub const STDIN_FILENO: ::c_int = 0; 13312add0d91Sopenharmony_cipub const STDOUT_FILENO: ::c_int = 1; 13322add0d91Sopenharmony_cipub const STDERR_FILENO: ::c_int = 2; 13332add0d91Sopenharmony_cipub const F_LOCK: ::c_int = 1; 13342add0d91Sopenharmony_cipub const F_TEST: ::c_int = 3; 13352add0d91Sopenharmony_cipub const F_TLOCK: ::c_int = 2; 13362add0d91Sopenharmony_cipub const F_ULOCK: ::c_int = 0; 13372add0d91Sopenharmony_cipub const F_SETLK: ::c_int = 6; 13382add0d91Sopenharmony_cipub const F_SETLKW: ::c_int = 7; 13392add0d91Sopenharmony_cipub const F_GETLK: ::c_int = 14; 13402add0d91Sopenharmony_cipub const F_ALLOCSP: ::c_int = 10; 13412add0d91Sopenharmony_cipub const F_FREESP: ::c_int = 11; 13422add0d91Sopenharmony_cipub const F_BLOCKS: ::c_int = 18; 13432add0d91Sopenharmony_cipub const F_BLKSIZE: ::c_int = 19; 13442add0d91Sopenharmony_cipub const F_SHARE: ::c_int = 40; 13452add0d91Sopenharmony_cipub const F_UNSHARE: ::c_int = 41; 13462add0d91Sopenharmony_cipub const F_ISSTREAM: ::c_int = 13; 13472add0d91Sopenharmony_cipub const F_PRIV: ::c_int = 15; 13482add0d91Sopenharmony_cipub const F_NPRIV: ::c_int = 16; 13492add0d91Sopenharmony_cipub const F_QUOTACTL: ::c_int = 17; 13502add0d91Sopenharmony_cipub const F_GETOWN: ::c_int = 23; 13512add0d91Sopenharmony_cipub const F_SETOWN: ::c_int = 24; 13522add0d91Sopenharmony_cipub const F_REVOKE: ::c_int = 25; 13532add0d91Sopenharmony_cipub const F_HASREMOTELOCKS: ::c_int = 26; 13542add0d91Sopenharmony_cipub const SIGHUP: ::c_int = 1; 13552add0d91Sopenharmony_cipub const SIGINT: ::c_int = 2; 13562add0d91Sopenharmony_cipub const SIGQUIT: ::c_int = 3; 13572add0d91Sopenharmony_cipub const SIGILL: ::c_int = 4; 13582add0d91Sopenharmony_cipub const SIGABRT: ::c_int = 6; 13592add0d91Sopenharmony_cipub const SIGEMT: ::c_int = 7; 13602add0d91Sopenharmony_cipub const SIGFPE: ::c_int = 8; 13612add0d91Sopenharmony_cipub const SIGKILL: ::c_int = 9; 13622add0d91Sopenharmony_cipub const SIGSEGV: ::c_int = 11; 13632add0d91Sopenharmony_cipub const SIGSYS: ::c_int = 12; 13642add0d91Sopenharmony_cipub const SIGPIPE: ::c_int = 13; 13652add0d91Sopenharmony_cipub const SIGALRM: ::c_int = 14; 13662add0d91Sopenharmony_cipub const SIGTERM: ::c_int = 15; 13672add0d91Sopenharmony_cipub const SIGUSR1: ::c_int = 16; 13682add0d91Sopenharmony_cipub const SIGUSR2: ::c_int = 17; 13692add0d91Sopenharmony_cipub const SIGPWR: ::c_int = 19; 13702add0d91Sopenharmony_cipub const SIGWINCH: ::c_int = 20; 13712add0d91Sopenharmony_cipub const SIGURG: ::c_int = 21; 13722add0d91Sopenharmony_cipub const SIGPOLL: ::c_int = 22; 13732add0d91Sopenharmony_cipub const SIGIO: ::c_int = SIGPOLL; 13742add0d91Sopenharmony_cipub const SIGSTOP: ::c_int = 23; 13752add0d91Sopenharmony_cipub const SIGTSTP: ::c_int = 24; 13762add0d91Sopenharmony_cipub const SIGCONT: ::c_int = 25; 13772add0d91Sopenharmony_cipub const SIGTTIN: ::c_int = 26; 13782add0d91Sopenharmony_cipub const SIGTTOU: ::c_int = 27; 13792add0d91Sopenharmony_cipub const SIGVTALRM: ::c_int = 28; 13802add0d91Sopenharmony_cipub const SIGPROF: ::c_int = 29; 13812add0d91Sopenharmony_cipub const SIGXCPU: ::c_int = 30; 13822add0d91Sopenharmony_cipub const SIGXFSZ: ::c_int = 31; 13832add0d91Sopenharmony_ci 13842add0d91Sopenharmony_cipub const WNOHANG: ::c_int = 0x40; 13852add0d91Sopenharmony_cipub const WUNTRACED: ::c_int = 0x04; 13862add0d91Sopenharmony_ci 13872add0d91Sopenharmony_cipub const WEXITED: ::c_int = 0x01; 13882add0d91Sopenharmony_cipub const WTRAPPED: ::c_int = 0x02; 13892add0d91Sopenharmony_cipub const WSTOPPED: ::c_int = WUNTRACED; 13902add0d91Sopenharmony_cipub const WCONTINUED: ::c_int = 0x08; 13912add0d91Sopenharmony_cipub const WNOWAIT: ::c_int = 0x80; 13922add0d91Sopenharmony_ci 13932add0d91Sopenharmony_cipub const AT_FDCWD: ::c_int = 0xffd19553; 13942add0d91Sopenharmony_cipub const AT_SYMLINK_NOFOLLOW: ::c_int = 0x1000; 13952add0d91Sopenharmony_cipub const AT_SYMLINK_FOLLOW: ::c_int = 0x2000; 13962add0d91Sopenharmony_cipub const AT_REMOVEDIR: ::c_int = 0x1; 13972add0d91Sopenharmony_cipub const _AT_TRIGGER: ::c_int = 0x2; 13982add0d91Sopenharmony_cipub const AT_EACCESS: ::c_int = 0x4; 13992add0d91Sopenharmony_ci 14002add0d91Sopenharmony_cipub const P_PID: idtype_t = 0; 14012add0d91Sopenharmony_cipub const P_PPID: idtype_t = 1; 14022add0d91Sopenharmony_cipub const P_PGID: idtype_t = 2; 14032add0d91Sopenharmony_cipub const P_SID: idtype_t = 3; 14042add0d91Sopenharmony_cipub const P_CID: idtype_t = 4; 14052add0d91Sopenharmony_cipub const P_UID: idtype_t = 5; 14062add0d91Sopenharmony_cipub const P_GID: idtype_t = 6; 14072add0d91Sopenharmony_cipub const P_ALL: idtype_t = 7; 14082add0d91Sopenharmony_cipub const P_LWPID: idtype_t = 8; 14092add0d91Sopenharmony_cipub const P_TASKID: idtype_t = 9; 14102add0d91Sopenharmony_cipub const P_PROJID: idtype_t = 10; 14112add0d91Sopenharmony_cipub const P_POOLID: idtype_t = 11; 14122add0d91Sopenharmony_cipub const P_ZONEID: idtype_t = 12; 14132add0d91Sopenharmony_cipub const P_CTID: idtype_t = 13; 14142add0d91Sopenharmony_cipub const P_CPUID: idtype_t = 14; 14152add0d91Sopenharmony_cipub const P_PSETID: idtype_t = 15; 14162add0d91Sopenharmony_ci 14172add0d91Sopenharmony_cipub const PBIND_NONE: ::processorid_t = -1; 14182add0d91Sopenharmony_cipub const PBIND_QUERY: ::processorid_t = -2; 14192add0d91Sopenharmony_cipub const PBIND_HARD: ::processorid_t = -3; 14202add0d91Sopenharmony_cipub const PBIND_SOFT: ::processorid_t = -4; 14212add0d91Sopenharmony_ci 14222add0d91Sopenharmony_cipub const PS_NONE: ::c_int = -1; 14232add0d91Sopenharmony_cipub const PS_QUERY: ::c_int = -2; 14242add0d91Sopenharmony_cipub const PS_MYID: ::c_int = -3; 14252add0d91Sopenharmony_cipub const PS_SOFT: ::c_int = -4; 14262add0d91Sopenharmony_cipub const PS_HARD: ::c_int = -5; 14272add0d91Sopenharmony_cipub const PS_QUERY_TYPE: ::c_int = -6; 14282add0d91Sopenharmony_cipub const PS_SYSTEM: ::c_int = 1; 14292add0d91Sopenharmony_cipub const PS_PRIVATE: ::c_int = 2; 14302add0d91Sopenharmony_ci 14312add0d91Sopenharmony_cipub const UTIME_OMIT: c_long = -2; 14322add0d91Sopenharmony_cipub const UTIME_NOW: c_long = -1; 14332add0d91Sopenharmony_ci 14342add0d91Sopenharmony_cipub const PROT_NONE: ::c_int = 0; 14352add0d91Sopenharmony_cipub const PROT_READ: ::c_int = 1; 14362add0d91Sopenharmony_cipub const PROT_WRITE: ::c_int = 2; 14372add0d91Sopenharmony_cipub const PROT_EXEC: ::c_int = 4; 14382add0d91Sopenharmony_ci 14392add0d91Sopenharmony_cipub const MAP_FILE: ::c_int = 0; 14402add0d91Sopenharmony_cipub const MAP_SHARED: ::c_int = 0x0001; 14412add0d91Sopenharmony_cipub const MAP_PRIVATE: ::c_int = 0x0002; 14422add0d91Sopenharmony_cipub const MAP_FIXED: ::c_int = 0x0010; 14432add0d91Sopenharmony_cipub const MAP_NORESERVE: ::c_int = 0x40; 14442add0d91Sopenharmony_cipub const MAP_ANON: ::c_int = 0x0100; 14452add0d91Sopenharmony_cipub const MAP_ANONYMOUS: ::c_int = 0x0100; 14462add0d91Sopenharmony_cipub const MAP_RENAME: ::c_int = 0x20; 14472add0d91Sopenharmony_cipub const MAP_ALIGN: ::c_int = 0x200; 14482add0d91Sopenharmony_cipub const MAP_TEXT: ::c_int = 0x400; 14492add0d91Sopenharmony_cipub const MAP_INITDATA: ::c_int = 0x800; 14502add0d91Sopenharmony_cipub const MAP_32BIT: ::c_int = 0x80; 14512add0d91Sopenharmony_cipub const MAP_FAILED: *mut ::c_void = !0 as *mut ::c_void; 14522add0d91Sopenharmony_ci 14532add0d91Sopenharmony_cipub const MCL_CURRENT: ::c_int = 0x0001; 14542add0d91Sopenharmony_cipub const MCL_FUTURE: ::c_int = 0x0002; 14552add0d91Sopenharmony_ci 14562add0d91Sopenharmony_cipub const MS_SYNC: ::c_int = 0x0004; 14572add0d91Sopenharmony_cipub const MS_ASYNC: ::c_int = 0x0001; 14582add0d91Sopenharmony_cipub const MS_INVALIDATE: ::c_int = 0x0002; 14592add0d91Sopenharmony_ci 14602add0d91Sopenharmony_cipub const MMOBJ_PADDING: ::c_uint = 0x10000; 14612add0d91Sopenharmony_cipub const MMOBJ_INTERPRET: ::c_uint = 0x20000; 14622add0d91Sopenharmony_cipub const MR_PADDING: ::c_uint = 0x1; 14632add0d91Sopenharmony_cipub const MR_HDR_ELF: ::c_uint = 0x2; 14642add0d91Sopenharmony_ci 14652add0d91Sopenharmony_cipub const EPERM: ::c_int = 1; 14662add0d91Sopenharmony_cipub const ENOENT: ::c_int = 2; 14672add0d91Sopenharmony_cipub const ESRCH: ::c_int = 3; 14682add0d91Sopenharmony_cipub const EINTR: ::c_int = 4; 14692add0d91Sopenharmony_cipub const EIO: ::c_int = 5; 14702add0d91Sopenharmony_cipub const ENXIO: ::c_int = 6; 14712add0d91Sopenharmony_cipub const E2BIG: ::c_int = 7; 14722add0d91Sopenharmony_cipub const ENOEXEC: ::c_int = 8; 14732add0d91Sopenharmony_cipub const EBADF: ::c_int = 9; 14742add0d91Sopenharmony_cipub const ECHILD: ::c_int = 10; 14752add0d91Sopenharmony_cipub const EAGAIN: ::c_int = 11; 14762add0d91Sopenharmony_cipub const ENOMEM: ::c_int = 12; 14772add0d91Sopenharmony_cipub const EACCES: ::c_int = 13; 14782add0d91Sopenharmony_cipub const EFAULT: ::c_int = 14; 14792add0d91Sopenharmony_cipub const ENOTBLK: ::c_int = 15; 14802add0d91Sopenharmony_cipub const EBUSY: ::c_int = 16; 14812add0d91Sopenharmony_cipub const EEXIST: ::c_int = 17; 14822add0d91Sopenharmony_cipub const EXDEV: ::c_int = 18; 14832add0d91Sopenharmony_cipub const ENODEV: ::c_int = 19; 14842add0d91Sopenharmony_cipub const ENOTDIR: ::c_int = 20; 14852add0d91Sopenharmony_cipub const EISDIR: ::c_int = 21; 14862add0d91Sopenharmony_cipub const EINVAL: ::c_int = 22; 14872add0d91Sopenharmony_cipub const ENFILE: ::c_int = 23; 14882add0d91Sopenharmony_cipub const EMFILE: ::c_int = 24; 14892add0d91Sopenharmony_cipub const ENOTTY: ::c_int = 25; 14902add0d91Sopenharmony_cipub const ETXTBSY: ::c_int = 26; 14912add0d91Sopenharmony_cipub const EFBIG: ::c_int = 27; 14922add0d91Sopenharmony_cipub const ENOSPC: ::c_int = 28; 14932add0d91Sopenharmony_cipub const ESPIPE: ::c_int = 29; 14942add0d91Sopenharmony_cipub const EROFS: ::c_int = 30; 14952add0d91Sopenharmony_cipub const EMLINK: ::c_int = 31; 14962add0d91Sopenharmony_cipub const EPIPE: ::c_int = 32; 14972add0d91Sopenharmony_cipub const EDOM: ::c_int = 33; 14982add0d91Sopenharmony_cipub const ERANGE: ::c_int = 34; 14992add0d91Sopenharmony_cipub const ENOMSG: ::c_int = 35; 15002add0d91Sopenharmony_cipub const EIDRM: ::c_int = 36; 15012add0d91Sopenharmony_cipub const ECHRNG: ::c_int = 37; 15022add0d91Sopenharmony_cipub const EL2NSYNC: ::c_int = 38; 15032add0d91Sopenharmony_cipub const EL3HLT: ::c_int = 39; 15042add0d91Sopenharmony_cipub const EL3RST: ::c_int = 40; 15052add0d91Sopenharmony_cipub const ELNRNG: ::c_int = 41; 15062add0d91Sopenharmony_cipub const EUNATCH: ::c_int = 42; 15072add0d91Sopenharmony_cipub const ENOCSI: ::c_int = 43; 15082add0d91Sopenharmony_cipub const EL2HLT: ::c_int = 44; 15092add0d91Sopenharmony_cipub const EDEADLK: ::c_int = 45; 15102add0d91Sopenharmony_cipub const ENOLCK: ::c_int = 46; 15112add0d91Sopenharmony_cipub const ECANCELED: ::c_int = 47; 15122add0d91Sopenharmony_cipub const ENOTSUP: ::c_int = 48; 15132add0d91Sopenharmony_cipub const EDQUOT: ::c_int = 49; 15142add0d91Sopenharmony_cipub const EBADE: ::c_int = 50; 15152add0d91Sopenharmony_cipub const EBADR: ::c_int = 51; 15162add0d91Sopenharmony_cipub const EXFULL: ::c_int = 52; 15172add0d91Sopenharmony_cipub const ENOANO: ::c_int = 53; 15182add0d91Sopenharmony_cipub const EBADRQC: ::c_int = 54; 15192add0d91Sopenharmony_cipub const EBADSLT: ::c_int = 55; 15202add0d91Sopenharmony_cipub const EDEADLOCK: ::c_int = 56; 15212add0d91Sopenharmony_cipub const EBFONT: ::c_int = 57; 15222add0d91Sopenharmony_cipub const EOWNERDEAD: ::c_int = 58; 15232add0d91Sopenharmony_cipub const ENOTRECOVERABLE: ::c_int = 59; 15242add0d91Sopenharmony_cipub const ENOSTR: ::c_int = 60; 15252add0d91Sopenharmony_cipub const ENODATA: ::c_int = 61; 15262add0d91Sopenharmony_cipub const ETIME: ::c_int = 62; 15272add0d91Sopenharmony_cipub const ENOSR: ::c_int = 63; 15282add0d91Sopenharmony_cipub const ENONET: ::c_int = 64; 15292add0d91Sopenharmony_cipub const ENOPKG: ::c_int = 65; 15302add0d91Sopenharmony_cipub const EREMOTE: ::c_int = 66; 15312add0d91Sopenharmony_cipub const ENOLINK: ::c_int = 67; 15322add0d91Sopenharmony_cipub const EADV: ::c_int = 68; 15332add0d91Sopenharmony_cipub const ESRMNT: ::c_int = 69; 15342add0d91Sopenharmony_cipub const ECOMM: ::c_int = 70; 15352add0d91Sopenharmony_cipub const EPROTO: ::c_int = 71; 15362add0d91Sopenharmony_cipub const ELOCKUNMAPPED: ::c_int = 72; 15372add0d91Sopenharmony_cipub const ENOTACTIVE: ::c_int = 73; 15382add0d91Sopenharmony_cipub const EMULTIHOP: ::c_int = 74; 15392add0d91Sopenharmony_cipub const EADI: ::c_int = 75; 15402add0d91Sopenharmony_cipub const EBADMSG: ::c_int = 77; 15412add0d91Sopenharmony_cipub const ENAMETOOLONG: ::c_int = 78; 15422add0d91Sopenharmony_cipub const EOVERFLOW: ::c_int = 79; 15432add0d91Sopenharmony_cipub const ENOTUNIQ: ::c_int = 80; 15442add0d91Sopenharmony_cipub const EBADFD: ::c_int = 81; 15452add0d91Sopenharmony_cipub const EREMCHG: ::c_int = 82; 15462add0d91Sopenharmony_cipub const ELIBACC: ::c_int = 83; 15472add0d91Sopenharmony_cipub const ELIBBAD: ::c_int = 84; 15482add0d91Sopenharmony_cipub const ELIBSCN: ::c_int = 85; 15492add0d91Sopenharmony_cipub const ELIBMAX: ::c_int = 86; 15502add0d91Sopenharmony_cipub const ELIBEXEC: ::c_int = 87; 15512add0d91Sopenharmony_cipub const EILSEQ: ::c_int = 88; 15522add0d91Sopenharmony_cipub const ENOSYS: ::c_int = 89; 15532add0d91Sopenharmony_cipub const ELOOP: ::c_int = 90; 15542add0d91Sopenharmony_cipub const ERESTART: ::c_int = 91; 15552add0d91Sopenharmony_cipub const ESTRPIPE: ::c_int = 92; 15562add0d91Sopenharmony_cipub const ENOTEMPTY: ::c_int = 93; 15572add0d91Sopenharmony_cipub const EUSERS: ::c_int = 94; 15582add0d91Sopenharmony_cipub const ENOTSOCK: ::c_int = 95; 15592add0d91Sopenharmony_cipub const EDESTADDRREQ: ::c_int = 96; 15602add0d91Sopenharmony_cipub const EMSGSIZE: ::c_int = 97; 15612add0d91Sopenharmony_cipub const EPROTOTYPE: ::c_int = 98; 15622add0d91Sopenharmony_cipub const ENOPROTOOPT: ::c_int = 99; 15632add0d91Sopenharmony_cipub const EPROTONOSUPPORT: ::c_int = 120; 15642add0d91Sopenharmony_cipub const ESOCKTNOSUPPORT: ::c_int = 121; 15652add0d91Sopenharmony_cipub const EOPNOTSUPP: ::c_int = 122; 15662add0d91Sopenharmony_cipub const EPFNOSUPPORT: ::c_int = 123; 15672add0d91Sopenharmony_cipub const EAFNOSUPPORT: ::c_int = 124; 15682add0d91Sopenharmony_cipub const EADDRINUSE: ::c_int = 125; 15692add0d91Sopenharmony_cipub const EADDRNOTAVAIL: ::c_int = 126; 15702add0d91Sopenharmony_cipub const ENETDOWN: ::c_int = 127; 15712add0d91Sopenharmony_cipub const ENETUNREACH: ::c_int = 128; 15722add0d91Sopenharmony_cipub const ENETRESET: ::c_int = 129; 15732add0d91Sopenharmony_cipub const ECONNABORTED: ::c_int = 130; 15742add0d91Sopenharmony_cipub const ECONNRESET: ::c_int = 131; 15752add0d91Sopenharmony_cipub const ENOBUFS: ::c_int = 132; 15762add0d91Sopenharmony_cipub const EISCONN: ::c_int = 133; 15772add0d91Sopenharmony_cipub const ENOTCONN: ::c_int = 134; 15782add0d91Sopenharmony_cipub const ESHUTDOWN: ::c_int = 143; 15792add0d91Sopenharmony_cipub const ETOOMANYREFS: ::c_int = 144; 15802add0d91Sopenharmony_cipub const ETIMEDOUT: ::c_int = 145; 15812add0d91Sopenharmony_cipub const ECONNREFUSED: ::c_int = 146; 15822add0d91Sopenharmony_cipub const EHOSTDOWN: ::c_int = 147; 15832add0d91Sopenharmony_cipub const EHOSTUNREACH: ::c_int = 148; 15842add0d91Sopenharmony_cipub const EWOULDBLOCK: ::c_int = EAGAIN; 15852add0d91Sopenharmony_cipub const EALREADY: ::c_int = 149; 15862add0d91Sopenharmony_cipub const EINPROGRESS: ::c_int = 150; 15872add0d91Sopenharmony_cipub const ESTALE: ::c_int = 151; 15882add0d91Sopenharmony_ci 15892add0d91Sopenharmony_cipub const EAI_AGAIN: ::c_int = 2; 15902add0d91Sopenharmony_cipub const EAI_BADFLAGS: ::c_int = 3; 15912add0d91Sopenharmony_cipub const EAI_FAIL: ::c_int = 4; 15922add0d91Sopenharmony_cipub const EAI_FAMILY: ::c_int = 5; 15932add0d91Sopenharmony_cipub const EAI_MEMORY: ::c_int = 6; 15942add0d91Sopenharmony_cipub const EAI_NODATA: ::c_int = 7; 15952add0d91Sopenharmony_cipub const EAI_NONAME: ::c_int = 8; 15962add0d91Sopenharmony_cipub const EAI_SERVICE: ::c_int = 9; 15972add0d91Sopenharmony_cipub const EAI_SOCKTYPE: ::c_int = 10; 15982add0d91Sopenharmony_cipub const EAI_SYSTEM: ::c_int = 11; 15992add0d91Sopenharmony_cipub const EAI_OVERFLOW: ::c_int = 12; 16002add0d91Sopenharmony_ci 16012add0d91Sopenharmony_cipub const NI_NOFQDN: ::c_uint = 0x0001; 16022add0d91Sopenharmony_cipub const NI_NUMERICHOST: ::c_uint = 0x0002; 16032add0d91Sopenharmony_cipub const NI_NAMEREQD: ::c_uint = 0x0004; 16042add0d91Sopenharmony_cipub const NI_NUMERICSERV: ::c_uint = 0x0008; 16052add0d91Sopenharmony_cipub const NI_DGRAM: ::c_uint = 0x0010; 16062add0d91Sopenharmony_cipub const NI_WITHSCOPEID: ::c_uint = 0x0020; 16072add0d91Sopenharmony_cipub const NI_NUMERICSCOPE: ::c_uint = 0x0040; 16082add0d91Sopenharmony_ci 16092add0d91Sopenharmony_cipub const F_DUPFD: ::c_int = 0; 16102add0d91Sopenharmony_cipub const F_DUP2FD: ::c_int = 9; 16112add0d91Sopenharmony_cipub const F_GETFD: ::c_int = 1; 16122add0d91Sopenharmony_cipub const F_SETFD: ::c_int = 2; 16132add0d91Sopenharmony_cipub const F_GETFL: ::c_int = 3; 16142add0d91Sopenharmony_cipub const F_SETFL: ::c_int = 4; 16152add0d91Sopenharmony_cipub const F_GETXFL: ::c_int = 45; 16162add0d91Sopenharmony_ci 16172add0d91Sopenharmony_cipub const SIGTRAP: ::c_int = 5; 16182add0d91Sopenharmony_ci 16192add0d91Sopenharmony_cipub const GLOB_APPEND: ::c_int = 32; 16202add0d91Sopenharmony_cipub const GLOB_DOOFFS: ::c_int = 16; 16212add0d91Sopenharmony_cipub const GLOB_ERR: ::c_int = 1; 16222add0d91Sopenharmony_cipub const GLOB_MARK: ::c_int = 2; 16232add0d91Sopenharmony_cipub const GLOB_NOCHECK: ::c_int = 8; 16242add0d91Sopenharmony_cipub const GLOB_NOSORT: ::c_int = 4; 16252add0d91Sopenharmony_cipub const GLOB_NOESCAPE: ::c_int = 64; 16262add0d91Sopenharmony_ci 16272add0d91Sopenharmony_cipub const GLOB_NOSPACE: ::c_int = -2; 16282add0d91Sopenharmony_cipub const GLOB_ABORTED: ::c_int = -1; 16292add0d91Sopenharmony_cipub const GLOB_NOMATCH: ::c_int = -3; 16302add0d91Sopenharmony_ci 16312add0d91Sopenharmony_cipub const POLLIN: ::c_short = 0x1; 16322add0d91Sopenharmony_cipub const POLLPRI: ::c_short = 0x2; 16332add0d91Sopenharmony_cipub const POLLOUT: ::c_short = 0x4; 16342add0d91Sopenharmony_cipub const POLLERR: ::c_short = 0x8; 16352add0d91Sopenharmony_cipub const POLLHUP: ::c_short = 0x10; 16362add0d91Sopenharmony_cipub const POLLNVAL: ::c_short = 0x20; 16372add0d91Sopenharmony_cipub const POLLNORM: ::c_short = 0x0040; 16382add0d91Sopenharmony_cipub const POLLRDNORM: ::c_short = 0x0040; 16392add0d91Sopenharmony_cipub const POLLWRNORM: ::c_short = 0x4; /* POLLOUT */ 16402add0d91Sopenharmony_cipub const POLLRDBAND: ::c_short = 0x0080; 16412add0d91Sopenharmony_cipub const POLLWRBAND: ::c_short = 0x0100; 16422add0d91Sopenharmony_ci 16432add0d91Sopenharmony_cipub const POSIX_MADV_NORMAL: ::c_int = 0; 16442add0d91Sopenharmony_cipub const POSIX_MADV_RANDOM: ::c_int = 1; 16452add0d91Sopenharmony_cipub const POSIX_MADV_SEQUENTIAL: ::c_int = 2; 16462add0d91Sopenharmony_cipub const POSIX_MADV_WILLNEED: ::c_int = 3; 16472add0d91Sopenharmony_cipub const POSIX_MADV_DONTNEED: ::c_int = 4; 16482add0d91Sopenharmony_ci 16492add0d91Sopenharmony_cipub const PTHREAD_CREATE_JOINABLE: ::c_int = 0; 16502add0d91Sopenharmony_cipub const PTHREAD_CREATE_DETACHED: ::c_int = 0x40; 16512add0d91Sopenharmony_cipub const PTHREAD_PROCESS_SHARED: ::c_int = 1; 16522add0d91Sopenharmony_cipub const PTHREAD_PROCESS_PRIVATE: ::c_ushort = 0; 16532add0d91Sopenharmony_cipub const PTHREAD_STACK_MIN: ::size_t = 4096; 16542add0d91Sopenharmony_ci 16552add0d91Sopenharmony_cipub const SIGSTKSZ: ::size_t = 8192; 16562add0d91Sopenharmony_ci 16572add0d91Sopenharmony_ci// https://illumos.org/man/3c/clock_gettime 16582add0d91Sopenharmony_ci// https://github.com/illumos/illumos-gate/ 16592add0d91Sopenharmony_ci// blob/HEAD/usr/src/lib/libc/amd64/sys/__clock_gettime.s 16602add0d91Sopenharmony_ci// clock_gettime(3c) doesn't seem to accept anything other than CLOCK_REALTIME 16612add0d91Sopenharmony_ci// or __CLOCK_REALTIME0 16622add0d91Sopenharmony_ci// 16632add0d91Sopenharmony_ci// https://github.com/illumos/illumos-gate/ 16642add0d91Sopenharmony_ci// blob/HEAD/usr/src/uts/common/sys/time_impl.h 16652add0d91Sopenharmony_ci// Confusing! CLOCK_HIGHRES==CLOCK_MONOTONIC==4 16662add0d91Sopenharmony_ci// __CLOCK_REALTIME0==0 is an obsoleted version of CLOCK_REALTIME==3 16672add0d91Sopenharmony_cipub const CLOCK_REALTIME: ::clockid_t = 3; 16682add0d91Sopenharmony_cipub const CLOCK_MONOTONIC: ::clockid_t = 4; 16692add0d91Sopenharmony_cipub const TIMER_RELTIME: ::c_int = 0; 16702add0d91Sopenharmony_cipub const TIMER_ABSTIME: ::c_int = 1; 16712add0d91Sopenharmony_ci 16722add0d91Sopenharmony_cipub const RLIMIT_CPU: ::c_int = 0; 16732add0d91Sopenharmony_cipub const RLIMIT_FSIZE: ::c_int = 1; 16742add0d91Sopenharmony_cipub const RLIMIT_DATA: ::c_int = 2; 16752add0d91Sopenharmony_cipub const RLIMIT_STACK: ::c_int = 3; 16762add0d91Sopenharmony_cipub const RLIMIT_CORE: ::c_int = 4; 16772add0d91Sopenharmony_cipub const RLIMIT_NOFILE: ::c_int = 5; 16782add0d91Sopenharmony_cipub const RLIMIT_VMEM: ::c_int = 6; 16792add0d91Sopenharmony_cipub const RLIMIT_AS: ::c_int = RLIMIT_VMEM; 16802add0d91Sopenharmony_ci 16812add0d91Sopenharmony_ci#[deprecated(since = "0.2.64", note = "Not stable across OS versions")] 16822add0d91Sopenharmony_cipub const RLIM_NLIMITS: rlim_t = 7; 16832add0d91Sopenharmony_cipub const RLIM_INFINITY: rlim_t = 0xfffffffffffffffd; 16842add0d91Sopenharmony_ci 16852add0d91Sopenharmony_cipub const RUSAGE_SELF: ::c_int = 0; 16862add0d91Sopenharmony_cipub const RUSAGE_CHILDREN: ::c_int = -1; 16872add0d91Sopenharmony_ci 16882add0d91Sopenharmony_cipub const MADV_NORMAL: ::c_int = 0; 16892add0d91Sopenharmony_cipub const MADV_RANDOM: ::c_int = 1; 16902add0d91Sopenharmony_cipub const MADV_SEQUENTIAL: ::c_int = 2; 16912add0d91Sopenharmony_cipub const MADV_WILLNEED: ::c_int = 3; 16922add0d91Sopenharmony_cipub const MADV_DONTNEED: ::c_int = 4; 16932add0d91Sopenharmony_cipub const MADV_FREE: ::c_int = 5; 16942add0d91Sopenharmony_cipub const MADV_ACCESS_DEFAULT: ::c_int = 6; 16952add0d91Sopenharmony_cipub const MADV_ACCESS_LWP: ::c_int = 7; 16962add0d91Sopenharmony_cipub const MADV_ACCESS_MANY: ::c_int = 8; 16972add0d91Sopenharmony_ci 16982add0d91Sopenharmony_cipub const AF_UNSPEC: ::c_int = 0; 16992add0d91Sopenharmony_cipub const AF_UNIX: ::c_int = 1; 17002add0d91Sopenharmony_cipub const AF_INET: ::c_int = 2; 17012add0d91Sopenharmony_cipub const AF_IMPLINK: ::c_int = 3; 17022add0d91Sopenharmony_cipub const AF_PUP: ::c_int = 4; 17032add0d91Sopenharmony_cipub const AF_CHAOS: ::c_int = 5; 17042add0d91Sopenharmony_cipub const AF_NS: ::c_int = 6; 17052add0d91Sopenharmony_cipub const AF_NBS: ::c_int = 7; 17062add0d91Sopenharmony_cipub const AF_ECMA: ::c_int = 8; 17072add0d91Sopenharmony_cipub const AF_DATAKIT: ::c_int = 9; 17082add0d91Sopenharmony_cipub const AF_CCITT: ::c_int = 10; 17092add0d91Sopenharmony_cipub const AF_SNA: ::c_int = 11; 17102add0d91Sopenharmony_cipub const AF_DECnet: ::c_int = 12; 17112add0d91Sopenharmony_cipub const AF_DLI: ::c_int = 13; 17122add0d91Sopenharmony_cipub const AF_LAT: ::c_int = 14; 17132add0d91Sopenharmony_cipub const AF_HYLINK: ::c_int = 15; 17142add0d91Sopenharmony_cipub const AF_APPLETALK: ::c_int = 16; 17152add0d91Sopenharmony_cipub const AF_NIT: ::c_int = 17; 17162add0d91Sopenharmony_cipub const AF_802: ::c_int = 18; 17172add0d91Sopenharmony_cipub const AF_OSI: ::c_int = 19; 17182add0d91Sopenharmony_cipub const AF_X25: ::c_int = 20; 17192add0d91Sopenharmony_cipub const AF_OSINET: ::c_int = 21; 17202add0d91Sopenharmony_cipub const AF_GOSIP: ::c_int = 22; 17212add0d91Sopenharmony_cipub const AF_IPX: ::c_int = 23; 17222add0d91Sopenharmony_cipub const AF_ROUTE: ::c_int = 24; 17232add0d91Sopenharmony_cipub const AF_LINK: ::c_int = 25; 17242add0d91Sopenharmony_cipub const AF_INET6: ::c_int = 26; 17252add0d91Sopenharmony_cipub const AF_KEY: ::c_int = 27; 17262add0d91Sopenharmony_cipub const AF_NCA: ::c_int = 28; 17272add0d91Sopenharmony_cipub const AF_POLICY: ::c_int = 29; 17282add0d91Sopenharmony_cipub const AF_INET_OFFLOAD: ::c_int = 30; 17292add0d91Sopenharmony_cipub const AF_TRILL: ::c_int = 31; 17302add0d91Sopenharmony_cipub const AF_PACKET: ::c_int = 32; 17312add0d91Sopenharmony_ci 17322add0d91Sopenharmony_cipub const PF_UNSPEC: ::c_int = AF_UNSPEC; 17332add0d91Sopenharmony_cipub const PF_UNIX: ::c_int = AF_UNIX; 17342add0d91Sopenharmony_cipub const PF_LOCAL: ::c_int = PF_UNIX; 17352add0d91Sopenharmony_cipub const PF_FILE: ::c_int = PF_UNIX; 17362add0d91Sopenharmony_cipub const PF_INET: ::c_int = AF_INET; 17372add0d91Sopenharmony_cipub const PF_IMPLINK: ::c_int = AF_IMPLINK; 17382add0d91Sopenharmony_cipub const PF_PUP: ::c_int = AF_PUP; 17392add0d91Sopenharmony_cipub const PF_CHAOS: ::c_int = AF_CHAOS; 17402add0d91Sopenharmony_cipub const PF_NS: ::c_int = AF_NS; 17412add0d91Sopenharmony_cipub const PF_NBS: ::c_int = AF_NBS; 17422add0d91Sopenharmony_cipub const PF_ECMA: ::c_int = AF_ECMA; 17432add0d91Sopenharmony_cipub const PF_DATAKIT: ::c_int = AF_DATAKIT; 17442add0d91Sopenharmony_cipub const PF_CCITT: ::c_int = AF_CCITT; 17452add0d91Sopenharmony_cipub const PF_SNA: ::c_int = AF_SNA; 17462add0d91Sopenharmony_cipub const PF_DECnet: ::c_int = AF_DECnet; 17472add0d91Sopenharmony_cipub const PF_DLI: ::c_int = AF_DLI; 17482add0d91Sopenharmony_cipub const PF_LAT: ::c_int = AF_LAT; 17492add0d91Sopenharmony_cipub const PF_HYLINK: ::c_int = AF_HYLINK; 17502add0d91Sopenharmony_cipub const PF_APPLETALK: ::c_int = AF_APPLETALK; 17512add0d91Sopenharmony_cipub const PF_NIT: ::c_int = AF_NIT; 17522add0d91Sopenharmony_cipub const PF_802: ::c_int = AF_802; 17532add0d91Sopenharmony_cipub const PF_OSI: ::c_int = AF_OSI; 17542add0d91Sopenharmony_cipub const PF_X25: ::c_int = AF_X25; 17552add0d91Sopenharmony_cipub const PF_OSINET: ::c_int = AF_OSINET; 17562add0d91Sopenharmony_cipub const PF_GOSIP: ::c_int = AF_GOSIP; 17572add0d91Sopenharmony_cipub const PF_IPX: ::c_int = AF_IPX; 17582add0d91Sopenharmony_cipub const PF_ROUTE: ::c_int = AF_ROUTE; 17592add0d91Sopenharmony_cipub const PF_LINK: ::c_int = AF_LINK; 17602add0d91Sopenharmony_cipub const PF_INET6: ::c_int = AF_INET6; 17612add0d91Sopenharmony_cipub const PF_KEY: ::c_int = AF_KEY; 17622add0d91Sopenharmony_cipub const PF_NCA: ::c_int = AF_NCA; 17632add0d91Sopenharmony_cipub const PF_POLICY: ::c_int = AF_POLICY; 17642add0d91Sopenharmony_cipub const PF_INET_OFFLOAD: ::c_int = AF_INET_OFFLOAD; 17652add0d91Sopenharmony_cipub const PF_TRILL: ::c_int = AF_TRILL; 17662add0d91Sopenharmony_cipub const PF_PACKET: ::c_int = AF_PACKET; 17672add0d91Sopenharmony_ci 17682add0d91Sopenharmony_cipub const SOCK_DGRAM: ::c_int = 1; 17692add0d91Sopenharmony_cipub const SOCK_STREAM: ::c_int = 2; 17702add0d91Sopenharmony_cipub const SOCK_RAW: ::c_int = 4; 17712add0d91Sopenharmony_cipub const SOCK_RDM: ::c_int = 5; 17722add0d91Sopenharmony_cipub const SOCK_SEQPACKET: ::c_int = 6; 17732add0d91Sopenharmony_cipub const IP_MULTICAST_IF: ::c_int = 16; 17742add0d91Sopenharmony_cipub const IP_MULTICAST_TTL: ::c_int = 17; 17752add0d91Sopenharmony_cipub const IP_MULTICAST_LOOP: ::c_int = 18; 17762add0d91Sopenharmony_cipub const IP_TTL: ::c_int = 4; 17772add0d91Sopenharmony_cipub const IP_HDRINCL: ::c_int = 2; 17782add0d91Sopenharmony_cipub const IP_ADD_MEMBERSHIP: ::c_int = 19; 17792add0d91Sopenharmony_cipub const IP_DROP_MEMBERSHIP: ::c_int = 20; 17802add0d91Sopenharmony_cipub const IPV6_JOIN_GROUP: ::c_int = 9; 17812add0d91Sopenharmony_cipub const IPV6_LEAVE_GROUP: ::c_int = 10; 17822add0d91Sopenharmony_cipub const IP_ADD_SOURCE_MEMBERSHIP: ::c_int = 23; 17832add0d91Sopenharmony_cipub const IP_DROP_SOURCE_MEMBERSHIP: ::c_int = 24; 17842add0d91Sopenharmony_cipub const IP_BLOCK_SOURCE: ::c_int = 21; 17852add0d91Sopenharmony_cipub const IP_UNBLOCK_SOURCE: ::c_int = 22; 17862add0d91Sopenharmony_ci 17872add0d91Sopenharmony_ci// These TCP socket options are common between illumos and Solaris, while higher 17882add0d91Sopenharmony_ci// numbers have generally diverged: 17892add0d91Sopenharmony_cipub const TCP_NODELAY: ::c_int = 0x1; 17902add0d91Sopenharmony_cipub const TCP_MAXSEG: ::c_int = 0x2; 17912add0d91Sopenharmony_cipub const TCP_KEEPALIVE: ::c_int = 0x8; 17922add0d91Sopenharmony_cipub const TCP_NOTIFY_THRESHOLD: ::c_int = 0x10; 17932add0d91Sopenharmony_cipub const TCP_ABORT_THRESHOLD: ::c_int = 0x11; 17942add0d91Sopenharmony_cipub const TCP_CONN_NOTIFY_THRESHOLD: ::c_int = 0x12; 17952add0d91Sopenharmony_cipub const TCP_CONN_ABORT_THRESHOLD: ::c_int = 0x13; 17962add0d91Sopenharmony_cipub const TCP_RECVDSTADDR: ::c_int = 0x14; 17972add0d91Sopenharmony_cipub const TCP_INIT_CWND: ::c_int = 0x15; 17982add0d91Sopenharmony_cipub const TCP_KEEPALIVE_THRESHOLD: ::c_int = 0x16; 17992add0d91Sopenharmony_cipub const TCP_KEEPALIVE_ABORT_THRESHOLD: ::c_int = 0x17; 18002add0d91Sopenharmony_cipub const TCP_CORK: ::c_int = 0x18; 18012add0d91Sopenharmony_cipub const TCP_RTO_INITIAL: ::c_int = 0x19; 18022add0d91Sopenharmony_cipub const TCP_RTO_MIN: ::c_int = 0x1a; 18032add0d91Sopenharmony_cipub const TCP_RTO_MAX: ::c_int = 0x1b; 18042add0d91Sopenharmony_cipub const TCP_LINGER2: ::c_int = 0x1c; 18052add0d91Sopenharmony_ci 18062add0d91Sopenharmony_cipub const UDP_NAT_T_ENDPOINT: ::c_int = 0x0103; 18072add0d91Sopenharmony_ci 18082add0d91Sopenharmony_cipub const SOMAXCONN: ::c_int = 128; 18092add0d91Sopenharmony_ci 18102add0d91Sopenharmony_cipub const SOL_SOCKET: ::c_int = 0xffff; 18112add0d91Sopenharmony_cipub const SO_DEBUG: ::c_int = 0x01; 18122add0d91Sopenharmony_cipub const SO_ACCEPTCONN: ::c_int = 0x0002; 18132add0d91Sopenharmony_cipub const SO_REUSEADDR: ::c_int = 0x0004; 18142add0d91Sopenharmony_cipub const SO_KEEPALIVE: ::c_int = 0x0008; 18152add0d91Sopenharmony_cipub const SO_DONTROUTE: ::c_int = 0x0010; 18162add0d91Sopenharmony_cipub const SO_BROADCAST: ::c_int = 0x0020; 18172add0d91Sopenharmony_cipub const SO_USELOOPBACK: ::c_int = 0x0040; 18182add0d91Sopenharmony_cipub const SO_LINGER: ::c_int = 0x0080; 18192add0d91Sopenharmony_cipub const SO_OOBINLINE: ::c_int = 0x0100; 18202add0d91Sopenharmony_cipub const SO_SNDBUF: ::c_int = 0x1001; 18212add0d91Sopenharmony_cipub const SO_RCVBUF: ::c_int = 0x1002; 18222add0d91Sopenharmony_cipub const SO_SNDLOWAT: ::c_int = 0x1003; 18232add0d91Sopenharmony_cipub const SO_RCVLOWAT: ::c_int = 0x1004; 18242add0d91Sopenharmony_cipub const SO_SNDTIMEO: ::c_int = 0x1005; 18252add0d91Sopenharmony_cipub const SO_RCVTIMEO: ::c_int = 0x1006; 18262add0d91Sopenharmony_cipub const SO_ERROR: ::c_int = 0x1007; 18272add0d91Sopenharmony_cipub const SO_TYPE: ::c_int = 0x1008; 18282add0d91Sopenharmony_cipub const SO_TIMESTAMP: ::c_int = 0x1013; 18292add0d91Sopenharmony_ci 18302add0d91Sopenharmony_cipub const SCM_RIGHTS: ::c_int = 0x1010; 18312add0d91Sopenharmony_cipub const SCM_UCRED: ::c_int = 0x1012; 18322add0d91Sopenharmony_cipub const SCM_TIMESTAMP: ::c_int = SO_TIMESTAMP; 18332add0d91Sopenharmony_ci 18342add0d91Sopenharmony_cipub const MSG_OOB: ::c_int = 0x1; 18352add0d91Sopenharmony_cipub const MSG_PEEK: ::c_int = 0x2; 18362add0d91Sopenharmony_cipub const MSG_DONTROUTE: ::c_int = 0x4; 18372add0d91Sopenharmony_cipub const MSG_EOR: ::c_int = 0x8; 18382add0d91Sopenharmony_cipub const MSG_CTRUNC: ::c_int = 0x10; 18392add0d91Sopenharmony_cipub const MSG_TRUNC: ::c_int = 0x20; 18402add0d91Sopenharmony_cipub const MSG_WAITALL: ::c_int = 0x40; 18412add0d91Sopenharmony_cipub const MSG_DONTWAIT: ::c_int = 0x80; 18422add0d91Sopenharmony_cipub const MSG_NOTIFICATION: ::c_int = 0x100; 18432add0d91Sopenharmony_cipub const MSG_NOSIGNAL: ::c_int = 0x200; 18442add0d91Sopenharmony_cipub const MSG_DUPCTRL: ::c_int = 0x800; 18452add0d91Sopenharmony_cipub const MSG_XPG4_2: ::c_int = 0x8000; 18462add0d91Sopenharmony_cipub const MSG_MAXIOVLEN: ::c_int = 16; 18472add0d91Sopenharmony_ci 18482add0d91Sopenharmony_cipub const IF_NAMESIZE: ::size_t = 32; 18492add0d91Sopenharmony_cipub const IFNAMSIZ: ::size_t = 16; 18502add0d91Sopenharmony_ci 18512add0d91Sopenharmony_ci// https://docs.oracle.com/cd/E23824_01/html/821-1475/if-7p.html 18522add0d91Sopenharmony_cipub const IFF_UP: ::c_int = 0x0000000001; // Address is up 18532add0d91Sopenharmony_cipub const IFF_BROADCAST: ::c_int = 0x0000000002; // Broadcast address valid 18542add0d91Sopenharmony_cipub const IFF_DEBUG: ::c_int = 0x0000000004; // Turn on debugging 18552add0d91Sopenharmony_cipub const IFF_LOOPBACK: ::c_int = 0x0000000008; // Loopback net 18562add0d91Sopenharmony_cipub const IFF_POINTOPOINT: ::c_int = 0x0000000010; // Interface is p-to-p 18572add0d91Sopenharmony_cipub const IFF_NOTRAILERS: ::c_int = 0x0000000020; // Avoid use of trailers 18582add0d91Sopenharmony_cipub const IFF_RUNNING: ::c_int = 0x0000000040; // Resources allocated 18592add0d91Sopenharmony_cipub const IFF_NOARP: ::c_int = 0x0000000080; // No address res. protocol 18602add0d91Sopenharmony_cipub const IFF_PROMISC: ::c_int = 0x0000000100; // Receive all packets 18612add0d91Sopenharmony_cipub const IFF_ALLMULTI: ::c_int = 0x0000000200; // Receive all multicast pkts 18622add0d91Sopenharmony_cipub const IFF_INTELLIGENT: ::c_int = 0x0000000400; // Protocol code on board 18632add0d91Sopenharmony_cipub const IFF_MULTICAST: ::c_int = 0x0000000800; // Supports multicast 18642add0d91Sopenharmony_ci 18652add0d91Sopenharmony_ci// Multicast using broadcst. add. 18662add0d91Sopenharmony_cipub const IFF_MULTI_BCAST: ::c_int = 0x0000001000; 18672add0d91Sopenharmony_cipub const IFF_UNNUMBERED: ::c_int = 0x0000002000; // Non-unique address 18682add0d91Sopenharmony_cipub const IFF_DHCPRUNNING: ::c_int = 0x0000004000; // DHCP controls interface 18692add0d91Sopenharmony_cipub const IFF_PRIVATE: ::c_int = 0x0000008000; // Do not advertise 18702add0d91Sopenharmony_cipub const IFF_NOXMIT: ::c_int = 0x0000010000; // Do not transmit pkts 18712add0d91Sopenharmony_ci 18722add0d91Sopenharmony_ci// No address - just on-link subnet 18732add0d91Sopenharmony_cipub const IFF_NOLOCAL: ::c_int = 0x0000020000; 18742add0d91Sopenharmony_cipub const IFF_DEPRECATED: ::c_int = 0x0000040000; // Address is deprecated 18752add0d91Sopenharmony_cipub const IFF_ADDRCONF: ::c_int = 0x0000080000; // Addr. from stateless addrconf 18762add0d91Sopenharmony_cipub const IFF_ROUTER: ::c_int = 0x0000100000; // Router on interface 18772add0d91Sopenharmony_cipub const IFF_NONUD: ::c_int = 0x0000200000; // No NUD on interface 18782add0d91Sopenharmony_cipub const IFF_ANYCAST: ::c_int = 0x0000400000; // Anycast address 18792add0d91Sopenharmony_cipub const IFF_NORTEXCH: ::c_int = 0x0000800000; // Don't xchange rout. info 18802add0d91Sopenharmony_cipub const IFF_IPV4: ::c_int = 0x0001000000; // IPv4 interface 18812add0d91Sopenharmony_cipub const IFF_IPV6: ::c_int = 0x0002000000; // IPv6 interface 18822add0d91Sopenharmony_cipub const IFF_NOFAILOVER: ::c_int = 0x0008000000; // in.mpathd test address 18832add0d91Sopenharmony_cipub const IFF_FAILED: ::c_int = 0x0010000000; // Interface has failed 18842add0d91Sopenharmony_cipub const IFF_STANDBY: ::c_int = 0x0020000000; // Interface is a hot-spare 18852add0d91Sopenharmony_cipub const IFF_INACTIVE: ::c_int = 0x0040000000; // Functioning but not used 18862add0d91Sopenharmony_cipub const IFF_OFFLINE: ::c_int = 0x0080000000; // Interface is offline 18872add0d91Sopenharmony_ci // If CoS marking is supported 18882add0d91Sopenharmony_cipub const IFF_COS_ENABLED: ::c_longlong = 0x0200000000; 18892add0d91Sopenharmony_cipub const IFF_PREFERRED: ::c_longlong = 0x0400000000; // Prefer as source addr. 18902add0d91Sopenharmony_cipub const IFF_TEMPORARY: ::c_longlong = 0x0800000000; // RFC3041 18912add0d91Sopenharmony_cipub const IFF_FIXEDMTU: ::c_longlong = 0x1000000000; // MTU set with SIOCSLIFMTU 18922add0d91Sopenharmony_cipub const IFF_VIRTUAL: ::c_longlong = 0x2000000000; // Cannot send/receive pkts 18932add0d91Sopenharmony_cipub const IFF_DUPLICATE: ::c_longlong = 0x4000000000; // Local address in use 18942add0d91Sopenharmony_cipub const IFF_IPMP: ::c_longlong = 0x8000000000; // IPMP IP interface 18952add0d91Sopenharmony_ci 18962add0d91Sopenharmony_ci// sys/ipc.h: 18972add0d91Sopenharmony_cipub const IPC_ALLOC: ::c_int = 0x8000; 18982add0d91Sopenharmony_cipub const IPC_CREAT: ::c_int = 0x200; 18992add0d91Sopenharmony_cipub const IPC_EXCL: ::c_int = 0x400; 19002add0d91Sopenharmony_cipub const IPC_NOWAIT: ::c_int = 0x800; 19012add0d91Sopenharmony_cipub const IPC_PRIVATE: key_t = 0; 19022add0d91Sopenharmony_cipub const IPC_RMID: ::c_int = 10; 19032add0d91Sopenharmony_cipub const IPC_SET: ::c_int = 11; 19042add0d91Sopenharmony_cipub const IPC_SEAT: ::c_int = 12; 19052add0d91Sopenharmony_ci 19062add0d91Sopenharmony_ci// sys/shm.h 19072add0d91Sopenharmony_cipub const SHM_R: ::c_int = 0o400; 19082add0d91Sopenharmony_cipub const SHM_W: ::c_int = 0o200; 19092add0d91Sopenharmony_cipub const SHM_RDONLY: ::c_int = 0o10000; 19102add0d91Sopenharmony_cipub const SHM_RND: ::c_int = 0o20000; 19112add0d91Sopenharmony_cipub const SHM_SHARE_MMU: ::c_int = 0o40000; 19122add0d91Sopenharmony_cipub const SHM_PAGEABLE: ::c_int = 0o100000; 19132add0d91Sopenharmony_ci 19142add0d91Sopenharmony_cipub const SHUT_RD: ::c_int = 0; 19152add0d91Sopenharmony_cipub const SHUT_WR: ::c_int = 1; 19162add0d91Sopenharmony_cipub const SHUT_RDWR: ::c_int = 2; 19172add0d91Sopenharmony_ci 19182add0d91Sopenharmony_cipub const LOCK_SH: ::c_int = 1; 19192add0d91Sopenharmony_cipub const LOCK_EX: ::c_int = 2; 19202add0d91Sopenharmony_cipub const LOCK_NB: ::c_int = 4; 19212add0d91Sopenharmony_cipub const LOCK_UN: ::c_int = 8; 19222add0d91Sopenharmony_ci 19232add0d91Sopenharmony_cipub const F_RDLCK: ::c_short = 1; 19242add0d91Sopenharmony_cipub const F_WRLCK: ::c_short = 2; 19252add0d91Sopenharmony_cipub const F_UNLCK: ::c_short = 3; 19262add0d91Sopenharmony_ci 19272add0d91Sopenharmony_cipub const O_SYNC: ::c_int = 16; 19282add0d91Sopenharmony_cipub const O_NONBLOCK: ::c_int = 128; 19292add0d91Sopenharmony_ci 19302add0d91Sopenharmony_cipub const IPPROTO_RAW: ::c_int = 255; 19312add0d91Sopenharmony_ci 19322add0d91Sopenharmony_cipub const _PC_LINK_MAX: ::c_int = 1; 19332add0d91Sopenharmony_cipub const _PC_MAX_CANON: ::c_int = 2; 19342add0d91Sopenharmony_cipub const _PC_MAX_INPUT: ::c_int = 3; 19352add0d91Sopenharmony_cipub const _PC_NAME_MAX: ::c_int = 4; 19362add0d91Sopenharmony_cipub const _PC_PATH_MAX: ::c_int = 5; 19372add0d91Sopenharmony_cipub const _PC_PIPE_BUF: ::c_int = 6; 19382add0d91Sopenharmony_cipub const _PC_NO_TRUNC: ::c_int = 7; 19392add0d91Sopenharmony_cipub const _PC_VDISABLE: ::c_int = 8; 19402add0d91Sopenharmony_cipub const _PC_CHOWN_RESTRICTED: ::c_int = 9; 19412add0d91Sopenharmony_cipub const _PC_ASYNC_IO: ::c_int = 10; 19422add0d91Sopenharmony_cipub const _PC_PRIO_IO: ::c_int = 11; 19432add0d91Sopenharmony_cipub const _PC_SYNC_IO: ::c_int = 12; 19442add0d91Sopenharmony_cipub const _PC_ALLOC_SIZE_MIN: ::c_int = 13; 19452add0d91Sopenharmony_cipub const _PC_REC_INCR_XFER_SIZE: ::c_int = 14; 19462add0d91Sopenharmony_cipub const _PC_REC_MAX_XFER_SIZE: ::c_int = 15; 19472add0d91Sopenharmony_cipub const _PC_REC_MIN_XFER_SIZE: ::c_int = 16; 19482add0d91Sopenharmony_cipub const _PC_REC_XFER_ALIGN: ::c_int = 17; 19492add0d91Sopenharmony_cipub const _PC_SYMLINK_MAX: ::c_int = 18; 19502add0d91Sopenharmony_cipub const _PC_2_SYMLINKS: ::c_int = 19; 19512add0d91Sopenharmony_cipub const _PC_ACL_ENABLED: ::c_int = 20; 19522add0d91Sopenharmony_cipub const _PC_MIN_HOLE_SIZE: ::c_int = 21; 19532add0d91Sopenharmony_cipub const _PC_CASE_BEHAVIOR: ::c_int = 22; 19542add0d91Sopenharmony_cipub const _PC_SATTR_ENABLED: ::c_int = 23; 19552add0d91Sopenharmony_cipub const _PC_SATTR_EXISTS: ::c_int = 24; 19562add0d91Sopenharmony_cipub const _PC_ACCESS_FILTERING: ::c_int = 25; 19572add0d91Sopenharmony_cipub const _PC_TIMESTAMP_RESOLUTION: ::c_int = 26; 19582add0d91Sopenharmony_cipub const _PC_FILESIZEBITS: ::c_int = 67; 19592add0d91Sopenharmony_cipub const _PC_XATTR_ENABLED: ::c_int = 100; 19602add0d91Sopenharmony_cipub const _PC_LAST: ::c_int = 101; 19612add0d91Sopenharmony_cipub const _PC_XATTR_EXISTS: ::c_int = 101; 19622add0d91Sopenharmony_ci 19632add0d91Sopenharmony_cipub const _SC_ARG_MAX: ::c_int = 1; 19642add0d91Sopenharmony_cipub const _SC_CHILD_MAX: ::c_int = 2; 19652add0d91Sopenharmony_cipub const _SC_CLK_TCK: ::c_int = 3; 19662add0d91Sopenharmony_cipub const _SC_NGROUPS_MAX: ::c_int = 4; 19672add0d91Sopenharmony_cipub const _SC_OPEN_MAX: ::c_int = 5; 19682add0d91Sopenharmony_cipub const _SC_JOB_CONTROL: ::c_int = 6; 19692add0d91Sopenharmony_cipub const _SC_SAVED_IDS: ::c_int = 7; 19702add0d91Sopenharmony_cipub const _SC_VERSION: ::c_int = 8; 19712add0d91Sopenharmony_cipub const _SC_PASS_MAX: ::c_int = 9; 19722add0d91Sopenharmony_cipub const _SC_LOGNAME_MAX: ::c_int = 10; 19732add0d91Sopenharmony_cipub const _SC_PAGESIZE: ::c_int = 11; 19742add0d91Sopenharmony_cipub const _SC_PAGE_SIZE: ::c_int = _SC_PAGESIZE; 19752add0d91Sopenharmony_cipub const _SC_XOPEN_VERSION: ::c_int = 12; 19762add0d91Sopenharmony_cipub const _SC_NPROCESSORS_CONF: ::c_int = 14; 19772add0d91Sopenharmony_cipub const _SC_NPROCESSORS_ONLN: ::c_int = 15; 19782add0d91Sopenharmony_cipub const _SC_STREAM_MAX: ::c_int = 16; 19792add0d91Sopenharmony_cipub const _SC_TZNAME_MAX: ::c_int = 17; 19802add0d91Sopenharmony_cipub const _SC_AIO_LISTIO_MAX: ::c_int = 18; 19812add0d91Sopenharmony_cipub const _SC_AIO_MAX: ::c_int = 19; 19822add0d91Sopenharmony_cipub const _SC_AIO_PRIO_DELTA_MAX: ::c_int = 20; 19832add0d91Sopenharmony_cipub const _SC_ASYNCHRONOUS_IO: ::c_int = 21; 19842add0d91Sopenharmony_cipub const _SC_DELAYTIMER_MAX: ::c_int = 22; 19852add0d91Sopenharmony_cipub const _SC_FSYNC: ::c_int = 23; 19862add0d91Sopenharmony_cipub const _SC_MAPPED_FILES: ::c_int = 24; 19872add0d91Sopenharmony_cipub const _SC_MEMLOCK: ::c_int = 25; 19882add0d91Sopenharmony_cipub const _SC_MEMLOCK_RANGE: ::c_int = 26; 19892add0d91Sopenharmony_cipub const _SC_MEMORY_PROTECTION: ::c_int = 27; 19902add0d91Sopenharmony_cipub const _SC_MESSAGE_PASSING: ::c_int = 28; 19912add0d91Sopenharmony_cipub const _SC_MQ_OPEN_MAX: ::c_int = 29; 19922add0d91Sopenharmony_cipub const _SC_MQ_PRIO_MAX: ::c_int = 30; 19932add0d91Sopenharmony_cipub const _SC_PRIORITIZED_IO: ::c_int = 31; 19942add0d91Sopenharmony_cipub const _SC_PRIORITY_SCHEDULING: ::c_int = 32; 19952add0d91Sopenharmony_cipub const _SC_REALTIME_SIGNALS: ::c_int = 33; 19962add0d91Sopenharmony_cipub const _SC_RTSIG_MAX: ::c_int = 34; 19972add0d91Sopenharmony_cipub const _SC_SEMAPHORES: ::c_int = 35; 19982add0d91Sopenharmony_cipub const _SC_SEM_NSEMS_MAX: ::c_int = 36; 19992add0d91Sopenharmony_cipub const _SC_SEM_VALUE_MAX: ::c_int = 37; 20002add0d91Sopenharmony_cipub const _SC_SHARED_MEMORY_OBJECTS: ::c_int = 38; 20012add0d91Sopenharmony_cipub const _SC_SIGQUEUE_MAX: ::c_int = 39; 20022add0d91Sopenharmony_cipub const _SC_SIGRT_MIN: ::c_int = 40; 20032add0d91Sopenharmony_cipub const _SC_SIGRT_MAX: ::c_int = 41; 20042add0d91Sopenharmony_cipub const _SC_SYNCHRONIZED_IO: ::c_int = 42; 20052add0d91Sopenharmony_cipub const _SC_TIMERS: ::c_int = 43; 20062add0d91Sopenharmony_cipub const _SC_TIMER_MAX: ::c_int = 44; 20072add0d91Sopenharmony_cipub const _SC_2_C_BIND: ::c_int = 45; 20082add0d91Sopenharmony_cipub const _SC_2_C_DEV: ::c_int = 46; 20092add0d91Sopenharmony_cipub const _SC_2_C_VERSION: ::c_int = 47; 20102add0d91Sopenharmony_cipub const _SC_2_FORT_DEV: ::c_int = 48; 20112add0d91Sopenharmony_cipub const _SC_2_FORT_RUN: ::c_int = 49; 20122add0d91Sopenharmony_cipub const _SC_2_LOCALEDEF: ::c_int = 50; 20132add0d91Sopenharmony_cipub const _SC_2_SW_DEV: ::c_int = 51; 20142add0d91Sopenharmony_cipub const _SC_2_UPE: ::c_int = 52; 20152add0d91Sopenharmony_cipub const _SC_2_VERSION: ::c_int = 53; 20162add0d91Sopenharmony_cipub const _SC_BC_BASE_MAX: ::c_int = 54; 20172add0d91Sopenharmony_cipub const _SC_BC_DIM_MAX: ::c_int = 55; 20182add0d91Sopenharmony_cipub const _SC_BC_SCALE_MAX: ::c_int = 56; 20192add0d91Sopenharmony_cipub const _SC_BC_STRING_MAX: ::c_int = 57; 20202add0d91Sopenharmony_cipub const _SC_COLL_WEIGHTS_MAX: ::c_int = 58; 20212add0d91Sopenharmony_cipub const _SC_EXPR_NEST_MAX: ::c_int = 59; 20222add0d91Sopenharmony_cipub const _SC_LINE_MAX: ::c_int = 60; 20232add0d91Sopenharmony_cipub const _SC_RE_DUP_MAX: ::c_int = 61; 20242add0d91Sopenharmony_cipub const _SC_XOPEN_CRYPT: ::c_int = 62; 20252add0d91Sopenharmony_cipub const _SC_XOPEN_ENH_I18N: ::c_int = 63; 20262add0d91Sopenharmony_cipub const _SC_XOPEN_SHM: ::c_int = 64; 20272add0d91Sopenharmony_cipub const _SC_2_CHAR_TERM: ::c_int = 66; 20282add0d91Sopenharmony_cipub const _SC_XOPEN_XCU_VERSION: ::c_int = 67; 20292add0d91Sopenharmony_cipub const _SC_ATEXIT_MAX: ::c_int = 76; 20302add0d91Sopenharmony_cipub const _SC_IOV_MAX: ::c_int = 77; 20312add0d91Sopenharmony_cipub const _SC_XOPEN_UNIX: ::c_int = 78; 20322add0d91Sopenharmony_cipub const _SC_T_IOV_MAX: ::c_int = 79; 20332add0d91Sopenharmony_cipub const _SC_PHYS_PAGES: ::c_int = 500; 20342add0d91Sopenharmony_cipub const _SC_AVPHYS_PAGES: ::c_int = 501; 20352add0d91Sopenharmony_cipub const _SC_COHER_BLKSZ: ::c_int = 503; 20362add0d91Sopenharmony_cipub const _SC_SPLIT_CACHE: ::c_int = 504; 20372add0d91Sopenharmony_cipub const _SC_ICACHE_SZ: ::c_int = 505; 20382add0d91Sopenharmony_cipub const _SC_DCACHE_SZ: ::c_int = 506; 20392add0d91Sopenharmony_cipub const _SC_ICACHE_LINESZ: ::c_int = 507; 20402add0d91Sopenharmony_cipub const _SC_DCACHE_LINESZ: ::c_int = 508; 20412add0d91Sopenharmony_cipub const _SC_ICACHE_BLKSZ: ::c_int = 509; 20422add0d91Sopenharmony_cipub const _SC_DCACHE_BLKSZ: ::c_int = 510; 20432add0d91Sopenharmony_cipub const _SC_DCACHE_TBLKSZ: ::c_int = 511; 20442add0d91Sopenharmony_cipub const _SC_ICACHE_ASSOC: ::c_int = 512; 20452add0d91Sopenharmony_cipub const _SC_DCACHE_ASSOC: ::c_int = 513; 20462add0d91Sopenharmony_cipub const _SC_MAXPID: ::c_int = 514; 20472add0d91Sopenharmony_cipub const _SC_STACK_PROT: ::c_int = 515; 20482add0d91Sopenharmony_cipub const _SC_NPROCESSORS_MAX: ::c_int = 516; 20492add0d91Sopenharmony_cipub const _SC_CPUID_MAX: ::c_int = 517; 20502add0d91Sopenharmony_cipub const _SC_EPHID_MAX: ::c_int = 518; 20512add0d91Sopenharmony_cipub const _SC_THREAD_DESTRUCTOR_ITERATIONS: ::c_int = 568; 20522add0d91Sopenharmony_cipub const _SC_GETGR_R_SIZE_MAX: ::c_int = 569; 20532add0d91Sopenharmony_cipub const _SC_GETPW_R_SIZE_MAX: ::c_int = 570; 20542add0d91Sopenharmony_cipub const _SC_LOGIN_NAME_MAX: ::c_int = 571; 20552add0d91Sopenharmony_cipub const _SC_THREAD_KEYS_MAX: ::c_int = 572; 20562add0d91Sopenharmony_cipub const _SC_THREAD_STACK_MIN: ::c_int = 573; 20572add0d91Sopenharmony_cipub const _SC_THREAD_THREADS_MAX: ::c_int = 574; 20582add0d91Sopenharmony_cipub const _SC_TTY_NAME_MAX: ::c_int = 575; 20592add0d91Sopenharmony_cipub const _SC_THREADS: ::c_int = 576; 20602add0d91Sopenharmony_cipub const _SC_THREAD_ATTR_STACKADDR: ::c_int = 577; 20612add0d91Sopenharmony_cipub const _SC_THREAD_ATTR_STACKSIZE: ::c_int = 578; 20622add0d91Sopenharmony_cipub const _SC_THREAD_PRIORITY_SCHEDULING: ::c_int = 579; 20632add0d91Sopenharmony_cipub const _SC_THREAD_PRIO_INHERIT: ::c_int = 580; 20642add0d91Sopenharmony_cipub const _SC_THREAD_PRIO_PROTECT: ::c_int = 581; 20652add0d91Sopenharmony_cipub const _SC_THREAD_PROCESS_SHARED: ::c_int = 582; 20662add0d91Sopenharmony_cipub const _SC_THREAD_SAFE_FUNCTIONS: ::c_int = 583; 20672add0d91Sopenharmony_cipub const _SC_XOPEN_LEGACY: ::c_int = 717; 20682add0d91Sopenharmony_cipub const _SC_XOPEN_REALTIME: ::c_int = 718; 20692add0d91Sopenharmony_cipub const _SC_XOPEN_REALTIME_THREADS: ::c_int = 719; 20702add0d91Sopenharmony_cipub const _SC_XBS5_ILP32_OFF32: ::c_int = 720; 20712add0d91Sopenharmony_cipub const _SC_XBS5_ILP32_OFFBIG: ::c_int = 721; 20722add0d91Sopenharmony_cipub const _SC_XBS5_LP64_OFF64: ::c_int = 722; 20732add0d91Sopenharmony_cipub const _SC_XBS5_LPBIG_OFFBIG: ::c_int = 723; 20742add0d91Sopenharmony_cipub const _SC_2_PBS: ::c_int = 724; 20752add0d91Sopenharmony_cipub const _SC_2_PBS_ACCOUNTING: ::c_int = 725; 20762add0d91Sopenharmony_cipub const _SC_2_PBS_CHECKPOINT: ::c_int = 726; 20772add0d91Sopenharmony_cipub const _SC_2_PBS_LOCATE: ::c_int = 728; 20782add0d91Sopenharmony_cipub const _SC_2_PBS_MESSAGE: ::c_int = 729; 20792add0d91Sopenharmony_cipub const _SC_2_PBS_TRACK: ::c_int = 730; 20802add0d91Sopenharmony_cipub const _SC_ADVISORY_INFO: ::c_int = 731; 20812add0d91Sopenharmony_cipub const _SC_BARRIERS: ::c_int = 732; 20822add0d91Sopenharmony_cipub const _SC_CLOCK_SELECTION: ::c_int = 733; 20832add0d91Sopenharmony_cipub const _SC_CPUTIME: ::c_int = 734; 20842add0d91Sopenharmony_cipub const _SC_HOST_NAME_MAX: ::c_int = 735; 20852add0d91Sopenharmony_cipub const _SC_MONOTONIC_CLOCK: ::c_int = 736; 20862add0d91Sopenharmony_cipub const _SC_READER_WRITER_LOCKS: ::c_int = 737; 20872add0d91Sopenharmony_cipub const _SC_REGEXP: ::c_int = 738; 20882add0d91Sopenharmony_cipub const _SC_SHELL: ::c_int = 739; 20892add0d91Sopenharmony_cipub const _SC_SPAWN: ::c_int = 740; 20902add0d91Sopenharmony_cipub const _SC_SPIN_LOCKS: ::c_int = 741; 20912add0d91Sopenharmony_cipub const _SC_SPORADIC_SERVER: ::c_int = 742; 20922add0d91Sopenharmony_cipub const _SC_SS_REPL_MAX: ::c_int = 743; 20932add0d91Sopenharmony_cipub const _SC_SYMLOOP_MAX: ::c_int = 744; 20942add0d91Sopenharmony_cipub const _SC_THREAD_CPUTIME: ::c_int = 745; 20952add0d91Sopenharmony_cipub const _SC_THREAD_SPORADIC_SERVER: ::c_int = 746; 20962add0d91Sopenharmony_cipub const _SC_TIMEOUTS: ::c_int = 747; 20972add0d91Sopenharmony_cipub const _SC_TRACE: ::c_int = 748; 20982add0d91Sopenharmony_cipub const _SC_TRACE_EVENT_FILTER: ::c_int = 749; 20992add0d91Sopenharmony_cipub const _SC_TRACE_EVENT_NAME_MAX: ::c_int = 750; 21002add0d91Sopenharmony_cipub const _SC_TRACE_INHERIT: ::c_int = 751; 21012add0d91Sopenharmony_cipub const _SC_TRACE_LOG: ::c_int = 752; 21022add0d91Sopenharmony_cipub const _SC_TRACE_NAME_MAX: ::c_int = 753; 21032add0d91Sopenharmony_cipub const _SC_TRACE_SYS_MAX: ::c_int = 754; 21042add0d91Sopenharmony_cipub const _SC_TRACE_USER_EVENT_MAX: ::c_int = 755; 21052add0d91Sopenharmony_cipub const _SC_TYPED_MEMORY_OBJECTS: ::c_int = 756; 21062add0d91Sopenharmony_cipub const _SC_V6_ILP32_OFF32: ::c_int = 757; 21072add0d91Sopenharmony_cipub const _SC_V6_ILP32_OFFBIG: ::c_int = 758; 21082add0d91Sopenharmony_cipub const _SC_V6_LP64_OFF64: ::c_int = 759; 21092add0d91Sopenharmony_cipub const _SC_V6_LPBIG_OFFBIG: ::c_int = 760; 21102add0d91Sopenharmony_cipub const _SC_XOPEN_STREAMS: ::c_int = 761; 21112add0d91Sopenharmony_cipub const _SC_IPV6: ::c_int = 762; 21122add0d91Sopenharmony_cipub const _SC_RAW_SOCKETS: ::c_int = 763; 21132add0d91Sopenharmony_ci 21142add0d91Sopenharmony_cipub const _MUTEX_MAGIC: u16 = 0x4d58; // MX 21152add0d91Sopenharmony_cipub const _COND_MAGIC: u16 = 0x4356; // CV 21162add0d91Sopenharmony_cipub const _RWL_MAGIC: u16 = 0x5257; // RW 21172add0d91Sopenharmony_ci 21182add0d91Sopenharmony_cipub const NCCS: usize = 19; 21192add0d91Sopenharmony_ci 21202add0d91Sopenharmony_cipub const LOG_CRON: ::c_int = 15 << 3; 21212add0d91Sopenharmony_ci 21222add0d91Sopenharmony_cipub const PTHREAD_MUTEX_INITIALIZER: pthread_mutex_t = pthread_mutex_t { 21232add0d91Sopenharmony_ci __pthread_mutex_flag1: 0, 21242add0d91Sopenharmony_ci __pthread_mutex_flag2: 0, 21252add0d91Sopenharmony_ci __pthread_mutex_ceiling: 0, 21262add0d91Sopenharmony_ci __pthread_mutex_type: PTHREAD_PROCESS_PRIVATE, 21272add0d91Sopenharmony_ci __pthread_mutex_magic: _MUTEX_MAGIC, 21282add0d91Sopenharmony_ci __pthread_mutex_lock: 0, 21292add0d91Sopenharmony_ci __pthread_mutex_data: 0, 21302add0d91Sopenharmony_ci}; 21312add0d91Sopenharmony_cipub const PTHREAD_COND_INITIALIZER: pthread_cond_t = pthread_cond_t { 21322add0d91Sopenharmony_ci __pthread_cond_flag: [0; 4], 21332add0d91Sopenharmony_ci __pthread_cond_type: PTHREAD_PROCESS_PRIVATE, 21342add0d91Sopenharmony_ci __pthread_cond_magic: _COND_MAGIC, 21352add0d91Sopenharmony_ci __pthread_cond_data: 0, 21362add0d91Sopenharmony_ci}; 21372add0d91Sopenharmony_cipub const PTHREAD_RWLOCK_INITIALIZER: pthread_rwlock_t = pthread_rwlock_t { 21382add0d91Sopenharmony_ci __pthread_rwlock_readers: 0, 21392add0d91Sopenharmony_ci __pthread_rwlock_type: PTHREAD_PROCESS_PRIVATE, 21402add0d91Sopenharmony_ci __pthread_rwlock_magic: _RWL_MAGIC, 21412add0d91Sopenharmony_ci __pthread_rwlock_mutex: PTHREAD_MUTEX_INITIALIZER, 21422add0d91Sopenharmony_ci __pthread_rwlock_readercv: PTHREAD_COND_INITIALIZER, 21432add0d91Sopenharmony_ci __pthread_rwlock_writercv: PTHREAD_COND_INITIALIZER, 21442add0d91Sopenharmony_ci}; 21452add0d91Sopenharmony_cipub const PTHREAD_MUTEX_NORMAL: ::c_int = 0; 21462add0d91Sopenharmony_cipub const PTHREAD_MUTEX_ERRORCHECK: ::c_int = 2; 21472add0d91Sopenharmony_cipub const PTHREAD_MUTEX_RECURSIVE: ::c_int = 4; 21482add0d91Sopenharmony_cipub const PTHREAD_MUTEX_DEFAULT: ::c_int = PTHREAD_MUTEX_NORMAL; 21492add0d91Sopenharmony_ci 21502add0d91Sopenharmony_cipub const RTLD_NEXT: *mut ::c_void = -1isize as *mut ::c_void; 21512add0d91Sopenharmony_cipub const RTLD_DEFAULT: *mut ::c_void = -2isize as *mut ::c_void; 21522add0d91Sopenharmony_cipub const RTLD_SELF: *mut ::c_void = -3isize as *mut ::c_void; 21532add0d91Sopenharmony_cipub const RTLD_PROBE: *mut ::c_void = -4isize as *mut ::c_void; 21542add0d91Sopenharmony_ci 21552add0d91Sopenharmony_cipub const RTLD_LAZY: ::c_int = 0x1; 21562add0d91Sopenharmony_cipub const RTLD_NOW: ::c_int = 0x2; 21572add0d91Sopenharmony_cipub const RTLD_NOLOAD: ::c_int = 0x4; 21582add0d91Sopenharmony_cipub const RTLD_GLOBAL: ::c_int = 0x100; 21592add0d91Sopenharmony_cipub const RTLD_LOCAL: ::c_int = 0x0; 21602add0d91Sopenharmony_cipub const RTLD_PARENT: ::c_int = 0x200; 21612add0d91Sopenharmony_cipub const RTLD_GROUP: ::c_int = 0x400; 21622add0d91Sopenharmony_cipub const RTLD_WORLD: ::c_int = 0x800; 21632add0d91Sopenharmony_cipub const RTLD_NODELETE: ::c_int = 0x1000; 21642add0d91Sopenharmony_cipub const RTLD_FIRST: ::c_int = 0x2000; 21652add0d91Sopenharmony_cipub const RTLD_CONFGEN: ::c_int = 0x10000; 21662add0d91Sopenharmony_ci 21672add0d91Sopenharmony_cipub const PORT_SOURCE_AIO: ::c_int = 1; 21682add0d91Sopenharmony_cipub const PORT_SOURCE_TIMER: ::c_int = 2; 21692add0d91Sopenharmony_cipub const PORT_SOURCE_USER: ::c_int = 3; 21702add0d91Sopenharmony_cipub const PORT_SOURCE_FD: ::c_int = 4; 21712add0d91Sopenharmony_cipub const PORT_SOURCE_ALERT: ::c_int = 5; 21722add0d91Sopenharmony_cipub const PORT_SOURCE_MQ: ::c_int = 6; 21732add0d91Sopenharmony_cipub const PORT_SOURCE_FILE: ::c_int = 7; 21742add0d91Sopenharmony_ci 21752add0d91Sopenharmony_cipub const NONROOT_USR: ::c_short = 2; 21762add0d91Sopenharmony_cipub const _UTX_USERSIZE: usize = 32; 21772add0d91Sopenharmony_cipub const _UTX_LINESIZE: usize = 32; 21782add0d91Sopenharmony_cipub const _UTX_PADSIZE: usize = 5; 21792add0d91Sopenharmony_cipub const _UTX_IDSIZE: usize = 4; 21802add0d91Sopenharmony_cipub const _UTX_HOSTSIZE: usize = 257; 21812add0d91Sopenharmony_cipub const EMPTY: ::c_short = 0; 21822add0d91Sopenharmony_cipub const RUN_LVL: ::c_short = 1; 21832add0d91Sopenharmony_cipub const BOOT_TIME: ::c_short = 2; 21842add0d91Sopenharmony_cipub const OLD_TIME: ::c_short = 3; 21852add0d91Sopenharmony_cipub const NEW_TIME: ::c_short = 4; 21862add0d91Sopenharmony_cipub const INIT_PROCESS: ::c_short = 5; 21872add0d91Sopenharmony_cipub const LOGIN_PROCESS: ::c_short = 6; 21882add0d91Sopenharmony_cipub const USER_PROCESS: ::c_short = 7; 21892add0d91Sopenharmony_cipub const DEAD_PROCESS: ::c_short = 8; 21902add0d91Sopenharmony_cipub const ACCOUNTING: ::c_short = 9; 21912add0d91Sopenharmony_cipub const DOWN_TIME: ::c_short = 10; 21922add0d91Sopenharmony_ci 21932add0d91Sopenharmony_ciconst _TIOC: ::c_int = ('T' as i32) << 8; 21942add0d91Sopenharmony_ciconst tIOC: ::c_int = ('t' as i32) << 8; 21952add0d91Sopenharmony_cipub const TCGETA: ::c_int = _TIOC | 1; 21962add0d91Sopenharmony_cipub const TCSETA: ::c_int = _TIOC | 2; 21972add0d91Sopenharmony_cipub const TCSETAW: ::c_int = _TIOC | 3; 21982add0d91Sopenharmony_cipub const TCSETAF: ::c_int = _TIOC | 4; 21992add0d91Sopenharmony_cipub const TCSBRK: ::c_int = _TIOC | 5; 22002add0d91Sopenharmony_cipub const TCXONC: ::c_int = _TIOC | 6; 22012add0d91Sopenharmony_cipub const TCFLSH: ::c_int = _TIOC | 7; 22022add0d91Sopenharmony_cipub const TCDSET: ::c_int = _TIOC | 32; 22032add0d91Sopenharmony_cipub const TCGETS: ::c_int = _TIOC | 13; 22042add0d91Sopenharmony_cipub const TCSETS: ::c_int = _TIOC | 14; 22052add0d91Sopenharmony_cipub const TCSANOW: ::c_int = _TIOC | 14; 22062add0d91Sopenharmony_cipub const TCSETSW: ::c_int = _TIOC | 15; 22072add0d91Sopenharmony_cipub const TCSADRAIN: ::c_int = _TIOC | 15; 22082add0d91Sopenharmony_cipub const TCSETSF: ::c_int = _TIOC | 16; 22092add0d91Sopenharmony_cipub const TCSAFLUSH: ::c_int = _TIOC | 16; 22102add0d91Sopenharmony_cipub const TCIFLUSH: ::c_int = 0; 22112add0d91Sopenharmony_cipub const TCOFLUSH: ::c_int = 1; 22122add0d91Sopenharmony_cipub const TCIOFLUSH: ::c_int = 2; 22132add0d91Sopenharmony_cipub const TCOOFF: ::c_int = 0; 22142add0d91Sopenharmony_cipub const TCOON: ::c_int = 1; 22152add0d91Sopenharmony_cipub const TCIOFF: ::c_int = 2; 22162add0d91Sopenharmony_cipub const TCION: ::c_int = 3; 22172add0d91Sopenharmony_cipub const TIOC: ::c_int = _TIOC; 22182add0d91Sopenharmony_cipub const TIOCKBON: ::c_int = _TIOC | 8; 22192add0d91Sopenharmony_cipub const TIOCKBOF: ::c_int = _TIOC | 9; 22202add0d91Sopenharmony_cipub const TIOCGWINSZ: ::c_int = _TIOC | 104; 22212add0d91Sopenharmony_cipub const TIOCSWINSZ: ::c_int = _TIOC | 103; 22222add0d91Sopenharmony_cipub const TIOCGSOFTCAR: ::c_int = _TIOC | 105; 22232add0d91Sopenharmony_cipub const TIOCSSOFTCAR: ::c_int = _TIOC | 106; 22242add0d91Sopenharmony_cipub const TIOCGPPS: ::c_int = _TIOC | 125; 22252add0d91Sopenharmony_cipub const TIOCSPPS: ::c_int = _TIOC | 126; 22262add0d91Sopenharmony_cipub const TIOCGPPSEV: ::c_int = _TIOC | 127; 22272add0d91Sopenharmony_cipub const TIOCGETD: ::c_int = tIOC | 0; 22282add0d91Sopenharmony_cipub const TIOCSETD: ::c_int = tIOC | 1; 22292add0d91Sopenharmony_cipub const TIOCHPCL: ::c_int = tIOC | 2; 22302add0d91Sopenharmony_cipub const TIOCGETP: ::c_int = tIOC | 8; 22312add0d91Sopenharmony_cipub const TIOCSETP: ::c_int = tIOC | 9; 22322add0d91Sopenharmony_cipub const TIOCSETN: ::c_int = tIOC | 10; 22332add0d91Sopenharmony_cipub const TIOCEXCL: ::c_int = tIOC | 13; 22342add0d91Sopenharmony_cipub const TIOCNXCL: ::c_int = tIOC | 14; 22352add0d91Sopenharmony_cipub const TIOCFLUSH: ::c_int = tIOC | 16; 22362add0d91Sopenharmony_cipub const TIOCSETC: ::c_int = tIOC | 17; 22372add0d91Sopenharmony_cipub const TIOCGETC: ::c_int = tIOC | 18; 22382add0d91Sopenharmony_cipub const TIOCLBIS: ::c_int = tIOC | 127; 22392add0d91Sopenharmony_cipub const TIOCLBIC: ::c_int = tIOC | 126; 22402add0d91Sopenharmony_cipub const TIOCLSET: ::c_int = tIOC | 125; 22412add0d91Sopenharmony_cipub const TIOCLGET: ::c_int = tIOC | 124; 22422add0d91Sopenharmony_cipub const TIOCSBRK: ::c_int = tIOC | 123; 22432add0d91Sopenharmony_cipub const TIOCCBRK: ::c_int = tIOC | 122; 22442add0d91Sopenharmony_cipub const TIOCSDTR: ::c_int = tIOC | 121; 22452add0d91Sopenharmony_cipub const TIOCCDTR: ::c_int = tIOC | 120; 22462add0d91Sopenharmony_cipub const TIOCSLTC: ::c_int = tIOC | 117; 22472add0d91Sopenharmony_cipub const TIOCGLTC: ::c_int = tIOC | 116; 22482add0d91Sopenharmony_cipub const TIOCOUTQ: ::c_int = tIOC | 115; 22492add0d91Sopenharmony_cipub const TIOCNOTTY: ::c_int = tIOC | 113; 22502add0d91Sopenharmony_cipub const TIOCSCTTY: ::c_int = tIOC | 132; 22512add0d91Sopenharmony_cipub const TIOCSTOP: ::c_int = tIOC | 111; 22522add0d91Sopenharmony_cipub const TIOCSTART: ::c_int = tIOC | 110; 22532add0d91Sopenharmony_cipub const TIOCSILOOP: ::c_int = tIOC | 109; 22542add0d91Sopenharmony_cipub const TIOCCILOOP: ::c_int = tIOC | 108; 22552add0d91Sopenharmony_cipub const TIOCGPGRP: ::c_int = tIOC | 20; 22562add0d91Sopenharmony_cipub const TIOCSPGRP: ::c_int = tIOC | 21; 22572add0d91Sopenharmony_cipub const TIOCGSID: ::c_int = tIOC | 22; 22582add0d91Sopenharmony_cipub const TIOCSTI: ::c_int = tIOC | 23; 22592add0d91Sopenharmony_cipub const TIOCMSET: ::c_int = tIOC | 26; 22602add0d91Sopenharmony_cipub const TIOCMBIS: ::c_int = tIOC | 27; 22612add0d91Sopenharmony_cipub const TIOCMBIC: ::c_int = tIOC | 28; 22622add0d91Sopenharmony_cipub const TIOCMGET: ::c_int = tIOC | 29; 22632add0d91Sopenharmony_cipub const TIOCREMOTE: ::c_int = tIOC | 30; 22642add0d91Sopenharmony_cipub const TIOCSIGNAL: ::c_int = tIOC | 31; 22652add0d91Sopenharmony_ci 22662add0d91Sopenharmony_cipub const TIOCM_LE: ::c_int = 0o0001; 22672add0d91Sopenharmony_cipub const TIOCM_DTR: ::c_int = 0o0002; 22682add0d91Sopenharmony_cipub const TIOCM_RTS: ::c_int = 0o0004; 22692add0d91Sopenharmony_cipub const TIOCM_ST: ::c_int = 0o0010; 22702add0d91Sopenharmony_cipub const TIOCM_SR: ::c_int = 0o0020; 22712add0d91Sopenharmony_cipub const TIOCM_CTS: ::c_int = 0o0040; 22722add0d91Sopenharmony_cipub const TIOCM_CAR: ::c_int = 0o0100; 22732add0d91Sopenharmony_cipub const TIOCM_CD: ::c_int = TIOCM_CAR; 22742add0d91Sopenharmony_cipub const TIOCM_RNG: ::c_int = 0o0200; 22752add0d91Sopenharmony_cipub const TIOCM_RI: ::c_int = TIOCM_RNG; 22762add0d91Sopenharmony_cipub const TIOCM_DSR: ::c_int = 0o0400; 22772add0d91Sopenharmony_ci 22782add0d91Sopenharmony_cipub const EPOLLIN: ::c_int = 0x1; 22792add0d91Sopenharmony_cipub const EPOLLPRI: ::c_int = 0x2; 22802add0d91Sopenharmony_cipub const EPOLLOUT: ::c_int = 0x4; 22812add0d91Sopenharmony_cipub const EPOLLRDNORM: ::c_int = 0x40; 22822add0d91Sopenharmony_cipub const EPOLLRDBAND: ::c_int = 0x80; 22832add0d91Sopenharmony_cipub const EPOLLWRNORM: ::c_int = 0x100; 22842add0d91Sopenharmony_cipub const EPOLLWRBAND: ::c_int = 0x200; 22852add0d91Sopenharmony_cipub const EPOLLMSG: ::c_int = 0x400; 22862add0d91Sopenharmony_cipub const EPOLLERR: ::c_int = 0x8; 22872add0d91Sopenharmony_cipub const EPOLLHUP: ::c_int = 0x10; 22882add0d91Sopenharmony_cipub const EPOLLET: ::c_int = 0x80000000; 22892add0d91Sopenharmony_cipub const EPOLLRDHUP: ::c_int = 0x2000; 22902add0d91Sopenharmony_cipub const EPOLLONESHOT: ::c_int = 0x40000000; 22912add0d91Sopenharmony_cipub const EPOLLWAKEUP: ::c_int = 0x20000000; 22922add0d91Sopenharmony_cipub const EPOLLEXCLUSIVE: ::c_int = 0x10000000; 22932add0d91Sopenharmony_cipub const EPOLL_CLOEXEC: ::c_int = 0x80000; 22942add0d91Sopenharmony_cipub const EPOLL_CTL_ADD: ::c_int = 1; 22952add0d91Sopenharmony_cipub const EPOLL_CTL_MOD: ::c_int = 3; 22962add0d91Sopenharmony_cipub const EPOLL_CTL_DEL: ::c_int = 2; 22972add0d91Sopenharmony_ci 22982add0d91Sopenharmony_ci/* termios */ 22992add0d91Sopenharmony_cipub const B0: speed_t = 0; 23002add0d91Sopenharmony_cipub const B50: speed_t = 1; 23012add0d91Sopenharmony_cipub const B75: speed_t = 2; 23022add0d91Sopenharmony_cipub const B110: speed_t = 3; 23032add0d91Sopenharmony_cipub const B134: speed_t = 4; 23042add0d91Sopenharmony_cipub const B150: speed_t = 5; 23052add0d91Sopenharmony_cipub const B200: speed_t = 6; 23062add0d91Sopenharmony_cipub const B300: speed_t = 7; 23072add0d91Sopenharmony_cipub const B600: speed_t = 8; 23082add0d91Sopenharmony_cipub const B1200: speed_t = 9; 23092add0d91Sopenharmony_cipub const B1800: speed_t = 10; 23102add0d91Sopenharmony_cipub const B2400: speed_t = 11; 23112add0d91Sopenharmony_cipub const B4800: speed_t = 12; 23122add0d91Sopenharmony_cipub const B9600: speed_t = 13; 23132add0d91Sopenharmony_cipub const B19200: speed_t = 14; 23142add0d91Sopenharmony_cipub const B38400: speed_t = 15; 23152add0d91Sopenharmony_cipub const B57600: speed_t = 16; 23162add0d91Sopenharmony_cipub const B76800: speed_t = 17; 23172add0d91Sopenharmony_cipub const B115200: speed_t = 18; 23182add0d91Sopenharmony_cipub const B153600: speed_t = 19; 23192add0d91Sopenharmony_cipub const B230400: speed_t = 20; 23202add0d91Sopenharmony_cipub const B307200: speed_t = 21; 23212add0d91Sopenharmony_cipub const B460800: speed_t = 22; 23222add0d91Sopenharmony_cipub const B921600: speed_t = 23; 23232add0d91Sopenharmony_cipub const CSTART: ::tcflag_t = 0o21; 23242add0d91Sopenharmony_cipub const CSTOP: ::tcflag_t = 0o23; 23252add0d91Sopenharmony_cipub const CSWTCH: ::tcflag_t = 0o32; 23262add0d91Sopenharmony_cipub const CBAUD: ::tcflag_t = 0o17; 23272add0d91Sopenharmony_cipub const CIBAUD: ::tcflag_t = 0o3600000; 23282add0d91Sopenharmony_cipub const CBAUDEXT: ::tcflag_t = 0o10000000; 23292add0d91Sopenharmony_cipub const CIBAUDEXT: ::tcflag_t = 0o20000000; 23302add0d91Sopenharmony_cipub const CSIZE: ::tcflag_t = 0o000060; 23312add0d91Sopenharmony_cipub const CS5: ::tcflag_t = 0; 23322add0d91Sopenharmony_cipub const CS6: ::tcflag_t = 0o000020; 23332add0d91Sopenharmony_cipub const CS7: ::tcflag_t = 0o000040; 23342add0d91Sopenharmony_cipub const CS8: ::tcflag_t = 0o000060; 23352add0d91Sopenharmony_cipub const CSTOPB: ::tcflag_t = 0o000100; 23362add0d91Sopenharmony_cipub const ECHO: ::tcflag_t = 0o000010; 23372add0d91Sopenharmony_cipub const ECHOE: ::tcflag_t = 0o000020; 23382add0d91Sopenharmony_cipub const ECHOK: ::tcflag_t = 0o000040; 23392add0d91Sopenharmony_cipub const ECHONL: ::tcflag_t = 0o000100; 23402add0d91Sopenharmony_cipub const ECHOCTL: ::tcflag_t = 0o001000; 23412add0d91Sopenharmony_cipub const ECHOPRT: ::tcflag_t = 0o002000; 23422add0d91Sopenharmony_cipub const ECHOKE: ::tcflag_t = 0o004000; 23432add0d91Sopenharmony_cipub const EXTPROC: ::tcflag_t = 0o200000; 23442add0d91Sopenharmony_cipub const IGNBRK: ::tcflag_t = 0o000001; 23452add0d91Sopenharmony_cipub const BRKINT: ::tcflag_t = 0o000002; 23462add0d91Sopenharmony_cipub const IGNPAR: ::tcflag_t = 0o000004; 23472add0d91Sopenharmony_cipub const PARMRK: ::tcflag_t = 0o000010; 23482add0d91Sopenharmony_cipub const INPCK: ::tcflag_t = 0o000020; 23492add0d91Sopenharmony_cipub const ISTRIP: ::tcflag_t = 0o000040; 23502add0d91Sopenharmony_cipub const INLCR: ::tcflag_t = 0o000100; 23512add0d91Sopenharmony_cipub const IGNCR: ::tcflag_t = 0o000200; 23522add0d91Sopenharmony_cipub const ICRNL: ::tcflag_t = 0o000400; 23532add0d91Sopenharmony_cipub const IUCLC: ::tcflag_t = 0o001000; 23542add0d91Sopenharmony_cipub const IXON: ::tcflag_t = 0o002000; 23552add0d91Sopenharmony_cipub const IXOFF: ::tcflag_t = 0o010000; 23562add0d91Sopenharmony_cipub const IXANY: ::tcflag_t = 0o004000; 23572add0d91Sopenharmony_cipub const IMAXBEL: ::tcflag_t = 0o020000; 23582add0d91Sopenharmony_cipub const DOSMODE: ::tcflag_t = 0o100000; 23592add0d91Sopenharmony_cipub const OPOST: ::tcflag_t = 0o000001; 23602add0d91Sopenharmony_cipub const OLCUC: ::tcflag_t = 0o000002; 23612add0d91Sopenharmony_cipub const ONLCR: ::tcflag_t = 0o000004; 23622add0d91Sopenharmony_cipub const OCRNL: ::tcflag_t = 0o000010; 23632add0d91Sopenharmony_cipub const ONOCR: ::tcflag_t = 0o000020; 23642add0d91Sopenharmony_cipub const ONLRET: ::tcflag_t = 0o000040; 23652add0d91Sopenharmony_cipub const OFILL: ::tcflag_t = 0o0000100; 23662add0d91Sopenharmony_cipub const OFDEL: ::tcflag_t = 0o0000200; 23672add0d91Sopenharmony_cipub const CREAD: ::tcflag_t = 0o000200; 23682add0d91Sopenharmony_cipub const PARENB: ::tcflag_t = 0o000400; 23692add0d91Sopenharmony_cipub const PARODD: ::tcflag_t = 0o001000; 23702add0d91Sopenharmony_cipub const HUPCL: ::tcflag_t = 0o002000; 23712add0d91Sopenharmony_cipub const CLOCAL: ::tcflag_t = 0o004000; 23722add0d91Sopenharmony_cipub const CRTSXOFF: ::tcflag_t = 0o10000000000; 23732add0d91Sopenharmony_cipub const CRTSCTS: ::tcflag_t = 0o20000000000; 23742add0d91Sopenharmony_cipub const ISIG: ::tcflag_t = 0o000001; 23752add0d91Sopenharmony_cipub const ICANON: ::tcflag_t = 0o000002; 23762add0d91Sopenharmony_cipub const IEXTEN: ::tcflag_t = 0o100000; 23772add0d91Sopenharmony_cipub const TOSTOP: ::tcflag_t = 0o000400; 23782add0d91Sopenharmony_cipub const FLUSHO: ::tcflag_t = 0o020000; 23792add0d91Sopenharmony_cipub const PENDIN: ::tcflag_t = 0o040000; 23802add0d91Sopenharmony_cipub const NOFLSH: ::tcflag_t = 0o000200; 23812add0d91Sopenharmony_cipub const VINTR: usize = 0; 23822add0d91Sopenharmony_cipub const VQUIT: usize = 1; 23832add0d91Sopenharmony_cipub const VERASE: usize = 2; 23842add0d91Sopenharmony_cipub const VKILL: usize = 3; 23852add0d91Sopenharmony_cipub const VEOF: usize = 4; 23862add0d91Sopenharmony_cipub const VEOL: usize = 5; 23872add0d91Sopenharmony_cipub const VEOL2: usize = 6; 23882add0d91Sopenharmony_cipub const VMIN: usize = 4; 23892add0d91Sopenharmony_cipub const VTIME: usize = 5; 23902add0d91Sopenharmony_cipub const VSWTCH: usize = 7; 23912add0d91Sopenharmony_cipub const VSTART: usize = 8; 23922add0d91Sopenharmony_cipub const VSTOP: usize = 9; 23932add0d91Sopenharmony_cipub const VSUSP: usize = 10; 23942add0d91Sopenharmony_cipub const VDSUSP: usize = 11; 23952add0d91Sopenharmony_cipub const VREPRINT: usize = 12; 23962add0d91Sopenharmony_cipub const VDISCARD: usize = 13; 23972add0d91Sopenharmony_cipub const VWERASE: usize = 14; 23982add0d91Sopenharmony_cipub const VLNEXT: usize = 15; 23992add0d91Sopenharmony_cipub const VSTATUS: usize = 16; 24002add0d91Sopenharmony_cipub const VERASE2: usize = 17; 24012add0d91Sopenharmony_ci 24022add0d91Sopenharmony_ci// <sys/stropts.h> 24032add0d91Sopenharmony_ciconst STR: ::c_int = (b'S' as ::c_int) << 8; 24042add0d91Sopenharmony_cipub const I_NREAD: ::c_int = STR | 0o1; 24052add0d91Sopenharmony_cipub const I_PUSH: ::c_int = STR | 0o2; 24062add0d91Sopenharmony_cipub const I_POP: ::c_int = STR | 0o3; 24072add0d91Sopenharmony_cipub const I_LOOK: ::c_int = STR | 0o4; 24082add0d91Sopenharmony_cipub const I_FLUSH: ::c_int = STR | 0o5; 24092add0d91Sopenharmony_cipub const I_SRDOPT: ::c_int = STR | 0o6; 24102add0d91Sopenharmony_cipub const I_GRDOPT: ::c_int = STR | 0o7; 24112add0d91Sopenharmony_cipub const I_STR: ::c_int = STR | 0o10; 24122add0d91Sopenharmony_cipub const I_SETSIG: ::c_int = STR | 0o11; 24132add0d91Sopenharmony_cipub const I_GETSIG: ::c_int = STR | 0o12; 24142add0d91Sopenharmony_cipub const I_FIND: ::c_int = STR | 0o13; 24152add0d91Sopenharmony_cipub const I_LINK: ::c_int = STR | 0o14; 24162add0d91Sopenharmony_cipub const I_UNLINK: ::c_int = STR | 0o15; 24172add0d91Sopenharmony_cipub const I_PEEK: ::c_int = STR | 0o17; 24182add0d91Sopenharmony_cipub const I_FDINSERT: ::c_int = STR | 0o20; 24192add0d91Sopenharmony_cipub const I_SENDFD: ::c_int = STR | 0o21; 24202add0d91Sopenharmony_cipub const I_RECVFD: ::c_int = STR | 0o16; 24212add0d91Sopenharmony_cipub const I_SWROPT: ::c_int = STR | 0o23; 24222add0d91Sopenharmony_cipub const I_GWROPT: ::c_int = STR | 0o24; 24232add0d91Sopenharmony_cipub const I_LIST: ::c_int = STR | 0o25; 24242add0d91Sopenharmony_cipub const I_PLINK: ::c_int = STR | 0o26; 24252add0d91Sopenharmony_cipub const I_PUNLINK: ::c_int = STR | 0o27; 24262add0d91Sopenharmony_cipub const I_ANCHOR: ::c_int = STR | 0o30; 24272add0d91Sopenharmony_cipub const I_FLUSHBAND: ::c_int = STR | 0o34; 24282add0d91Sopenharmony_cipub const I_CKBAND: ::c_int = STR | 0o35; 24292add0d91Sopenharmony_cipub const I_GETBAND: ::c_int = STR | 0o36; 24302add0d91Sopenharmony_cipub const I_ATMARK: ::c_int = STR | 0o37; 24312add0d91Sopenharmony_cipub const I_SETCLTIME: ::c_int = STR | 0o40; 24322add0d91Sopenharmony_cipub const I_GETCLTIME: ::c_int = STR | 0o41; 24332add0d91Sopenharmony_cipub const I_CANPUT: ::c_int = STR | 0o42; 24342add0d91Sopenharmony_cipub const I_SERROPT: ::c_int = STR | 0o43; 24352add0d91Sopenharmony_cipub const I_GERROPT: ::c_int = STR | 0o44; 24362add0d91Sopenharmony_cipub const I_ESETSIG: ::c_int = STR | 0o45; 24372add0d91Sopenharmony_cipub const I_EGETSIG: ::c_int = STR | 0o46; 24382add0d91Sopenharmony_cipub const __I_PUSH_NOCTTY: ::c_int = STR | 0o47; 24392add0d91Sopenharmony_ci 24402add0d91Sopenharmony_ci// 3SOCKET flags 24412add0d91Sopenharmony_cipub const SOCK_CLOEXEC: ::c_int = 0x080000; 24422add0d91Sopenharmony_cipub const SOCK_NONBLOCK: ::c_int = 0x100000; 24432add0d91Sopenharmony_cipub const SOCK_NDELAY: ::c_int = 0x200000; 24442add0d91Sopenharmony_ci 24452add0d91Sopenharmony_ci//<sys/timex.h> 24462add0d91Sopenharmony_cipub const SCALE_KG: ::c_int = 1 << 6; 24472add0d91Sopenharmony_cipub const SCALE_KF: ::c_int = 1 << 16; 24482add0d91Sopenharmony_cipub const SCALE_KH: ::c_int = 1 << 2; 24492add0d91Sopenharmony_cipub const MAXTC: ::c_int = 1 << 6; 24502add0d91Sopenharmony_cipub const SCALE_PHASE: ::c_int = 1 << 22; 24512add0d91Sopenharmony_cipub const SCALE_USEC: ::c_int = 1 << 16; 24522add0d91Sopenharmony_cipub const SCALE_UPDATE: ::c_int = SCALE_KG * MAXTC; 24532add0d91Sopenharmony_cipub const FINEUSEC: ::c_int = 1 << 22; 24542add0d91Sopenharmony_cipub const MAXPHASE: ::c_int = 512000; 24552add0d91Sopenharmony_cipub const MAXFREQ: ::c_int = 512 * SCALE_USEC; 24562add0d91Sopenharmony_cipub const MAXTIME: ::c_int = 200 << PPS_AVG; 24572add0d91Sopenharmony_cipub const MINSEC: ::c_int = 16; 24582add0d91Sopenharmony_cipub const MAXSEC: ::c_int = 1200; 24592add0d91Sopenharmony_cipub const PPS_AVG: ::c_int = 2; 24602add0d91Sopenharmony_cipub const PPS_SHIFT: ::c_int = 2; 24612add0d91Sopenharmony_cipub const PPS_SHIFTMAX: ::c_int = 8; 24622add0d91Sopenharmony_cipub const PPS_VALID: ::c_int = 120; 24632add0d91Sopenharmony_cipub const MAXGLITCH: ::c_int = 30; 24642add0d91Sopenharmony_cipub const MOD_OFFSET: u32 = 0x0001; 24652add0d91Sopenharmony_cipub const MOD_FREQUENCY: u32 = 0x0002; 24662add0d91Sopenharmony_cipub const MOD_MAXERROR: u32 = 0x0004; 24672add0d91Sopenharmony_cipub const MOD_ESTERROR: u32 = 0x0008; 24682add0d91Sopenharmony_cipub const MOD_STATUS: u32 = 0x0010; 24692add0d91Sopenharmony_cipub const MOD_TIMECONST: u32 = 0x0020; 24702add0d91Sopenharmony_cipub const MOD_CLKB: u32 = 0x4000; 24712add0d91Sopenharmony_cipub const MOD_CLKA: u32 = 0x8000; 24722add0d91Sopenharmony_cipub const STA_PLL: u32 = 0x0001; 24732add0d91Sopenharmony_cipub const STA_PPSFREQ: i32 = 0x0002; 24742add0d91Sopenharmony_cipub const STA_PPSTIME: i32 = 0x0004; 24752add0d91Sopenharmony_cipub const STA_FLL: i32 = 0x0008; 24762add0d91Sopenharmony_cipub const STA_INS: i32 = 0x0010; 24772add0d91Sopenharmony_cipub const STA_DEL: i32 = 0x0020; 24782add0d91Sopenharmony_cipub const STA_UNSYNC: i32 = 0x0040; 24792add0d91Sopenharmony_cipub const STA_FREQHOLD: i32 = 0x0080; 24802add0d91Sopenharmony_cipub const STA_PPSSIGNAL: i32 = 0x0100; 24812add0d91Sopenharmony_cipub const STA_PPSJITTER: i32 = 0x0200; 24822add0d91Sopenharmony_cipub const STA_PPSWANDER: i32 = 0x0400; 24832add0d91Sopenharmony_cipub const STA_PPSERROR: i32 = 0x0800; 24842add0d91Sopenharmony_cipub const STA_CLOCKERR: i32 = 0x1000; 24852add0d91Sopenharmony_cipub const STA_RONLY: i32 = 24862add0d91Sopenharmony_ci STA_PPSSIGNAL | STA_PPSJITTER | STA_PPSWANDER | STA_PPSERROR | STA_CLOCKERR; 24872add0d91Sopenharmony_cipub const TIME_OK: i32 = 0; 24882add0d91Sopenharmony_cipub const TIME_INS: i32 = 1; 24892add0d91Sopenharmony_cipub const TIME_DEL: i32 = 2; 24902add0d91Sopenharmony_cipub const TIME_OOP: i32 = 3; 24912add0d91Sopenharmony_cipub const TIME_WAIT: i32 = 4; 24922add0d91Sopenharmony_cipub const TIME_ERROR: i32 = 5; 24932add0d91Sopenharmony_ci 24942add0d91Sopenharmony_cipub const PRIO_PROCESS: ::c_int = 0; 24952add0d91Sopenharmony_cipub const PRIO_PGRP: ::c_int = 1; 24962add0d91Sopenharmony_cipub const PRIO_USER: ::c_int = 2; 24972add0d91Sopenharmony_ci 24982add0d91Sopenharmony_cipub const SCHED_OTHER: ::c_int = 0; 24992add0d91Sopenharmony_cipub const SCHED_FIFO: ::c_int = 1; 25002add0d91Sopenharmony_cipub const SCHED_RR: ::c_int = 2; 25012add0d91Sopenharmony_cipub const SCHED_SYS: ::c_int = 3; 25022add0d91Sopenharmony_cipub const SCHED_IA: ::c_int = 4; 25032add0d91Sopenharmony_cipub const SCHED_FSS: ::c_int = 5; 25042add0d91Sopenharmony_cipub const SCHED_FX: ::c_int = 6; 25052add0d91Sopenharmony_ci 25062add0d91Sopenharmony_ci// sys/priv.h 25072add0d91Sopenharmony_cipub const PRIV_DEBUG: ::c_uint = 0x0001; 25082add0d91Sopenharmony_cipub const PRIV_AWARE: ::c_uint = 0x0002; 25092add0d91Sopenharmony_cipub const PRIV_AWARE_INHERIT: ::c_uint = 0x0004; 25102add0d91Sopenharmony_cipub const __PROC_PROTECT: ::c_uint = 0x0008; 25112add0d91Sopenharmony_cipub const NET_MAC_AWARE: ::c_uint = 0x0010; 25122add0d91Sopenharmony_cipub const NET_MAC_AWARE_INHERIT: ::c_uint = 0x0020; 25132add0d91Sopenharmony_cipub const PRIV_AWARE_RESET: ::c_uint = 0x0040; 25142add0d91Sopenharmony_cipub const PRIV_XPOLICY: ::c_uint = 0x0080; 25152add0d91Sopenharmony_cipub const PRIV_PFEXEC: ::c_uint = 0x0100; 25162add0d91Sopenharmony_cipub const PRIV_USER: ::c_uint = PRIV_DEBUG 25172add0d91Sopenharmony_ci | NET_MAC_AWARE 25182add0d91Sopenharmony_ci | NET_MAC_AWARE_INHERIT 25192add0d91Sopenharmony_ci | PRIV_XPOLICY 25202add0d91Sopenharmony_ci | PRIV_AWARE_RESET 25212add0d91Sopenharmony_ci | PRIV_PFEXEC; 25222add0d91Sopenharmony_ci 25232add0d91Sopenharmony_ci// sys/systeminfo.h 25242add0d91Sopenharmony_cipub const SI_SYSNAME: ::c_int = 1; 25252add0d91Sopenharmony_cipub const SI_HOSTNAME: ::c_int = 2; 25262add0d91Sopenharmony_cipub const SI_RELEASE: ::c_int = 3; 25272add0d91Sopenharmony_cipub const SI_VERSION: ::c_int = 4; 25282add0d91Sopenharmony_cipub const SI_MACHINE: ::c_int = 5; 25292add0d91Sopenharmony_cipub const SI_ARCHITECTURE: ::c_int = 6; 25302add0d91Sopenharmony_cipub const SI_HW_SERIAL: ::c_int = 7; 25312add0d91Sopenharmony_cipub const SI_HW_PROVIDER: ::c_int = 8; 25322add0d91Sopenharmony_cipub const SI_SET_HOSTNAME: ::c_int = 258; 25332add0d91Sopenharmony_cipub const SI_SET_SRPC_DOMAIN: ::c_int = 265; 25342add0d91Sopenharmony_cipub const SI_PLATFORM: ::c_int = 513; 25352add0d91Sopenharmony_cipub const SI_ISALIST: ::c_int = 514; 25362add0d91Sopenharmony_cipub const SI_DHCP_CACHE: ::c_int = 515; 25372add0d91Sopenharmony_cipub const SI_ARCHITECTURE_32: ::c_int = 516; 25382add0d91Sopenharmony_cipub const SI_ARCHITECTURE_64: ::c_int = 517; 25392add0d91Sopenharmony_cipub const SI_ARCHITECTURE_K: ::c_int = 518; 25402add0d91Sopenharmony_cipub const SI_ARCHITECTURE_NATIVE: ::c_int = 519; 25412add0d91Sopenharmony_ci 25422add0d91Sopenharmony_ci// sys/lgrp_user.h 25432add0d91Sopenharmony_cipub const LGRP_COOKIE_NONE: ::lgrp_cookie_t = 0; 25442add0d91Sopenharmony_cipub const LGRP_AFF_NONE: ::lgrp_affinity_t = 0x0; 25452add0d91Sopenharmony_cipub const LGRP_AFF_WEAK: ::lgrp_affinity_t = 0x10; 25462add0d91Sopenharmony_cipub const LGRP_AFF_STRONG: ::lgrp_affinity_t = 0x100; 25472add0d91Sopenharmony_cipub const LGRP_RSRC_COUNT: ::lgrp_rsrc_t = 2; 25482add0d91Sopenharmony_cipub const LGRP_RSRC_CPU: ::lgrp_rsrc_t = 0; 25492add0d91Sopenharmony_cipub const LGRP_RSRC_MEM: ::lgrp_rsrc_t = 1; 25502add0d91Sopenharmony_cipub const LGRP_CONTENT_ALL: ::lgrp_content_t = 0; 25512add0d91Sopenharmony_cipub const LGRP_CONTENT_HIERARCHY: ::lgrp_content_t = LGRP_CONTENT_ALL; 25522add0d91Sopenharmony_cipub const LGRP_CONTENT_DIRECT: ::lgrp_content_t = 1; 25532add0d91Sopenharmony_cipub const LGRP_LAT_CPU_TO_MEM: ::lgrp_lat_between_t = 0; 25542add0d91Sopenharmony_cipub const LGRP_MEM_SZ_FREE: ::lgrp_mem_size_flag_t = 0; 25552add0d91Sopenharmony_cipub const LGRP_MEM_SZ_INSTALLED: ::lgrp_mem_size_flag_t = 1; 25562add0d91Sopenharmony_cipub const LGRP_VIEW_CALLER: ::lgrp_view_t = 0; 25572add0d91Sopenharmony_cipub const LGRP_VIEW_OS: ::lgrp_view_t = 1; 25582add0d91Sopenharmony_ci 25592add0d91Sopenharmony_ci// sys/processor.h 25602add0d91Sopenharmony_ci 25612add0d91Sopenharmony_cipub const P_OFFLINE: ::c_int = 0x001; 25622add0d91Sopenharmony_cipub const P_ONLINE: ::c_int = 0x002; 25632add0d91Sopenharmony_cipub const P_STATUS: ::c_int = 0x003; 25642add0d91Sopenharmony_cipub const P_FAULTED: ::c_int = 0x004; 25652add0d91Sopenharmony_cipub const P_POWEROFF: ::c_int = 0x005; 25662add0d91Sopenharmony_cipub const P_NOINTR: ::c_int = 0x006; 25672add0d91Sopenharmony_cipub const P_SPARE: ::c_int = 0x007; 25682add0d91Sopenharmony_cipub const P_DISABLED: ::c_int = 0x008; 25692add0d91Sopenharmony_cipub const P_FORCED: ::c_int = 0x10000000; 25702add0d91Sopenharmony_cipub const PI_TYPELEN: ::c_int = 16; 25712add0d91Sopenharmony_cipub const PI_FPUTYPE: ::c_int = 32; 25722add0d91Sopenharmony_ci 25732add0d91Sopenharmony_ci// sys/auxv.h 25742add0d91Sopenharmony_cipub const AT_SUN_HWCAP: ::c_uint = 2009; 25752add0d91Sopenharmony_cipub const AT_SUN_HWCAP2: ::c_uint = 2023; 25762add0d91Sopenharmony_cipub const AT_SUN_FPTYPE: ::c_uint = 2027; 25772add0d91Sopenharmony_ci 25782add0d91Sopenharmony_ci// As per sys/socket.h, header alignment must be 8 bytes on SPARC 25792add0d91Sopenharmony_ci// and 4 bytes everywhere else: 25802add0d91Sopenharmony_ci#[cfg(target_arch = "sparc64")] 25812add0d91Sopenharmony_ciconst _CMSG_HDR_ALIGNMENT: usize = 8; 25822add0d91Sopenharmony_ci#[cfg(any(target_arch = "x86", target_arch = "x86_64"))] 25832add0d91Sopenharmony_ciconst _CMSG_HDR_ALIGNMENT: usize = 4; 25842add0d91Sopenharmony_ci 25852add0d91Sopenharmony_ciconst _CMSG_DATA_ALIGNMENT: usize = ::mem::size_of::<::c_int>(); 25862add0d91Sopenharmony_ci 25872add0d91Sopenharmony_ciconst_fn! { 25882add0d91Sopenharmony_ci {const} fn _CMSG_HDR_ALIGN(p: usize) -> usize { 25892add0d91Sopenharmony_ci (p + _CMSG_HDR_ALIGNMENT - 1) & !(_CMSG_HDR_ALIGNMENT - 1) 25902add0d91Sopenharmony_ci } 25912add0d91Sopenharmony_ci 25922add0d91Sopenharmony_ci {const} fn _CMSG_DATA_ALIGN(p: usize) -> usize { 25932add0d91Sopenharmony_ci (p + _CMSG_DATA_ALIGNMENT - 1) & !(_CMSG_DATA_ALIGNMENT - 1) 25942add0d91Sopenharmony_ci } 25952add0d91Sopenharmony_ci} 25962add0d91Sopenharmony_ci 25972add0d91Sopenharmony_cif! { 25982add0d91Sopenharmony_ci pub fn CMSG_DATA(cmsg: *const ::cmsghdr) -> *mut ::c_uchar { 25992add0d91Sopenharmony_ci _CMSG_DATA_ALIGN(cmsg.offset(1) as usize) as *mut ::c_uchar 26002add0d91Sopenharmony_ci } 26012add0d91Sopenharmony_ci 26022add0d91Sopenharmony_ci pub fn CMSG_LEN(length: ::c_uint) -> ::c_uint { 26032add0d91Sopenharmony_ci _CMSG_DATA_ALIGN(::mem::size_of::<::cmsghdr>()) as ::c_uint + length 26042add0d91Sopenharmony_ci } 26052add0d91Sopenharmony_ci 26062add0d91Sopenharmony_ci pub fn CMSG_FIRSTHDR(mhdr: *const ::msghdr) -> *mut ::cmsghdr { 26072add0d91Sopenharmony_ci if ((*mhdr).msg_controllen as usize) < ::mem::size_of::<::cmsghdr>() { 26082add0d91Sopenharmony_ci 0 as *mut ::cmsghdr 26092add0d91Sopenharmony_ci } else { 26102add0d91Sopenharmony_ci (*mhdr).msg_control as *mut ::cmsghdr 26112add0d91Sopenharmony_ci } 26122add0d91Sopenharmony_ci } 26132add0d91Sopenharmony_ci 26142add0d91Sopenharmony_ci pub fn CMSG_NXTHDR(mhdr: *const ::msghdr, cmsg: *const ::cmsghdr) 26152add0d91Sopenharmony_ci -> *mut ::cmsghdr 26162add0d91Sopenharmony_ci { 26172add0d91Sopenharmony_ci if cmsg.is_null() { 26182add0d91Sopenharmony_ci return ::CMSG_FIRSTHDR(mhdr); 26192add0d91Sopenharmony_ci }; 26202add0d91Sopenharmony_ci let next = _CMSG_HDR_ALIGN(cmsg as usize + (*cmsg).cmsg_len as usize 26212add0d91Sopenharmony_ci + ::mem::size_of::<::cmsghdr>()); 26222add0d91Sopenharmony_ci let max = (*mhdr).msg_control as usize 26232add0d91Sopenharmony_ci + (*mhdr).msg_controllen as usize; 26242add0d91Sopenharmony_ci if next > max { 26252add0d91Sopenharmony_ci 0 as *mut ::cmsghdr 26262add0d91Sopenharmony_ci } else { 26272add0d91Sopenharmony_ci _CMSG_HDR_ALIGN(cmsg as usize + (*cmsg).cmsg_len as usize) 26282add0d91Sopenharmony_ci as *mut ::cmsghdr 26292add0d91Sopenharmony_ci } 26302add0d91Sopenharmony_ci } 26312add0d91Sopenharmony_ci 26322add0d91Sopenharmony_ci pub {const} fn CMSG_SPACE(length: ::c_uint) -> ::c_uint { 26332add0d91Sopenharmony_ci _CMSG_HDR_ALIGN(::mem::size_of::<::cmsghdr>() as usize 26342add0d91Sopenharmony_ci + length as usize) as ::c_uint 26352add0d91Sopenharmony_ci } 26362add0d91Sopenharmony_ci 26372add0d91Sopenharmony_ci pub fn FD_CLR(fd: ::c_int, set: *mut fd_set) -> () { 26382add0d91Sopenharmony_ci let bits = ::mem::size_of_val(&(*set).fds_bits[0]) * 8; 26392add0d91Sopenharmony_ci let fd = fd as usize; 26402add0d91Sopenharmony_ci (*set).fds_bits[fd / bits] &= !(1 << (fd % bits)); 26412add0d91Sopenharmony_ci return 26422add0d91Sopenharmony_ci } 26432add0d91Sopenharmony_ci 26442add0d91Sopenharmony_ci pub fn FD_ISSET(fd: ::c_int, set: *const fd_set) -> bool { 26452add0d91Sopenharmony_ci let bits = ::mem::size_of_val(&(*set).fds_bits[0]) * 8; 26462add0d91Sopenharmony_ci let fd = fd as usize; 26472add0d91Sopenharmony_ci return ((*set).fds_bits[fd / bits] & (1 << (fd % bits))) != 0 26482add0d91Sopenharmony_ci } 26492add0d91Sopenharmony_ci 26502add0d91Sopenharmony_ci pub fn FD_SET(fd: ::c_int, set: *mut fd_set) -> () { 26512add0d91Sopenharmony_ci let bits = ::mem::size_of_val(&(*set).fds_bits[0]) * 8; 26522add0d91Sopenharmony_ci let fd = fd as usize; 26532add0d91Sopenharmony_ci (*set).fds_bits[fd / bits] |= 1 << (fd % bits); 26542add0d91Sopenharmony_ci return 26552add0d91Sopenharmony_ci } 26562add0d91Sopenharmony_ci 26572add0d91Sopenharmony_ci pub fn FD_ZERO(set: *mut fd_set) -> () { 26582add0d91Sopenharmony_ci for slot in (*set).fds_bits.iter_mut() { 26592add0d91Sopenharmony_ci *slot = 0; 26602add0d91Sopenharmony_ci } 26612add0d91Sopenharmony_ci } 26622add0d91Sopenharmony_ci} 26632add0d91Sopenharmony_ci 26642add0d91Sopenharmony_cisafe_f! { 26652add0d91Sopenharmony_ci pub {const} fn WIFEXITED(status: ::c_int) -> bool { 26662add0d91Sopenharmony_ci (status & 0xFF) == 0 26672add0d91Sopenharmony_ci } 26682add0d91Sopenharmony_ci 26692add0d91Sopenharmony_ci pub {const} fn WEXITSTATUS(status: ::c_int) -> ::c_int { 26702add0d91Sopenharmony_ci (status >> 8) & 0xFF 26712add0d91Sopenharmony_ci } 26722add0d91Sopenharmony_ci 26732add0d91Sopenharmony_ci pub {const} fn WTERMSIG(status: ::c_int) -> ::c_int { 26742add0d91Sopenharmony_ci status & 0x7F 26752add0d91Sopenharmony_ci } 26762add0d91Sopenharmony_ci 26772add0d91Sopenharmony_ci pub {const} fn WIFCONTINUED(status: ::c_int) -> bool { 26782add0d91Sopenharmony_ci (status & 0xffff) == 0xffff 26792add0d91Sopenharmony_ci } 26802add0d91Sopenharmony_ci 26812add0d91Sopenharmony_ci pub {const} fn WSTOPSIG(status: ::c_int) -> ::c_int { 26822add0d91Sopenharmony_ci (status & 0xff00) >> 8 26832add0d91Sopenharmony_ci } 26842add0d91Sopenharmony_ci 26852add0d91Sopenharmony_ci pub {const} fn WIFSIGNALED(status: ::c_int) -> bool { 26862add0d91Sopenharmony_ci ((status & 0xff) > 0) && (status & 0xff00 == 0) 26872add0d91Sopenharmony_ci } 26882add0d91Sopenharmony_ci 26892add0d91Sopenharmony_ci pub {const} fn WIFSTOPPED(status: ::c_int) -> bool { 26902add0d91Sopenharmony_ci ((status & 0xff) == 0x7f) && ((status & 0xff00) != 0) 26912add0d91Sopenharmony_ci } 26922add0d91Sopenharmony_ci 26932add0d91Sopenharmony_ci pub {const} fn WCOREDUMP(status: ::c_int) -> bool { 26942add0d91Sopenharmony_ci (status & 0x80) != 0 26952add0d91Sopenharmony_ci } 26962add0d91Sopenharmony_ci 26972add0d91Sopenharmony_ci pub {const} fn MR_GET_TYPE(flags: ::c_uint) -> ::c_uint { 26982add0d91Sopenharmony_ci flags & 0x0000ffff 26992add0d91Sopenharmony_ci } 27002add0d91Sopenharmony_ci} 27012add0d91Sopenharmony_ci 27022add0d91Sopenharmony_ciextern "C" { 27032add0d91Sopenharmony_ci pub fn getrlimit(resource: ::c_int, rlim: *mut ::rlimit) -> ::c_int; 27042add0d91Sopenharmony_ci pub fn setrlimit(resource: ::c_int, rlim: *const ::rlimit) -> ::c_int; 27052add0d91Sopenharmony_ci 27062add0d91Sopenharmony_ci pub fn strerror_r(errnum: ::c_int, buf: *mut c_char, buflen: ::size_t) -> ::c_int; 27072add0d91Sopenharmony_ci 27082add0d91Sopenharmony_ci pub fn sem_destroy(sem: *mut sem_t) -> ::c_int; 27092add0d91Sopenharmony_ci pub fn sem_init(sem: *mut sem_t, pshared: ::c_int, value: ::c_uint) -> ::c_int; 27102add0d91Sopenharmony_ci 27112add0d91Sopenharmony_ci pub fn abs(i: ::c_int) -> ::c_int; 27122add0d91Sopenharmony_ci pub fn acct(filename: *const ::c_char) -> ::c_int; 27132add0d91Sopenharmony_ci pub fn dirfd(dirp: *mut ::DIR) -> ::c_int; 27142add0d91Sopenharmony_ci pub fn labs(i: ::c_long) -> ::c_long; 27152add0d91Sopenharmony_ci pub fn rand() -> ::c_int; 27162add0d91Sopenharmony_ci pub fn srand(seed: ::c_uint); 27172add0d91Sopenharmony_ci pub fn getentropy(buf: *mut ::c_void, buflen: ::size_t) -> ::c_int; 27182add0d91Sopenharmony_ci pub fn getrandom(bbuf: *mut ::c_void, buflen: ::size_t, flags: ::c_uint) -> ::ssize_t; 27192add0d91Sopenharmony_ci 27202add0d91Sopenharmony_ci pub fn gettimeofday(tp: *mut ::timeval, tz: *mut ::c_void) -> ::c_int; 27212add0d91Sopenharmony_ci pub fn settimeofday(tp: *const ::timeval, tz: *const ::c_void) -> ::c_int; 27222add0d91Sopenharmony_ci pub fn getifaddrs(ifap: *mut *mut ::ifaddrs) -> ::c_int; 27232add0d91Sopenharmony_ci pub fn freeifaddrs(ifa: *mut ::ifaddrs); 27242add0d91Sopenharmony_ci 27252add0d91Sopenharmony_ci pub fn stack_getbounds(sp: *mut ::stack_t) -> ::c_int; 27262add0d91Sopenharmony_ci pub fn getgrouplist( 27272add0d91Sopenharmony_ci name: *const ::c_char, 27282add0d91Sopenharmony_ci basegid: ::gid_t, 27292add0d91Sopenharmony_ci groups: *mut ::gid_t, 27302add0d91Sopenharmony_ci ngroups: *mut ::c_int, 27312add0d91Sopenharmony_ci ) -> ::c_int; 27322add0d91Sopenharmony_ci pub fn initgroups(name: *const ::c_char, basegid: ::gid_t) -> ::c_int; 27332add0d91Sopenharmony_ci pub fn setgroups(ngroups: ::c_int, ptr: *const ::gid_t) -> ::c_int; 27342add0d91Sopenharmony_ci pub fn ioctl(fildes: ::c_int, request: ::c_int, ...) -> ::c_int; 27352add0d91Sopenharmony_ci pub fn mprotect(addr: *const ::c_void, len: ::size_t, prot: ::c_int) -> ::c_int; 27362add0d91Sopenharmony_ci pub fn ___errno() -> *mut ::c_int; 27372add0d91Sopenharmony_ci pub fn clock_getres(clk_id: ::clockid_t, tp: *mut ::timespec) -> ::c_int; 27382add0d91Sopenharmony_ci pub fn clock_gettime(clk_id: ::clockid_t, tp: *mut ::timespec) -> ::c_int; 27392add0d91Sopenharmony_ci pub fn clock_nanosleep( 27402add0d91Sopenharmony_ci clk_id: ::clockid_t, 27412add0d91Sopenharmony_ci flags: ::c_int, 27422add0d91Sopenharmony_ci rqtp: *const ::timespec, 27432add0d91Sopenharmony_ci rmtp: *mut ::timespec, 27442add0d91Sopenharmony_ci ) -> ::c_int; 27452add0d91Sopenharmony_ci pub fn clock_settime(clk_id: ::clockid_t, tp: *const ::timespec) -> ::c_int; 27462add0d91Sopenharmony_ci pub fn getnameinfo( 27472add0d91Sopenharmony_ci sa: *const ::sockaddr, 27482add0d91Sopenharmony_ci salen: ::socklen_t, 27492add0d91Sopenharmony_ci host: *mut ::c_char, 27502add0d91Sopenharmony_ci hostlen: ::socklen_t, 27512add0d91Sopenharmony_ci serv: *mut ::c_char, 27522add0d91Sopenharmony_ci sevlen: ::socklen_t, 27532add0d91Sopenharmony_ci flags: ::c_int, 27542add0d91Sopenharmony_ci ) -> ::c_int; 27552add0d91Sopenharmony_ci pub fn setpwent(); 27562add0d91Sopenharmony_ci pub fn endpwent(); 27572add0d91Sopenharmony_ci pub fn getpwent() -> *mut passwd; 27582add0d91Sopenharmony_ci pub fn fdatasync(fd: ::c_int) -> ::c_int; 27592add0d91Sopenharmony_ci pub fn nl_langinfo_l(item: ::nl_item, locale: ::locale_t) -> *mut ::c_char; 27602add0d91Sopenharmony_ci pub fn duplocale(base: ::locale_t) -> ::locale_t; 27612add0d91Sopenharmony_ci pub fn freelocale(loc: ::locale_t); 27622add0d91Sopenharmony_ci pub fn newlocale(mask: ::c_int, locale: *const ::c_char, base: ::locale_t) -> ::locale_t; 27632add0d91Sopenharmony_ci pub fn uselocale(loc: ::locale_t) -> ::locale_t; 27642add0d91Sopenharmony_ci pub fn getprogname() -> *const ::c_char; 27652add0d91Sopenharmony_ci pub fn setprogname(name: *const ::c_char); 27662add0d91Sopenharmony_ci pub fn getloadavg(loadavg: *mut ::c_double, nelem: ::c_int) -> ::c_int; 27672add0d91Sopenharmony_ci pub fn getpriority(which: ::c_int, who: ::c_int) -> ::c_int; 27682add0d91Sopenharmony_ci pub fn setpriority(which: ::c_int, who: ::c_int, prio: ::c_int) -> ::c_int; 27692add0d91Sopenharmony_ci 27702add0d91Sopenharmony_ci pub fn mknodat( 27712add0d91Sopenharmony_ci dirfd: ::c_int, 27722add0d91Sopenharmony_ci pathname: *const ::c_char, 27732add0d91Sopenharmony_ci mode: ::mode_t, 27742add0d91Sopenharmony_ci dev: dev_t, 27752add0d91Sopenharmony_ci ) -> ::c_int; 27762add0d91Sopenharmony_ci pub fn mkfifoat(dirfd: ::c_int, pathname: *const ::c_char, mode: ::mode_t) -> ::c_int; 27772add0d91Sopenharmony_ci pub fn sethostname(name: *const ::c_char, len: ::c_int) -> ::c_int; 27782add0d91Sopenharmony_ci pub fn if_nameindex() -> *mut if_nameindex; 27792add0d91Sopenharmony_ci pub fn if_freenameindex(ptr: *mut if_nameindex); 27802add0d91Sopenharmony_ci pub fn pthread_create( 27812add0d91Sopenharmony_ci native: *mut ::pthread_t, 27822add0d91Sopenharmony_ci attr: *const ::pthread_attr_t, 27832add0d91Sopenharmony_ci f: extern "C" fn(*mut ::c_void) -> *mut ::c_void, 27842add0d91Sopenharmony_ci value: *mut ::c_void, 27852add0d91Sopenharmony_ci ) -> ::c_int; 27862add0d91Sopenharmony_ci pub fn pthread_attr_getstack( 27872add0d91Sopenharmony_ci attr: *const ::pthread_attr_t, 27882add0d91Sopenharmony_ci stackaddr: *mut *mut ::c_void, 27892add0d91Sopenharmony_ci stacksize: *mut ::size_t, 27902add0d91Sopenharmony_ci ) -> ::c_int; 27912add0d91Sopenharmony_ci pub fn pthread_condattr_getclock( 27922add0d91Sopenharmony_ci attr: *const pthread_condattr_t, 27932add0d91Sopenharmony_ci clock_id: *mut clockid_t, 27942add0d91Sopenharmony_ci ) -> ::c_int; 27952add0d91Sopenharmony_ci pub fn pthread_condattr_setclock( 27962add0d91Sopenharmony_ci attr: *mut pthread_condattr_t, 27972add0d91Sopenharmony_ci clock_id: ::clockid_t, 27982add0d91Sopenharmony_ci ) -> ::c_int; 27992add0d91Sopenharmony_ci pub fn sem_timedwait(sem: *mut sem_t, abstime: *const ::timespec) -> ::c_int; 28002add0d91Sopenharmony_ci pub fn sem_getvalue(sem: *mut sem_t, sval: *mut ::c_int) -> ::c_int; 28012add0d91Sopenharmony_ci pub fn pthread_mutex_timedlock( 28022add0d91Sopenharmony_ci lock: *mut pthread_mutex_t, 28032add0d91Sopenharmony_ci abstime: *const ::timespec, 28042add0d91Sopenharmony_ci ) -> ::c_int; 28052add0d91Sopenharmony_ci pub fn pthread_getname_np(tid: ::pthread_t, name: *mut ::c_char, len: ::size_t) -> ::c_int; 28062add0d91Sopenharmony_ci pub fn pthread_setname_np(tid: ::pthread_t, name: *const ::c_char) -> ::c_int; 28072add0d91Sopenharmony_ci pub fn waitid(idtype: idtype_t, id: id_t, infop: *mut ::siginfo_t, options: ::c_int) 28082add0d91Sopenharmony_ci -> ::c_int; 28092add0d91Sopenharmony_ci 28102add0d91Sopenharmony_ci #[cfg_attr(target_os = "illumos", link_name = "_glob_ext")] 28112add0d91Sopenharmony_ci pub fn glob( 28122add0d91Sopenharmony_ci pattern: *const ::c_char, 28132add0d91Sopenharmony_ci flags: ::c_int, 28142add0d91Sopenharmony_ci errfunc: ::Option<extern "C" fn(epath: *const ::c_char, errno: ::c_int) -> ::c_int>, 28152add0d91Sopenharmony_ci pglob: *mut ::glob_t, 28162add0d91Sopenharmony_ci ) -> ::c_int; 28172add0d91Sopenharmony_ci 28182add0d91Sopenharmony_ci #[cfg_attr(target_os = "illumos", link_name = "_globfree_ext")] 28192add0d91Sopenharmony_ci pub fn globfree(pglob: *mut ::glob_t); 28202add0d91Sopenharmony_ci 28212add0d91Sopenharmony_ci pub fn posix_madvise(addr: *mut ::c_void, len: ::size_t, advice: ::c_int) -> ::c_int; 28222add0d91Sopenharmony_ci 28232add0d91Sopenharmony_ci pub fn shmat(shmid: ::c_int, shmaddr: *const ::c_void, shmflg: ::c_int) -> *mut ::c_void; 28242add0d91Sopenharmony_ci 28252add0d91Sopenharmony_ci pub fn shmctl(shmid: ::c_int, cmd: ::c_int, buf: *mut ::shmid_ds) -> ::c_int; 28262add0d91Sopenharmony_ci 28272add0d91Sopenharmony_ci pub fn shmdt(shmaddr: *const ::c_void) -> ::c_int; 28282add0d91Sopenharmony_ci 28292add0d91Sopenharmony_ci pub fn shmget(key: key_t, size: ::size_t, shmflg: ::c_int) -> ::c_int; 28302add0d91Sopenharmony_ci 28312add0d91Sopenharmony_ci pub fn shm_open(name: *const ::c_char, oflag: ::c_int, mode: ::mode_t) -> ::c_int; 28322add0d91Sopenharmony_ci pub fn shm_unlink(name: *const ::c_char) -> ::c_int; 28332add0d91Sopenharmony_ci 28342add0d91Sopenharmony_ci pub fn seekdir(dirp: *mut ::DIR, loc: ::c_long); 28352add0d91Sopenharmony_ci 28362add0d91Sopenharmony_ci pub fn telldir(dirp: *mut ::DIR) -> ::c_long; 28372add0d91Sopenharmony_ci pub fn madvise(addr: *mut ::c_void, len: ::size_t, advice: ::c_int) -> ::c_int; 28382add0d91Sopenharmony_ci 28392add0d91Sopenharmony_ci pub fn msync(addr: *mut ::c_void, len: ::size_t, flags: ::c_int) -> ::c_int; 28402add0d91Sopenharmony_ci 28412add0d91Sopenharmony_ci pub fn memalign(align: ::size_t, size: ::size_t) -> *mut ::c_void; 28422add0d91Sopenharmony_ci 28432add0d91Sopenharmony_ci pub fn recvfrom( 28442add0d91Sopenharmony_ci socket: ::c_int, 28452add0d91Sopenharmony_ci buf: *mut ::c_void, 28462add0d91Sopenharmony_ci len: ::size_t, 28472add0d91Sopenharmony_ci flags: ::c_int, 28482add0d91Sopenharmony_ci addr: *mut ::sockaddr, 28492add0d91Sopenharmony_ci addrlen: *mut ::socklen_t, 28502add0d91Sopenharmony_ci ) -> ::ssize_t; 28512add0d91Sopenharmony_ci pub fn mkstemps(template: *mut ::c_char, suffixlen: ::c_int) -> ::c_int; 28522add0d91Sopenharmony_ci pub fn futimesat(fd: ::c_int, path: *const ::c_char, times: *const ::timeval) -> ::c_int; 28532add0d91Sopenharmony_ci pub fn futimens(dirfd: ::c_int, times: *const ::timespec) -> ::c_int; 28542add0d91Sopenharmony_ci pub fn utimensat( 28552add0d91Sopenharmony_ci dirfd: ::c_int, 28562add0d91Sopenharmony_ci path: *const ::c_char, 28572add0d91Sopenharmony_ci times: *const ::timespec, 28582add0d91Sopenharmony_ci flag: ::c_int, 28592add0d91Sopenharmony_ci ) -> ::c_int; 28602add0d91Sopenharmony_ci pub fn nl_langinfo(item: ::nl_item) -> *mut ::c_char; 28612add0d91Sopenharmony_ci 28622add0d91Sopenharmony_ci #[cfg_attr(target_os = "illumos", link_name = "__xnet_bind")] 28632add0d91Sopenharmony_ci pub fn bind(socket: ::c_int, address: *const ::sockaddr, address_len: ::socklen_t) -> ::c_int; 28642add0d91Sopenharmony_ci 28652add0d91Sopenharmony_ci pub fn writev(fd: ::c_int, iov: *const ::iovec, iovcnt: ::c_int) -> ::ssize_t; 28662add0d91Sopenharmony_ci pub fn readv(fd: ::c_int, iov: *const ::iovec, iovcnt: ::c_int) -> ::ssize_t; 28672add0d91Sopenharmony_ci 28682add0d91Sopenharmony_ci #[cfg_attr(target_os = "illumos", link_name = "__xnet_sendmsg")] 28692add0d91Sopenharmony_ci pub fn sendmsg(fd: ::c_int, msg: *const ::msghdr, flags: ::c_int) -> ::ssize_t; 28702add0d91Sopenharmony_ci #[cfg_attr(target_os = "illumos", link_name = "__xnet_recvmsg")] 28712add0d91Sopenharmony_ci pub fn recvmsg(fd: ::c_int, msg: *mut ::msghdr, flags: ::c_int) -> ::ssize_t; 28722add0d91Sopenharmony_ci pub fn accept4( 28732add0d91Sopenharmony_ci fd: ::c_int, 28742add0d91Sopenharmony_ci address: *mut sockaddr, 28752add0d91Sopenharmony_ci address_len: *mut socklen_t, 28762add0d91Sopenharmony_ci flags: ::c_int, 28772add0d91Sopenharmony_ci ) -> ::c_int; 28782add0d91Sopenharmony_ci 28792add0d91Sopenharmony_ci pub fn mq_open(name: *const ::c_char, oflag: ::c_int, ...) -> ::mqd_t; 28802add0d91Sopenharmony_ci pub fn mq_close(mqd: ::mqd_t) -> ::c_int; 28812add0d91Sopenharmony_ci pub fn mq_unlink(name: *const ::c_char) -> ::c_int; 28822add0d91Sopenharmony_ci pub fn mq_receive( 28832add0d91Sopenharmony_ci mqd: ::mqd_t, 28842add0d91Sopenharmony_ci msg_ptr: *mut ::c_char, 28852add0d91Sopenharmony_ci msg_len: ::size_t, 28862add0d91Sopenharmony_ci msg_prio: *mut ::c_uint, 28872add0d91Sopenharmony_ci ) -> ::ssize_t; 28882add0d91Sopenharmony_ci pub fn mq_timedreceive( 28892add0d91Sopenharmony_ci mqd: ::mqd_t, 28902add0d91Sopenharmony_ci msg_ptr: *mut ::c_char, 28912add0d91Sopenharmony_ci msg_len: ::size_t, 28922add0d91Sopenharmony_ci msg_prio: *mut ::c_uint, 28932add0d91Sopenharmony_ci abs_timeout: *const ::timespec, 28942add0d91Sopenharmony_ci ) -> ::ssize_t; 28952add0d91Sopenharmony_ci pub fn mq_send( 28962add0d91Sopenharmony_ci mqd: ::mqd_t, 28972add0d91Sopenharmony_ci msg_ptr: *const ::c_char, 28982add0d91Sopenharmony_ci msg_len: ::size_t, 28992add0d91Sopenharmony_ci msg_prio: ::c_uint, 29002add0d91Sopenharmony_ci ) -> ::c_int; 29012add0d91Sopenharmony_ci pub fn mq_timedsend( 29022add0d91Sopenharmony_ci mqd: ::mqd_t, 29032add0d91Sopenharmony_ci msg_ptr: *const ::c_char, 29042add0d91Sopenharmony_ci msg_len: ::size_t, 29052add0d91Sopenharmony_ci msg_prio: ::c_uint, 29062add0d91Sopenharmony_ci abs_timeout: *const ::timespec, 29072add0d91Sopenharmony_ci ) -> ::c_int; 29082add0d91Sopenharmony_ci pub fn mq_getattr(mqd: ::mqd_t, attr: *mut ::mq_attr) -> ::c_int; 29092add0d91Sopenharmony_ci pub fn mq_setattr(mqd: ::mqd_t, newattr: *const ::mq_attr, oldattr: *mut ::mq_attr) -> ::c_int; 29102add0d91Sopenharmony_ci pub fn port_create() -> ::c_int; 29112add0d91Sopenharmony_ci pub fn port_associate( 29122add0d91Sopenharmony_ci port: ::c_int, 29132add0d91Sopenharmony_ci source: ::c_int, 29142add0d91Sopenharmony_ci object: ::uintptr_t, 29152add0d91Sopenharmony_ci events: ::c_int, 29162add0d91Sopenharmony_ci user: *mut ::c_void, 29172add0d91Sopenharmony_ci ) -> ::c_int; 29182add0d91Sopenharmony_ci pub fn port_dissociate(port: ::c_int, source: ::c_int, object: ::uintptr_t) -> ::c_int; 29192add0d91Sopenharmony_ci pub fn port_get(port: ::c_int, pe: *mut port_event, timeout: *mut ::timespec) -> ::c_int; 29202add0d91Sopenharmony_ci pub fn port_getn( 29212add0d91Sopenharmony_ci port: ::c_int, 29222add0d91Sopenharmony_ci pe_list: *mut port_event, 29232add0d91Sopenharmony_ci max: ::c_uint, 29242add0d91Sopenharmony_ci nget: *mut ::c_uint, 29252add0d91Sopenharmony_ci timeout: *mut ::timespec, 29262add0d91Sopenharmony_ci ) -> ::c_int; 29272add0d91Sopenharmony_ci pub fn port_send(port: ::c_int, events: ::c_int, user: *mut ::c_void) -> ::c_int; 29282add0d91Sopenharmony_ci pub fn port_sendn( 29292add0d91Sopenharmony_ci port_list: *mut ::c_int, 29302add0d91Sopenharmony_ci error_list: *mut ::c_int, 29312add0d91Sopenharmony_ci nent: ::c_uint, 29322add0d91Sopenharmony_ci events: ::c_int, 29332add0d91Sopenharmony_ci user: *mut ::c_void, 29342add0d91Sopenharmony_ci ) -> ::c_int; 29352add0d91Sopenharmony_ci #[cfg_attr( 29362add0d91Sopenharmony_ci any(target_os = "solaris", target_os = "illumos"), 29372add0d91Sopenharmony_ci link_name = "__posix_getgrgid_r" 29382add0d91Sopenharmony_ci )] 29392add0d91Sopenharmony_ci pub fn getgrgid_r( 29402add0d91Sopenharmony_ci gid: ::gid_t, 29412add0d91Sopenharmony_ci grp: *mut ::group, 29422add0d91Sopenharmony_ci buf: *mut ::c_char, 29432add0d91Sopenharmony_ci buflen: ::size_t, 29442add0d91Sopenharmony_ci result: *mut *mut ::group, 29452add0d91Sopenharmony_ci ) -> ::c_int; 29462add0d91Sopenharmony_ci pub fn sigaltstack(ss: *const stack_t, oss: *mut stack_t) -> ::c_int; 29472add0d91Sopenharmony_ci pub fn sem_close(sem: *mut sem_t) -> ::c_int; 29482add0d91Sopenharmony_ci pub fn getdtablesize() -> ::c_int; 29492add0d91Sopenharmony_ci 29502add0d91Sopenharmony_ci // The epoll functions are actually only present on illumos. However, 29512add0d91Sopenharmony_ci // there are things using epoll on illumos (built using the 29522add0d91Sopenharmony_ci // x86_64-pc-solaris target) which would break until the illumos target is 29532add0d91Sopenharmony_ci // present in rustc. 29542add0d91Sopenharmony_ci pub fn epoll_pwait( 29552add0d91Sopenharmony_ci epfd: ::c_int, 29562add0d91Sopenharmony_ci events: *mut ::epoll_event, 29572add0d91Sopenharmony_ci maxevents: ::c_int, 29582add0d91Sopenharmony_ci timeout: ::c_int, 29592add0d91Sopenharmony_ci sigmask: *const ::sigset_t, 29602add0d91Sopenharmony_ci ) -> ::c_int; 29612add0d91Sopenharmony_ci 29622add0d91Sopenharmony_ci pub fn epoll_create(size: ::c_int) -> ::c_int; 29632add0d91Sopenharmony_ci pub fn epoll_create1(flags: ::c_int) -> ::c_int; 29642add0d91Sopenharmony_ci pub fn epoll_wait( 29652add0d91Sopenharmony_ci epfd: ::c_int, 29662add0d91Sopenharmony_ci events: *mut ::epoll_event, 29672add0d91Sopenharmony_ci maxevents: ::c_int, 29682add0d91Sopenharmony_ci timeout: ::c_int, 29692add0d91Sopenharmony_ci ) -> ::c_int; 29702add0d91Sopenharmony_ci pub fn epoll_ctl(epfd: ::c_int, op: ::c_int, fd: ::c_int, event: *mut ::epoll_event) 29712add0d91Sopenharmony_ci -> ::c_int; 29722add0d91Sopenharmony_ci 29732add0d91Sopenharmony_ci #[cfg_attr( 29742add0d91Sopenharmony_ci any(target_os = "solaris", target_os = "illumos"), 29752add0d91Sopenharmony_ci link_name = "__posix_getgrnam_r" 29762add0d91Sopenharmony_ci )] 29772add0d91Sopenharmony_ci pub fn getgrnam_r( 29782add0d91Sopenharmony_ci name: *const ::c_char, 29792add0d91Sopenharmony_ci grp: *mut ::group, 29802add0d91Sopenharmony_ci buf: *mut ::c_char, 29812add0d91Sopenharmony_ci buflen: ::size_t, 29822add0d91Sopenharmony_ci result: *mut *mut ::group, 29832add0d91Sopenharmony_ci ) -> ::c_int; 29842add0d91Sopenharmony_ci pub fn thr_self() -> ::thread_t; 29852add0d91Sopenharmony_ci pub fn pthread_sigmask(how: ::c_int, set: *const sigset_t, oldset: *mut sigset_t) -> ::c_int; 29862add0d91Sopenharmony_ci pub fn sem_open(name: *const ::c_char, oflag: ::c_int, ...) -> *mut sem_t; 29872add0d91Sopenharmony_ci pub fn getgrnam(name: *const ::c_char) -> *mut ::group; 29882add0d91Sopenharmony_ci pub fn pthread_kill(thread: ::pthread_t, sig: ::c_int) -> ::c_int; 29892add0d91Sopenharmony_ci pub fn sched_get_priority_min(policy: ::c_int) -> ::c_int; 29902add0d91Sopenharmony_ci pub fn sched_get_priority_max(policy: ::c_int) -> ::c_int; 29912add0d91Sopenharmony_ci pub fn sched_getparam(pid: ::pid_t, param: *mut sched_param) -> ::c_int; 29922add0d91Sopenharmony_ci pub fn sched_setparam(pid: ::pid_t, param: *const sched_param) -> ::c_int; 29932add0d91Sopenharmony_ci pub fn sched_getscheduler(pid: ::pid_t) -> ::c_int; 29942add0d91Sopenharmony_ci pub fn sched_setscheduler( 29952add0d91Sopenharmony_ci pid: ::pid_t, 29962add0d91Sopenharmony_ci policy: ::c_int, 29972add0d91Sopenharmony_ci param: *const ::sched_param, 29982add0d91Sopenharmony_ci ) -> ::c_int; 29992add0d91Sopenharmony_ci pub fn sem_unlink(name: *const ::c_char) -> ::c_int; 30002add0d91Sopenharmony_ci pub fn daemon(nochdir: ::c_int, noclose: ::c_int) -> ::c_int; 30012add0d91Sopenharmony_ci #[cfg_attr( 30022add0d91Sopenharmony_ci any(target_os = "solaris", target_os = "illumos"), 30032add0d91Sopenharmony_ci link_name = "__posix_getpwnam_r" 30042add0d91Sopenharmony_ci )] 30052add0d91Sopenharmony_ci pub fn getpwnam_r( 30062add0d91Sopenharmony_ci name: *const ::c_char, 30072add0d91Sopenharmony_ci pwd: *mut passwd, 30082add0d91Sopenharmony_ci buf: *mut ::c_char, 30092add0d91Sopenharmony_ci buflen: ::size_t, 30102add0d91Sopenharmony_ci result: *mut *mut passwd, 30112add0d91Sopenharmony_ci ) -> ::c_int; 30122add0d91Sopenharmony_ci #[cfg_attr( 30132add0d91Sopenharmony_ci any(target_os = "solaris", target_os = "illumos"), 30142add0d91Sopenharmony_ci link_name = "__posix_getpwuid_r" 30152add0d91Sopenharmony_ci )] 30162add0d91Sopenharmony_ci pub fn getpwuid_r( 30172add0d91Sopenharmony_ci uid: ::uid_t, 30182add0d91Sopenharmony_ci pwd: *mut passwd, 30192add0d91Sopenharmony_ci buf: *mut ::c_char, 30202add0d91Sopenharmony_ci buflen: ::size_t, 30212add0d91Sopenharmony_ci result: *mut *mut passwd, 30222add0d91Sopenharmony_ci ) -> ::c_int; 30232add0d91Sopenharmony_ci #[cfg_attr( 30242add0d91Sopenharmony_ci any(target_os = "solaris", target_os = "illumos"), 30252add0d91Sopenharmony_ci link_name = "getpwent_r" 30262add0d91Sopenharmony_ci )] 30272add0d91Sopenharmony_ci fn native_getpwent_r(pwd: *mut passwd, buf: *mut ::c_char, buflen: ::c_int) -> *mut passwd; 30282add0d91Sopenharmony_ci #[cfg_attr( 30292add0d91Sopenharmony_ci any(target_os = "solaris", target_os = "illumos"), 30302add0d91Sopenharmony_ci link_name = "getgrent_r" 30312add0d91Sopenharmony_ci )] 30322add0d91Sopenharmony_ci fn native_getgrent_r(grp: *mut ::group, buf: *mut ::c_char, buflen: ::c_int) -> *mut ::group; 30332add0d91Sopenharmony_ci #[cfg_attr( 30342add0d91Sopenharmony_ci any(target_os = "solaris", target_os = "illumos"), 30352add0d91Sopenharmony_ci link_name = "__posix_sigwait" 30362add0d91Sopenharmony_ci )] 30372add0d91Sopenharmony_ci pub fn sigwait(set: *const sigset_t, sig: *mut ::c_int) -> ::c_int; 30382add0d91Sopenharmony_ci pub fn pthread_atfork( 30392add0d91Sopenharmony_ci prepare: ::Option<unsafe extern "C" fn()>, 30402add0d91Sopenharmony_ci parent: ::Option<unsafe extern "C" fn()>, 30412add0d91Sopenharmony_ci child: ::Option<unsafe extern "C" fn()>, 30422add0d91Sopenharmony_ci ) -> ::c_int; 30432add0d91Sopenharmony_ci pub fn getgrgid(gid: ::gid_t) -> *mut ::group; 30442add0d91Sopenharmony_ci pub fn setgrent(); 30452add0d91Sopenharmony_ci pub fn endgrent(); 30462add0d91Sopenharmony_ci pub fn getgrent() -> *mut ::group; 30472add0d91Sopenharmony_ci pub fn popen(command: *const c_char, mode: *const c_char) -> *mut ::FILE; 30482add0d91Sopenharmony_ci 30492add0d91Sopenharmony_ci pub fn dup3(src: ::c_int, dst: ::c_int, flags: ::c_int) -> ::c_int; 30502add0d91Sopenharmony_ci pub fn uname(buf: *mut ::utsname) -> ::c_int; 30512add0d91Sopenharmony_ci pub fn pipe2(fds: *mut ::c_int, flags: ::c_int) -> ::c_int; 30522add0d91Sopenharmony_ci 30532add0d91Sopenharmony_ci pub fn makeutx(ux: *const utmpx) -> *mut utmpx; 30542add0d91Sopenharmony_ci pub fn modutx(ux: *const utmpx) -> *mut utmpx; 30552add0d91Sopenharmony_ci pub fn updwtmpx(file: *const ::c_char, ut: *const utmpx) -> ::c_int; 30562add0d91Sopenharmony_ci pub fn utmpxname(file: *const ::c_char) -> ::c_int; 30572add0d91Sopenharmony_ci pub fn getutxent() -> *mut utmpx; 30582add0d91Sopenharmony_ci pub fn getutxid(ut: *const utmpx) -> *mut utmpx; 30592add0d91Sopenharmony_ci pub fn getutxline(ut: *const utmpx) -> *mut utmpx; 30602add0d91Sopenharmony_ci pub fn pututxline(ut: *const utmpx) -> *mut utmpx; 30612add0d91Sopenharmony_ci pub fn setutxent(); 30622add0d91Sopenharmony_ci pub fn endutxent(); 30632add0d91Sopenharmony_ci 30642add0d91Sopenharmony_ci pub fn endutent(); 30652add0d91Sopenharmony_ci pub fn getutent() -> *mut utmp; 30662add0d91Sopenharmony_ci pub fn getutid(u: *const utmp) -> *mut utmp; 30672add0d91Sopenharmony_ci pub fn getutline(u: *const utmp) -> *mut utmp; 30682add0d91Sopenharmony_ci pub fn pututline(u: *const utmp) -> *mut utmp; 30692add0d91Sopenharmony_ci pub fn setutent(); 30702add0d91Sopenharmony_ci pub fn utmpname(file: *const ::c_char) -> ::c_int; 30712add0d91Sopenharmony_ci 30722add0d91Sopenharmony_ci pub fn getutmp(ux: *const utmpx, u: *mut utmp); 30732add0d91Sopenharmony_ci pub fn getutmpx(u: *const utmp, ux: *mut utmpx); 30742add0d91Sopenharmony_ci pub fn updwtmp(file: *const ::c_char, u: *mut utmp); 30752add0d91Sopenharmony_ci 30762add0d91Sopenharmony_ci pub fn ntp_adjtime(buf: *mut timex) -> ::c_int; 30772add0d91Sopenharmony_ci pub fn ntp_gettime(buf: *mut ntptimeval) -> ::c_int; 30782add0d91Sopenharmony_ci 30792add0d91Sopenharmony_ci pub fn timer_create(clock_id: clockid_t, evp: *mut sigevent, timerid: *mut timer_t) -> ::c_int; 30802add0d91Sopenharmony_ci pub fn timer_delete(timerid: timer_t) -> ::c_int; 30812add0d91Sopenharmony_ci pub fn timer_getoverrun(timerid: timer_t) -> ::c_int; 30822add0d91Sopenharmony_ci pub fn timer_gettime(timerid: timer_t, value: *mut itimerspec) -> ::c_int; 30832add0d91Sopenharmony_ci pub fn timer_settime( 30842add0d91Sopenharmony_ci timerid: timer_t, 30852add0d91Sopenharmony_ci flags: ::c_int, 30862add0d91Sopenharmony_ci value: *const itimerspec, 30872add0d91Sopenharmony_ci ovalue: *mut itimerspec, 30882add0d91Sopenharmony_ci ) -> ::c_int; 30892add0d91Sopenharmony_ci 30902add0d91Sopenharmony_ci pub fn ucred_get(pid: ::pid_t) -> *mut ucred_t; 30912add0d91Sopenharmony_ci pub fn getpeerucred(fd: ::c_int, ucred: *mut *mut ucred_t) -> ::c_int; 30922add0d91Sopenharmony_ci 30932add0d91Sopenharmony_ci pub fn ucred_free(ucred: *mut ucred_t); 30942add0d91Sopenharmony_ci 30952add0d91Sopenharmony_ci pub fn ucred_geteuid(ucred: *const ucred_t) -> ::uid_t; 30962add0d91Sopenharmony_ci pub fn ucred_getruid(ucred: *const ucred_t) -> ::uid_t; 30972add0d91Sopenharmony_ci pub fn ucred_getsuid(ucred: *const ucred_t) -> ::uid_t; 30982add0d91Sopenharmony_ci pub fn ucred_getegid(ucred: *const ucred_t) -> ::gid_t; 30992add0d91Sopenharmony_ci pub fn ucred_getrgid(ucred: *const ucred_t) -> ::gid_t; 31002add0d91Sopenharmony_ci pub fn ucred_getsgid(ucred: *const ucred_t) -> ::gid_t; 31012add0d91Sopenharmony_ci pub fn ucred_getgroups(ucred: *const ucred_t, groups: *mut *const ::gid_t) -> ::c_int; 31022add0d91Sopenharmony_ci pub fn ucred_getpid(ucred: *const ucred_t) -> ::pid_t; 31032add0d91Sopenharmony_ci pub fn ucred_getprojid(ucred: *const ucred_t) -> projid_t; 31042add0d91Sopenharmony_ci pub fn ucred_getzoneid(ucred: *const ucred_t) -> zoneid_t; 31052add0d91Sopenharmony_ci pub fn ucred_getpflags(ucred: *const ucred_t, flags: ::c_uint) -> ::c_uint; 31062add0d91Sopenharmony_ci 31072add0d91Sopenharmony_ci pub fn ucred_size() -> ::size_t; 31082add0d91Sopenharmony_ci 31092add0d91Sopenharmony_ci pub fn pset_create(newpset: *mut ::psetid_t) -> ::c_int; 31102add0d91Sopenharmony_ci pub fn pset_destroy(pset: ::psetid_t) -> ::c_int; 31112add0d91Sopenharmony_ci pub fn pset_assign(pset: ::psetid_t, cpu: ::processorid_t, opset: *mut psetid_t) -> ::c_int; 31122add0d91Sopenharmony_ci pub fn pset_info( 31132add0d91Sopenharmony_ci pset: ::psetid_t, 31142add0d91Sopenharmony_ci tpe: *mut ::c_int, 31152add0d91Sopenharmony_ci numcpus: *mut ::c_uint, 31162add0d91Sopenharmony_ci cpulist: *mut processorid_t, 31172add0d91Sopenharmony_ci ) -> ::c_int; 31182add0d91Sopenharmony_ci pub fn pset_bind( 31192add0d91Sopenharmony_ci pset: ::psetid_t, 31202add0d91Sopenharmony_ci idtype: ::idtype_t, 31212add0d91Sopenharmony_ci id: ::id_t, 31222add0d91Sopenharmony_ci opset: *mut psetid_t, 31232add0d91Sopenharmony_ci ) -> ::c_int; 31242add0d91Sopenharmony_ci pub fn pset_list(pset: *mut psetid_t, numpsets: *mut ::c_uint) -> ::c_int; 31252add0d91Sopenharmony_ci pub fn pset_setattr(pset: psetid_t, attr: ::c_uint) -> ::c_int; 31262add0d91Sopenharmony_ci pub fn pset_getattr(pset: psetid_t, attr: *mut ::c_uint) -> ::c_int; 31272add0d91Sopenharmony_ci pub fn processor_bind( 31282add0d91Sopenharmony_ci idtype: ::idtype_t, 31292add0d91Sopenharmony_ci id: ::id_t, 31302add0d91Sopenharmony_ci new_binding: ::processorid_t, 31312add0d91Sopenharmony_ci old_binding: *mut processorid_t, 31322add0d91Sopenharmony_ci ) -> ::c_int; 31332add0d91Sopenharmony_ci pub fn p_online(processorid: ::processorid_t, flag: ::c_int) -> ::c_int; 31342add0d91Sopenharmony_ci pub fn processor_info(processorid: ::processorid_t, infop: *mut processor_info_t) -> ::c_int; 31352add0d91Sopenharmony_ci 31362add0d91Sopenharmony_ci pub fn getexecname() -> *const ::c_char; 31372add0d91Sopenharmony_ci 31382add0d91Sopenharmony_ci pub fn gethostid() -> ::c_long; 31392add0d91Sopenharmony_ci 31402add0d91Sopenharmony_ci pub fn getpflags(flags: ::c_uint) -> ::c_uint; 31412add0d91Sopenharmony_ci pub fn setpflags(flags: ::c_uint, value: ::c_uint) -> ::c_int; 31422add0d91Sopenharmony_ci 31432add0d91Sopenharmony_ci pub fn sysinfo(command: ::c_int, buf: *mut ::c_char, count: ::c_long) -> ::c_int; 31442add0d91Sopenharmony_ci 31452add0d91Sopenharmony_ci pub fn faccessat(fd: ::c_int, path: *const ::c_char, amode: ::c_int, flag: ::c_int) -> ::c_int; 31462add0d91Sopenharmony_ci 31472add0d91Sopenharmony_ci // #include <link.h> 31482add0d91Sopenharmony_ci #[cfg(any(target_arch = "x86", target_arch = "x86_64"))] 31492add0d91Sopenharmony_ci pub fn dl_iterate_phdr( 31502add0d91Sopenharmony_ci callback: ::Option< 31512add0d91Sopenharmony_ci unsafe extern "C" fn( 31522add0d91Sopenharmony_ci info: *mut dl_phdr_info, 31532add0d91Sopenharmony_ci size: usize, 31542add0d91Sopenharmony_ci data: *mut ::c_void, 31552add0d91Sopenharmony_ci ) -> ::c_int, 31562add0d91Sopenharmony_ci >, 31572add0d91Sopenharmony_ci data: *mut ::c_void, 31582add0d91Sopenharmony_ci ) -> ::c_int; 31592add0d91Sopenharmony_ci pub fn getpagesize() -> ::c_int; 31602add0d91Sopenharmony_ci pub fn getpagesizes(pagesize: *mut ::size_t, nelem: ::c_int) -> ::c_int; 31612add0d91Sopenharmony_ci pub fn mmapobj( 31622add0d91Sopenharmony_ci fd: ::c_int, 31632add0d91Sopenharmony_ci flags: ::c_uint, 31642add0d91Sopenharmony_ci storage: *mut mmapobj_result_t, 31652add0d91Sopenharmony_ci elements: *mut ::c_uint, 31662add0d91Sopenharmony_ci arg: *mut ::c_void, 31672add0d91Sopenharmony_ci ) -> ::c_int; 31682add0d91Sopenharmony_ci pub fn meminfo( 31692add0d91Sopenharmony_ci inaddr: *const u64, 31702add0d91Sopenharmony_ci addr_count: ::c_int, 31712add0d91Sopenharmony_ci info_req: *const ::c_uint, 31722add0d91Sopenharmony_ci info_count: ::c_int, 31732add0d91Sopenharmony_ci outdata: *mut u64, 31742add0d91Sopenharmony_ci validity: *mut ::c_uint, 31752add0d91Sopenharmony_ci ) -> ::c_int; 31762add0d91Sopenharmony_ci 31772add0d91Sopenharmony_ci pub fn strcasecmp_l(s1: *const ::c_char, s2: *const ::c_char, loc: ::locale_t) -> ::c_int; 31782add0d91Sopenharmony_ci pub fn strncasecmp_l( 31792add0d91Sopenharmony_ci s1: *const ::c_char, 31802add0d91Sopenharmony_ci s2: *const ::c_char, 31812add0d91Sopenharmony_ci n: ::size_t, 31822add0d91Sopenharmony_ci loc: ::locale_t, 31832add0d91Sopenharmony_ci ) -> ::c_int; 31842add0d91Sopenharmony_ci pub fn strsep(string: *mut *mut ::c_char, delim: *const ::c_char) -> *mut ::c_char; 31852add0d91Sopenharmony_ci 31862add0d91Sopenharmony_ci pub fn getisax(array: *mut u32, n: ::c_uint) -> ::c_uint; 31872add0d91Sopenharmony_ci 31882add0d91Sopenharmony_ci pub fn backtrace(buffer: *mut *mut ::c_void, size: ::c_int) -> ::c_int; 31892add0d91Sopenharmony_ci pub fn backtrace_symbols(buffer: *const *mut ::c_void, size: ::c_int) -> *mut *mut ::c_char; 31902add0d91Sopenharmony_ci pub fn backtrace_symbols_fd(buffer: *const *mut ::c_void, size: ::c_int, fd: ::c_int); 31912add0d91Sopenharmony_ci 31922add0d91Sopenharmony_ci pub fn getopt_long( 31932add0d91Sopenharmony_ci argc: ::c_int, 31942add0d91Sopenharmony_ci argv: *const *mut c_char, 31952add0d91Sopenharmony_ci optstring: *const c_char, 31962add0d91Sopenharmony_ci longopts: *const option, 31972add0d91Sopenharmony_ci longindex: *mut ::c_int, 31982add0d91Sopenharmony_ci ) -> ::c_int; 31992add0d91Sopenharmony_ci} 32002add0d91Sopenharmony_ci 32012add0d91Sopenharmony_ci#[link(name = "sendfile")] 32022add0d91Sopenharmony_ciextern "C" { 32032add0d91Sopenharmony_ci pub fn sendfile(out_fd: ::c_int, in_fd: ::c_int, off: *mut ::off_t, len: ::size_t) 32042add0d91Sopenharmony_ci -> ::ssize_t; 32052add0d91Sopenharmony_ci pub fn sendfilev( 32062add0d91Sopenharmony_ci fildes: ::c_int, 32072add0d91Sopenharmony_ci vec: *const sendfilevec_t, 32082add0d91Sopenharmony_ci sfvcnt: ::c_int, 32092add0d91Sopenharmony_ci xferred: *mut ::size_t, 32102add0d91Sopenharmony_ci ) -> ::ssize_t; 32112add0d91Sopenharmony_ci} 32122add0d91Sopenharmony_ci 32132add0d91Sopenharmony_ci#[link(name = "lgrp")] 32142add0d91Sopenharmony_ciextern "C" { 32152add0d91Sopenharmony_ci pub fn lgrp_init(view: lgrp_view_t) -> lgrp_cookie_t; 32162add0d91Sopenharmony_ci pub fn lgrp_fini(cookie: lgrp_cookie_t) -> ::c_int; 32172add0d91Sopenharmony_ci pub fn lgrp_affinity_get( 32182add0d91Sopenharmony_ci idtype: ::idtype_t, 32192add0d91Sopenharmony_ci id: ::id_t, 32202add0d91Sopenharmony_ci lgrp: ::lgrp_id_t, 32212add0d91Sopenharmony_ci ) -> ::lgrp_affinity_t; 32222add0d91Sopenharmony_ci pub fn lgrp_affinity_set( 32232add0d91Sopenharmony_ci idtype: ::idtype_t, 32242add0d91Sopenharmony_ci id: ::id_t, 32252add0d91Sopenharmony_ci lgrp: ::lgrp_id_t, 32262add0d91Sopenharmony_ci aff: lgrp_affinity_t, 32272add0d91Sopenharmony_ci ) -> ::lgrp_affinity_t; 32282add0d91Sopenharmony_ci pub fn lgrp_cpus( 32292add0d91Sopenharmony_ci cookie: ::lgrp_cookie_t, 32302add0d91Sopenharmony_ci lgrp: ::lgrp_id_t, 32312add0d91Sopenharmony_ci cpuids: *mut ::processorid_t, 32322add0d91Sopenharmony_ci count: ::c_uint, 32332add0d91Sopenharmony_ci content: ::lgrp_content_t, 32342add0d91Sopenharmony_ci ) -> ::c_int; 32352add0d91Sopenharmony_ci pub fn lgrp_mem_size( 32362add0d91Sopenharmony_ci cookie: ::lgrp_cookie_t, 32372add0d91Sopenharmony_ci lgrp: ::lgrp_id_t, 32382add0d91Sopenharmony_ci tpe: ::lgrp_mem_size_flag_t, 32392add0d91Sopenharmony_ci content: ::lgrp_content_t, 32402add0d91Sopenharmony_ci ) -> ::lgrp_mem_size_t; 32412add0d91Sopenharmony_ci pub fn lgrp_nlgrps(cookie: ::lgrp_cookie_t) -> ::c_int; 32422add0d91Sopenharmony_ci pub fn lgrp_view(cookie: ::lgrp_cookie_t) -> ::lgrp_view_t; 32432add0d91Sopenharmony_ci pub fn lgrp_home(idtype: ::idtype_t, id: ::id_t) -> ::lgrp_id_t; 32442add0d91Sopenharmony_ci pub fn lgrp_version(version: ::c_int) -> ::c_int; 32452add0d91Sopenharmony_ci pub fn lgrp_resources( 32462add0d91Sopenharmony_ci cookie: ::lgrp_cookie_t, 32472add0d91Sopenharmony_ci lgrp: ::lgrp_id_t, 32482add0d91Sopenharmony_ci lgrps: *mut ::lgrp_id_t, 32492add0d91Sopenharmony_ci count: ::c_uint, 32502add0d91Sopenharmony_ci tpe: ::lgrp_rsrc_t, 32512add0d91Sopenharmony_ci ) -> ::c_int; 32522add0d91Sopenharmony_ci pub fn lgrp_root(cookie: ::lgrp_cookie_t) -> ::lgrp_id_t; 32532add0d91Sopenharmony_ci} 32542add0d91Sopenharmony_ci 32552add0d91Sopenharmony_cimod compat; 32562add0d91Sopenharmony_cipub use self::compat::*; 32572add0d91Sopenharmony_ci 32582add0d91Sopenharmony_cicfg_if! { 32592add0d91Sopenharmony_ci if #[cfg(target_os = "illumos")] { 32602add0d91Sopenharmony_ci mod illumos; 32612add0d91Sopenharmony_ci pub use self::illumos::*; 32622add0d91Sopenharmony_ci } else if #[cfg(target_os = "solaris")] { 32632add0d91Sopenharmony_ci mod solaris; 32642add0d91Sopenharmony_ci pub use self::solaris::*; 32652add0d91Sopenharmony_ci } else { 32662add0d91Sopenharmony_ci // Unknown target_os 32672add0d91Sopenharmony_ci } 32682add0d91Sopenharmony_ci} 32692add0d91Sopenharmony_ci 32702add0d91Sopenharmony_cicfg_if! { 32712add0d91Sopenharmony_ci if #[cfg(target_arch = "x86_64")] { 32722add0d91Sopenharmony_ci mod x86_64; 32732add0d91Sopenharmony_ci mod x86_common; 32742add0d91Sopenharmony_ci pub use self::x86_64::*; 32752add0d91Sopenharmony_ci pub use self::x86_common::*; 32762add0d91Sopenharmony_ci } else if #[cfg(target_arch = "x86")] { 32772add0d91Sopenharmony_ci mod x86; 32782add0d91Sopenharmony_ci mod x86_common; 32792add0d91Sopenharmony_ci pub use self::x86::*; 32802add0d91Sopenharmony_ci pub use self::x86_common::*; 32812add0d91Sopenharmony_ci } 32822add0d91Sopenharmony_ci} 3283