sanitizer_platform_limits_posix.cc revision b5cf98f76fd62236f2945bff17b3cdb4e8a5c2f4
10a4e901cdfb5505a896d30aa8c2e04fce0fbe069vegorov@chromium.org//===-- sanitizer_platform_limits_posix.cc --------------------------------===// 2a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org// 3a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org// The LLVM Compiler Infrastructure 4a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org// 5a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org// This file is distributed under the University of Illinois Open Source 6a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org// License. See LICENSE.TXT for details. 7a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org// 8a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org//===----------------------------------------------------------------------===// 9a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org// 10a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org// This file is a part of Sanitizer common code. 11a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org// 12a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org// Sizes and layouts of platform-specific POSIX data structures. 13a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org//===----------------------------------------------------------------------===// 14a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 15a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 16a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include "sanitizer_platform.h" 17a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_LINUX || SANITIZER_MAC 18a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 19a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include "sanitizer_internal_defs.h" 20a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include "sanitizer_platform_limits_posix.h" 21a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 22a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <arpa/inet.h> 23a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <dirent.h> 24a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <grp.h> 25a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <net/if.h> 26a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <net/if_arp.h> 27a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <net/route.h> 28a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <netdb.h> 29a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <pthread.h> 30a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <pwd.h> 31a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <signal.h> 327979bbb1df2eaff193e85d44c8da1ffa1525b7fcfschneider@chromium.org#include <stddef.h> 331c09276ce2ac5214e81ca554360b9f101187893blrn@chromium.org#include <sys/resource.h> 34a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/socket.h> 35fb144a0716afe7ab8bf245f2391a9e53b3db3c89fschneider@chromium.org#include <sys/stat.h> 367979bbb1df2eaff193e85d44c8da1ffa1525b7fcfschneider@chromium.org#include <sys/time.h> 37a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/types.h> 38ddda9e81d3175130f2029c0e1205d265a00c32edjkummerow@chromium.org#include <sys/utsname.h> 39ddda9e81d3175130f2029c0e1205d265a00c32edjkummerow@chromium.org#include <termios.h> 40a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <time.h> 41a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 42a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_LINUX 43a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/mount.h> 44a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/sysinfo.h> 45a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/vt.h> 46a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/cdrom.h> 47a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/fd.h> 48a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/fs.h> 49a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/hdreg.h> 50a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/input.h> 51a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/ioctl.h> 52a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/soundcard.h> 53a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif 54a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 55dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org#if !SANITIZER_ANDROID 56a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/ucontext.h> 57a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif 58a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 59a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_LINUX && !SANITIZER_ANDROID 60a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <net/if_ppp.h> 61a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <netax25/ax25.h> 6231b1277ec3b8cd17acb01c66d85a456159072157kmillikin@chromium.org#include <netipx/ipx.h> 63a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <netrom/netrom.h> 64a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <scsi/scsi.h> 65a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/mtio.h> 66a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/kd.h> 67a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/cyclades.h> 68a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/if_eql.h> 69a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/if_plip.h> 70a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/lp.h> 71a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/mroute.h> 72a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/mroute6.h> 73a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/scc.h> 74a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/serial.h> 75a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif // SANITIZER_LINUX && !SANITIZER_ANDROID 764f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org 77a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_ANDROID 78a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/kd.h> 79a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/mtio.h> 80a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/ppp_defs.h> 81a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <linux/if_ppp.h> 82a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif 83a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 84a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_LINUX 85a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <link.h> 86a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/vfs.h> 87a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/epoll.h> 88a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif // SANITIZER_LINUX 89a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 90a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_MAC 91a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <netinet/ip_mroute.h> 92a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#include <sys/filio.h> 93c53e10d01c5495df3896b9d318910b58688c6929kmillikin@chromium.org#include <sys/sockio.h> 944f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org#endif 954f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org 964f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.orgnamespace __sanitizer { 974f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org unsigned struct_dirent_sz = sizeof(struct dirent); 980a4e901cdfb5505a896d30aa8c2e04fce0fbe069vegorov@chromium.org unsigned struct_utsname_sz = sizeof(struct utsname); 994f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org unsigned struct_stat_sz = sizeof(struct stat); 100a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_stat64_sz = sizeof(struct stat64); 10183aa54905e559090bea7771b83f188762cfcf082ricow@chromium.org unsigned struct_rusage_sz = sizeof(struct rusage); 102a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_tm_sz = sizeof(struct tm); 103a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_passwd_sz = sizeof(struct passwd); 104a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_group_sz = sizeof(struct group); 1057b26015ac58e54e88f4214e248f772ad4f055477whesse@chromium.org unsigned siginfo_t_sz = sizeof(siginfo_t); 106a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_sigaction_sz = sizeof(struct sigaction); 1074acdc2c8d4caecf7606db8af710366c1d6e28fe5whesse@chromium.org unsigned struct_itimerval_sz = sizeof(struct itimerval); 108c53e10d01c5495df3896b9d318910b58688c6929kmillikin@chromium.org unsigned pthread_t_sz = sizeof(pthread_t); 109a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned pid_t_sz = sizeof(pid_t); 11049edbdf52640c88918f8e6638ab4965819eb1dfekmillikin@chromium.org unsigned timeval_sz = sizeof(timeval); 111a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned uid_t_sz = sizeof(uid_t); 112a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 113a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if !SANITIZER_ANDROID 1144f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org unsigned ucontext_t_sz = sizeof(ucontext_t); 1154f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org#endif // !SANITIZER_ANDROID 1163847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com 117a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_LINUX 118d2c22f0121ebc55ee26a9e742f0fd7c0b8397730kmillikin@chromium.org unsigned struct_rlimit_sz = sizeof(struct rlimit); 119160a7b0747492f3f735353d9582521f3314bf4dfdanno@chromium.org unsigned struct_statfs_sz = sizeof(struct statfs); 1204f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org unsigned struct_epoll_event_sz = sizeof(struct epoll_event); 1214f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org unsigned struct_sysinfo_sz = sizeof(struct sysinfo); 1224f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org unsigned struct_timespec_sz = sizeof(struct timespec); 1234f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org#endif // SANITIZER_LINUX 1244f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org 1259e3e0b618a14a05efd7d66f20bac4423dd3a1a2ffschneider@chromium.org#if SANITIZER_LINUX && !SANITIZER_ANDROID 126a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_dirent64_sz = sizeof(struct dirent64); 127c6c5718277d4047fad1e034396228ce15571b5a4sgjesse@chromium.org unsigned struct_rlimit64_sz = sizeof(struct rlimit64); 128a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_statfs64_sz = sizeof(struct statfs64); 1294d3fe4e246b0312eba361689f288ddf8dd516960danno@chromium.org#endif // SANITIZER_LINUX && !SANITIZER_ANDROID 130378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org 131c36ce6e8979bbbd43539f0a0effc87ea20dd65cckmillikin@chromium.org uptr sig_ign = (uptr)SIG_IGN; 132c36ce6e8979bbbd43539f0a0effc87ea20dd65cckmillikin@chromium.org uptr sig_dfl = (uptr)SIG_DFL; 133717967fd64e99e759ff094df6f069440cc866266rossberg@chromium.org 134a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_LINUX 135a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org int e_tabsz = (int)E_TABSZ; 1367979bbb1df2eaff193e85d44c8da1ffa1525b7fcfschneider@chromium.org#endif 137a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 1387979bbb1df2eaff193e85d44c8da1ffa1525b7fcfschneider@chromium.org uptr __sanitizer_get_sigaction_sa_sigaction(void *act) { 139a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org struct sigaction *a = (struct sigaction *)act; 140a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org // Check that sa_sigaction and sa_handler are the same. 141a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org CHECK((void *)&(a->sa_sigaction) == (void *)&(a->sa_handler)); 142a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org return (uptr) a->sa_sigaction; 143a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org } 14483aa54905e559090bea7771b83f188762cfcf082ricow@chromium.org void __sanitizer_set_sigaction_sa_sigaction(void *act, uptr cb) { 145a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org struct sigaction *a = (struct sigaction *)act; 1465f0c45f2cacb31d36a8f80c31f17bda7751a3644ager@chromium.org a->sa_sigaction = (void (*)(int, siginfo_t *, void *))cb; 147a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org } 148a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org bool __sanitizer_get_sigaction_sa_siginfo(void *act) { 149a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org struct sigaction *a = (struct sigaction *)act; 150a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org return a->sa_flags & SA_SIGINFO; 151a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org } 152a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 153a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org int af_inet = (int)AF_INET; 154e297f5973a8a9ff0d9945da3f1e2d8a6230c294djkummerow@chromium.org int af_inet6 = (int)AF_INET6; 155a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 15683aa54905e559090bea7771b83f188762cfcf082ricow@chromium.org uptr __sanitizer_in_addr_sz(int af) { 15774f333bce721daf6b1f9d7d3d3faa623f77658d7vegorov@chromium.org if (af == AF_INET) 15874f333bce721daf6b1f9d7d3d3faa623f77658d7vegorov@chromium.org return sizeof(struct in_addr); 159717967fd64e99e759ff094df6f069440cc866266rossberg@chromium.org else if (af == AF_INET6) 160a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org return sizeof(struct in6_addr); 161a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org else 162d2be901879306d8ff27e78e37783028d581d46fcricow@chromium.org return 0; 163a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org } 164a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 165160a7b0747492f3f735353d9582521f3314bf4dfdanno@chromium.org // ioctl arguments 1660a4e901cdfb5505a896d30aa8c2e04fce0fbe069vegorov@chromium.org unsigned struct_arpreq_sz = sizeof(struct arpreq); 167b08986cb66c3f6687247cb6da186c1e73057e399whesse@chromium.org unsigned struct_ifreq_sz = sizeof(struct ifreq); 1680a4e901cdfb5505a896d30aa8c2e04fce0fbe069vegorov@chromium.org unsigned struct_termios_sz = sizeof(struct termios); 169a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_winsize_sz = sizeof(struct winsize); 170d2be901879306d8ff27e78e37783028d581d46fcricow@chromium.org 171a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_LINUX 172ea88ce93dcb41a9200ec8747ae7642a5db1f4ce7sgjesse@chromium.org unsigned struct_cdrom_msf_sz = sizeof(struct cdrom_msf); 173d2be901879306d8ff27e78e37783028d581d46fcricow@chromium.org unsigned struct_cdrom_multisession_sz = sizeof(struct cdrom_multisession); 174a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_cdrom_read_audio_sz = sizeof(struct cdrom_read_audio); 1754f693d6b99ffdbc05e5e211e08ed5039e13279d2ricow@chromium.org unsigned struct_cdrom_subchnl_sz = sizeof(struct cdrom_subchnl); 176a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_cdrom_ti_sz = sizeof(struct cdrom_ti); 177a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_cdrom_tocentry_sz = sizeof(struct cdrom_tocentry); 178d2be901879306d8ff27e78e37783028d581d46fcricow@chromium.org unsigned struct_cdrom_tochdr_sz = sizeof(struct cdrom_tochdr); 179a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_cdrom_volctrl_sz = sizeof(struct cdrom_volctrl); 180a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SOUND_VERSION >= 0x040000 181a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_copr_buffer_sz = 0; 182a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_copr_debug_buf_sz = 0; 183a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_copr_msg_sz = 0; 184a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#else 185a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_copr_buffer_sz = sizeof(struct copr_buffer); 1862c99e28a7b1fcb3767dc7c0088514fe53be784c5ricow@chromium.org unsigned struct_copr_debug_buf_sz = sizeof(struct copr_debug_buf); 1877979bbb1df2eaff193e85d44c8da1ffa1525b7fcfschneider@chromium.org unsigned struct_copr_msg_sz = sizeof(struct copr_msg); 188a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif 189a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_ff_effect_sz = sizeof(struct ff_effect); 190a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_floppy_drive_params_sz = sizeof(struct floppy_drive_params); 19183aa54905e559090bea7771b83f188762cfcf082ricow@chromium.org unsigned struct_floppy_drive_struct_sz = sizeof(struct floppy_drive_struct); 192a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_floppy_fdc_state_sz = sizeof(struct floppy_fdc_state); 193a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_floppy_max_errors_sz = sizeof(struct floppy_max_errors); 194dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned struct_floppy_raw_cmd_sz = sizeof(struct floppy_raw_cmd); 195a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_floppy_struct_sz = sizeof(struct floppy_struct); 196a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_floppy_write_errors_sz = sizeof(struct floppy_write_errors); 197a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_format_descr_sz = sizeof(struct format_descr); 198a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_hd_driveid_sz = sizeof(struct hd_driveid); 199dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned struct_hd_geometry_sz = sizeof(struct hd_geometry); 200a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_input_absinfo_sz = sizeof(struct input_absinfo); 201a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_input_id_sz = sizeof(struct input_id); 202dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned struct_midi_info_sz = sizeof(struct midi_info); 203a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_mtget_sz = sizeof(struct mtget); 204dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned struct_mtop_sz = sizeof(struct mtop); 205dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned struct_mtpos_sz = sizeof(struct mtpos); 206dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned struct_rtentry_sz = sizeof(struct rtentry); 207dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned struct_sbi_instrument_sz = sizeof(struct sbi_instrument); 208dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned struct_seq_event_rec_sz = sizeof(struct seq_event_rec); 209a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_synth_info_sz = sizeof(struct synth_info); 210a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_termio_sz = sizeof(struct termio); 211a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_vt_consize_sz = sizeof(struct vt_consize); 212a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_vt_mode_sz = sizeof(struct vt_mode); 2138f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned struct_vt_sizes_sz = sizeof(struct vt_sizes); 2148f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned struct_vt_stat_sz = sizeof(struct vt_stat); 2158f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org#endif 2168f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org 2178f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org#if SANITIZER_LINUX && !SANITIZER_ANDROID 218a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_audio_buf_info_sz = sizeof(struct audio_buf_info); 219a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_ax25_parms_struct_sz = sizeof(struct ax25_parms_struct); 2208f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned struct_cyclades_monitor_sz = sizeof(struct cyclades_monitor); 2218f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org#if EV_VERSION > (0x010000) 2228f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned struct_input_keymap_entry_sz = sizeof(struct input_keymap_entry); 2238f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org#else 224a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_input_keymap_entry_sz = 0; 225a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif 226a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_ipx_config_data_sz = sizeof(struct ipx_config_data); 227a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_kbdiacrs_sz = sizeof(struct kbdiacrs); 228a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_kbentry_sz = sizeof(struct kbentry); 229a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_kbkeycode_sz = sizeof(struct kbkeycode); 230ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org unsigned struct_kbsentry_sz = sizeof(struct kbsentry); 231ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org unsigned struct_mtconfiginfo_sz = sizeof(struct mtconfiginfo); 232ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org unsigned struct_nr_parms_struct_sz = sizeof(struct nr_parms_struct); 233ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org unsigned struct_ppp_stats_sz = sizeof(struct ppp_stats); 234ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org unsigned struct_scc_modem_sz = sizeof(struct scc_modem); 235a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_scc_stat_sz = sizeof(struct scc_stat); 236a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_serial_multiport_struct_sz 237a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org = sizeof(struct serial_multiport_struct); 238a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_serial_struct_sz = sizeof(struct serial_struct); 239a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_sockaddr_ax25_sz = sizeof(struct sockaddr_ax25); 2408f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned struct_unimapdesc_sz = sizeof(struct unimapdesc); 241ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org unsigned struct_unimapinit_sz = sizeof(struct unimapinit); 242ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org#endif 243ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org 2448f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org#if !SANITIZER_ANDROID 2458f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned struct_sioc_sg_req_sz = sizeof(struct sioc_sg_req); 246a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned struct_sioc_vif_req_sz = sizeof(struct sioc_vif_req); 2478f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org#endif 2488f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org 2495f0c45f2cacb31d36a8f80c31f17bda7751a3644ager@chromium.org unsigned IOCTL_NOT_PRESENT = 0; 250a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 251a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FIOASYNC = FIOASYNC; 252a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FIOCLEX = FIOCLEX; 253a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FIOGETOWN = FIOGETOWN; 254a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FIONBIO = FIONBIO; 2558f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned IOCTL_FIONCLEX = FIONCLEX; 2568f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned IOCTL_FIOSETOWN = FIOSETOWN; 257a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCADDMULTI = SIOCADDMULTI; 2588f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned IOCTL_SIOCATMARK = SIOCATMARK; 2598f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned IOCTL_SIOCDELMULTI = SIOCDELMULTI; 2608f806e8b8f108ca2c8899c5d31861ef1273dcd4akarlklose@chromium.org unsigned IOCTL_SIOCGIFADDR = SIOCGIFADDR; 261a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFBRDADDR = SIOCGIFBRDADDR; 262a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFCONF = SIOCGIFCONF; 263a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFDSTADDR = SIOCGIFDSTADDR; 264a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFFLAGS = SIOCGIFFLAGS; 265a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFMETRIC = SIOCGIFMETRIC; 266a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFMTU = SIOCGIFMTU; 267a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFNETMASK = SIOCGIFNETMASK; 268a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGPGRP = SIOCGPGRP; 269a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSIFADDR = SIOCSIFADDR; 270a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSIFBRDADDR = SIOCSIFBRDADDR; 271a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSIFDSTADDR = SIOCSIFDSTADDR; 272a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSIFFLAGS = SIOCSIFFLAGS; 273a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSIFMETRIC = SIOCSIFMETRIC; 274a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSIFMTU = SIOCSIFMTU; 275a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSIFNETMASK = SIOCSIFNETMASK; 276a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSPGRP = SIOCSPGRP; 277a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCCONS = TIOCCONS; 278a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCEXCL = TIOCEXCL; 279a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCGETD = TIOCGETD; 280496c03a64f12710e837204e261ef155601247895sgjesse@chromium.org unsigned IOCTL_TIOCGPGRP = TIOCGPGRP; 281a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCGWINSZ = TIOCGWINSZ; 282a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCMBIC = TIOCMBIC; 283a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCMBIS = TIOCMBIS; 284a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCMGET = TIOCMGET; 285a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCMSET = TIOCMSET; 286a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCNOTTY = TIOCNOTTY; 287a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCNXCL = TIOCNXCL; 288a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCOUTQ = TIOCOUTQ; 289a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCPKT = TIOCPKT; 290496c03a64f12710e837204e261ef155601247895sgjesse@chromium.org unsigned IOCTL_TIOCSCTTY = TIOCSCTTY; 291a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCSETD = TIOCSETD; 2923a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_TIOCSPGRP = TIOCSPGRP; 293a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCSTI = TIOCSTI; 294a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCSWINSZ = TIOCSWINSZ; 295a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if (SANITIZER_LINUX && !SANITIZER_ANDROID) || SANITIZER_MAC 296a9aa5fa8ae2a2b43a94e6462ded2cd51445e9ee3ager@chromium.org unsigned IOCTL_SIOCGETSGCNT = SIOCGETSGCNT; 297a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGETVIFCNT = SIOCGETVIFCNT; 298a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif 299a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_LINUX 300a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGABS = EVIOCGABS(0); 301496c03a64f12710e837204e261ef155601247895sgjesse@chromium.org unsigned IOCTL_EVIOCGBIT = EVIOCGBIT(0, 0); 302a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGEFFECTS = EVIOCGEFFECTS; 303a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGID = EVIOCGID; 304a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGKEY = EVIOCGKEY(0); 305a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGKEYCODE = EVIOCGKEYCODE; 306a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGLED = EVIOCGLED(0); 307a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGNAME = EVIOCGNAME(0); 308a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGPHYS = EVIOCGPHYS(0); 309a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGRAB = EVIOCGRAB; 310a9aa5fa8ae2a2b43a94e6462ded2cd51445e9ee3ager@chromium.org unsigned IOCTL_EVIOCGREP = EVIOCGREP; 311a9aa5fa8ae2a2b43a94e6462ded2cd51445e9ee3ager@chromium.org unsigned IOCTL_EVIOCGSND = EVIOCGSND(0); 312a9aa5fa8ae2a2b43a94e6462ded2cd51445e9ee3ager@chromium.org unsigned IOCTL_EVIOCGSW = EVIOCGSW(0); 313a9aa5fa8ae2a2b43a94e6462ded2cd51445e9ee3ager@chromium.org unsigned IOCTL_EVIOCGUNIQ = EVIOCGUNIQ(0); 314a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGVERSION = EVIOCGVERSION; 315a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCRMFF = EVIOCRMFF; 316a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCSABS = EVIOCSABS(0); 317a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCSFF = EVIOCSFF; 318a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCSKEYCODE = EVIOCSKEYCODE; 319a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCSREP = EVIOCSREP; 320a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_BLKFLSBUF = BLKFLSBUF; 321a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_BLKGETSIZE = BLKGETSIZE; 322a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_BLKRAGET = BLKRAGET; 323a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_BLKRASET = BLKRASET; 324a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_BLKROGET = BLKROGET; 325a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_BLKROSET = BLKROSET; 326a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_BLKRRPART = BLKRRPART; 327a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMAUDIOBUFSIZ = CDROMAUDIOBUFSIZ; 328a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMEJECT = CDROMEJECT; 329a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMEJECT_SW = CDROMEJECT_SW; 330a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMMULTISESSION = CDROMMULTISESSION; 331a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMPAUSE = CDROMPAUSE; 332a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMPLAYMSF = CDROMPLAYMSF; 333a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMPLAYTRKIND = CDROMPLAYTRKIND; 334a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMREADAUDIO = CDROMREADAUDIO; 335a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMREADCOOKED = CDROMREADCOOKED; 336a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMREADMODE1 = CDROMREADMODE1; 337a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMREADMODE2 = CDROMREADMODE2; 338a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMREADRAW = CDROMREADRAW; 339a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMREADTOCENTRY = CDROMREADTOCENTRY; 340a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMREADTOCHDR = CDROMREADTOCHDR; 341a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMRESET = CDROMRESET; 342a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMRESUME = CDROMRESUME; 343a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMSEEK = CDROMSEEK; 344a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMSTART = CDROMSTART; 345a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMSTOP = CDROMSTOP; 346a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMSUBCHNL = CDROMSUBCHNL; 347a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMVOLCTRL = CDROMVOLCTRL; 348a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROMVOLREAD = CDROMVOLREAD; 349a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CDROM_GET_UPC = CDROM_GET_UPC; 350a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDCLRPRM = FDCLRPRM; 351a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDDEFPRM = FDDEFPRM; 352a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDFLUSH = FDFLUSH; 353a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDFMTBEG = FDFMTBEG; 354a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDFMTEND = FDFMTEND; 355a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDFMTTRK = FDFMTTRK; 356a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDGETDRVPRM = FDGETDRVPRM; 357a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDGETDRVSTAT = FDGETDRVSTAT; 358a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDGETDRVTYP = FDGETDRVTYP; 359a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDGETFDCSTAT = FDGETFDCSTAT; 360a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDGETMAXERRS = FDGETMAXERRS; 361a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDGETPRM = FDGETPRM; 362a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDMSGOFF = FDMSGOFF; 363a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDMSGON = FDMSGON; 364a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDPOLLDRVSTAT = FDPOLLDRVSTAT; 365a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDRAWCMD = FDRAWCMD; 366a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDRESET = FDRESET; 367a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDSETDRVPRM = FDSETDRVPRM; 368a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDSETEMSGTRESH = FDSETEMSGTRESH; 369a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDSETMAXERRS = FDSETMAXERRS; 370a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDSETPRM = FDSETPRM; 371a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDTWADDLE = FDTWADDLE; 372a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDWERRORCLR = FDWERRORCLR; 373a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FDWERRORGET = FDWERRORGET; 374a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_DRIVE_CMD = HDIO_DRIVE_CMD; 375a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_GETGEO = HDIO_GETGEO; 376a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_GET_32BIT = HDIO_GET_32BIT; 377a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_GET_DMA = HDIO_GET_DMA; 378a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_GET_IDENTITY = HDIO_GET_IDENTITY; 379a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_GET_KEEPSETTINGS = HDIO_GET_KEEPSETTINGS; 380a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_GET_MULTCOUNT = HDIO_GET_MULTCOUNT; 381a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_GET_NOWERR = HDIO_GET_NOWERR; 382a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_GET_UNMASKINTR = HDIO_GET_UNMASKINTR; 383a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_SET_32BIT = HDIO_SET_32BIT; 384a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_SET_DMA = HDIO_SET_DMA; 385a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_SET_KEEPSETTINGS = HDIO_SET_KEEPSETTINGS; 386a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_SET_MULTCOUNT = HDIO_SET_MULTCOUNT; 387a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_SET_NOWERR = HDIO_SET_NOWERR; 388a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_HDIO_SET_UNMASKINTR = HDIO_SET_UNMASKINTR; 389a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_MTIOCGET = MTIOCGET; 390a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_MTIOCPOS = MTIOCPOS; 391a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_MTIOCTOP = MTIOCTOP; 392a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCGASYNCMAP = PPPIOCGASYNCMAP; 393a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCGDEBUG = PPPIOCGDEBUG; 394a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCGFLAGS = PPPIOCGFLAGS; 395a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCGUNIT = PPPIOCGUNIT; 396a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCGXASYNCMAP = PPPIOCGXASYNCMAP; 397a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCSASYNCMAP = PPPIOCSASYNCMAP; 398a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCSDEBUG = PPPIOCSDEBUG; 399a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCSFLAGS = PPPIOCSFLAGS; 400a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCSMAXCID = PPPIOCSMAXCID; 401a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCSMRU = PPPIOCSMRU; 402a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PPPIOCSXASYNCMAP = PPPIOCSXASYNCMAP; 403a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCADDRT = SIOCADDRT; 404a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCDARP = SIOCDARP; 405a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCDELRT = SIOCDELRT; 406a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCDRARP = SIOCDRARP; 407a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGARP = SIOCGARP; 408a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFENCAP = SIOCGIFENCAP; 409a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFHWADDR = SIOCGIFHWADDR; 410a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFMAP = SIOCGIFMAP; 411a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFMEM = SIOCGIFMEM; 412a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFNAME = SIOCGIFNAME; 413a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGIFSLAVE = SIOCGIFSLAVE; 414a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGRARP = SIOCGRARP; 415a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCGSTAMP = SIOCGSTAMP; 4167b26015ac58e54e88f4214e248f772ad4f055477whesse@chromium.org unsigned IOCTL_SIOCSARP = SIOCSARP; 417a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSIFENCAP = SIOCSIFENCAP; 418a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSIFHWADDR = SIOCSIFHWADDR; 419a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSIFLINK = SIOCSIFLINK; 420a9aa5fa8ae2a2b43a94e6462ded2cd51445e9ee3ager@chromium.org unsigned IOCTL_SIOCSIFMAP = SIOCSIFMAP; 421a9aa5fa8ae2a2b43a94e6462ded2cd51445e9ee3ager@chromium.org unsigned IOCTL_SIOCSIFMEM = SIOCSIFMEM; 422a9aa5fa8ae2a2b43a94e6462ded2cd51445e9ee3ager@chromium.org unsigned IOCTL_SIOCSIFSLAVE = SIOCSIFSLAVE; 423a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCSRARP = SIOCSRARP; 424a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SOUND_VERSION >= 0x040000 425a9aa5fa8ae2a2b43a94e6462ded2cd51445e9ee3ager@chromium.org unsigned IOCTL_SNDCTL_COPR_HALT = IOCTL_NOT_PRESENT; 426a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_COPR_LOAD = IOCTL_NOT_PRESENT; 427a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_COPR_RCODE = IOCTL_NOT_PRESENT; 428a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_COPR_RCVMSG = IOCTL_NOT_PRESENT; 4293847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_RDATA = IOCTL_NOT_PRESENT; 4303847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_RESET = IOCTL_NOT_PRESENT; 4313847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_RUN = IOCTL_NOT_PRESENT; 4323847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_SENDMSG = IOCTL_NOT_PRESENT; 4333847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_WCODE = IOCTL_NOT_PRESENT; 4343847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_WDATA = IOCTL_NOT_PRESENT; 4353847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_READ_BITS = IOCTL_NOT_PRESENT; 4363847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_READ_CHANNELS = IOCTL_NOT_PRESENT; 4373847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_READ_FILTER = IOCTL_NOT_PRESENT; 4383847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_READ_RATE = IOCTL_NOT_PRESENT; 4393847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_WRITE_CHANNELS = IOCTL_NOT_PRESENT; 4403847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_WRITE_FILTER = IOCTL_NOT_PRESENT; 4413847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com#else 4423847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_HALT = SNDCTL_COPR_HALT; 4433847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_LOAD = SNDCTL_COPR_LOAD; 4443847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_RCODE = SNDCTL_COPR_RCODE; 4453847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_RCVMSG = SNDCTL_COPR_RCVMSG; 4463847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_RDATA = SNDCTL_COPR_RDATA; 4473847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_RESET = SNDCTL_COPR_RESET; 4483847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_RUN = SNDCTL_COPR_RUN; 4493847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_SENDMSG = SNDCTL_COPR_SENDMSG; 4503847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_WCODE = SNDCTL_COPR_WCODE; 4513847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_COPR_WDATA = SNDCTL_COPR_WDATA; 4523847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_READ_BITS = SOUND_PCM_READ_BITS; 4533847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_READ_CHANNELS = SOUND_PCM_READ_CHANNELS; 4543847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_READ_FILTER = SOUND_PCM_READ_FILTER; 4553847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_READ_RATE = SOUND_PCM_READ_RATE; 4563847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_WRITE_CHANNELS = SOUND_PCM_WRITE_CHANNELS; 4573847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SOUND_PCM_WRITE_FILTER = SOUND_PCM_WRITE_FILTER; 4583847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com#endif 4593847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_GETBLKSIZE = SNDCTL_DSP_GETBLKSIZE; 4603847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_GETFMTS = SNDCTL_DSP_GETFMTS; 4613847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_NONBLOCK = SNDCTL_DSP_NONBLOCK; 4623847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_POST = SNDCTL_DSP_POST; 4633847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_RESET = SNDCTL_DSP_RESET; 4643847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_SETFMT = SNDCTL_DSP_SETFMT; 4653847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_SETFRAGMENT = SNDCTL_DSP_SETFRAGMENT; 4663847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_SPEED = SNDCTL_DSP_SPEED; 4673847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_STEREO = SNDCTL_DSP_STEREO; 4683847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_SUBDIVIDE = SNDCTL_DSP_SUBDIVIDE; 4693847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_DSP_SYNC = SNDCTL_DSP_SYNC; 4703847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_FM_4OP_ENABLE = SNDCTL_FM_4OP_ENABLE; 4713847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_FM_LOAD_INSTR = SNDCTL_FM_LOAD_INSTR; 4723847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_MIDI_INFO = SNDCTL_MIDI_INFO; 4733847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_MIDI_PRETIME = SNDCTL_MIDI_PRETIME; 4743847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_CTRLRATE = SNDCTL_SEQ_CTRLRATE; 4753847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_GETINCOUNT = SNDCTL_SEQ_GETINCOUNT; 4763847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_GETOUTCOUNT = SNDCTL_SEQ_GETOUTCOUNT; 4773847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_NRMIDIS = SNDCTL_SEQ_NRMIDIS; 4783847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_NRSYNTHS = SNDCTL_SEQ_NRSYNTHS; 4793847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_OUTOFBAND = SNDCTL_SEQ_OUTOFBAND; 4803847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_PANIC = SNDCTL_SEQ_PANIC; 4813847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_PERCMODE = SNDCTL_SEQ_PERCMODE; 4823847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_RESET = SNDCTL_SEQ_RESET; 4833847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_RESETSAMPLES = SNDCTL_SEQ_RESETSAMPLES; 4843847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_SNDCTL_SEQ_SYNC = SNDCTL_SEQ_SYNC; 485a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_SEQ_TESTMIDI = SNDCTL_SEQ_TESTMIDI; 486a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_SEQ_THRESHOLD = SNDCTL_SEQ_THRESHOLD; 487a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_SYNTH_INFO = SNDCTL_SYNTH_INFO; 488a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_SYNTH_MEMAVL = SNDCTL_SYNTH_MEMAVL; 489a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_TMR_CONTINUE = SNDCTL_TMR_CONTINUE; 490a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_TMR_METRONOME = SNDCTL_TMR_METRONOME; 491a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_TMR_SELECT = SNDCTL_TMR_SELECT; 492a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_TMR_SOURCE = SNDCTL_TMR_SOURCE; 493a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_TMR_START = SNDCTL_TMR_START; 494a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_TMR_STOP = SNDCTL_TMR_STOP; 495a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_TMR_TEMPO = SNDCTL_TMR_TEMPO; 496a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SNDCTL_TMR_TIMEBASE = SNDCTL_TMR_TIMEBASE; 497a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_ALTPCM = SOUND_MIXER_READ_ALTPCM; 4987b26015ac58e54e88f4214e248f772ad4f055477whesse@chromium.org unsigned IOCTL_SOUND_MIXER_READ_BASS = SOUND_MIXER_READ_BASS; 4997b26015ac58e54e88f4214e248f772ad4f055477whesse@chromium.org unsigned IOCTL_SOUND_MIXER_READ_CAPS = SOUND_MIXER_READ_CAPS; 5007b26015ac58e54e88f4214e248f772ad4f055477whesse@chromium.org unsigned IOCTL_SOUND_MIXER_READ_CD = SOUND_MIXER_READ_CD; 5017b26015ac58e54e88f4214e248f772ad4f055477whesse@chromium.org unsigned IOCTL_SOUND_MIXER_READ_DEVMASK = SOUND_MIXER_READ_DEVMASK; 502a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_ENHANCE = SOUND_MIXER_READ_ENHANCE; 503a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_IGAIN = SOUND_MIXER_READ_IGAIN; 504a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_IMIX = SOUND_MIXER_READ_IMIX; 505a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_LINE = SOUND_MIXER_READ_LINE; 5066d786c9805481bd13ecb29c3155540f2f32950e1svenpanne@chromium.org unsigned IOCTL_SOUND_MIXER_READ_LINE1 = SOUND_MIXER_READ_LINE1; 507a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_LINE2 = SOUND_MIXER_READ_LINE2; 508a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_LINE3 = SOUND_MIXER_READ_LINE3; 509a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_LOUD = SOUND_MIXER_READ_LOUD; 510a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_MIC = SOUND_MIXER_READ_MIC; 511a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_MUTE = SOUND_MIXER_READ_MUTE; 512a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_OGAIN = SOUND_MIXER_READ_OGAIN; 513a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_PCM = SOUND_MIXER_READ_PCM; 514a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_RECLEV = SOUND_MIXER_READ_RECLEV; 515a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_RECMASK = SOUND_MIXER_READ_RECMASK; 516a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_RECSRC = SOUND_MIXER_READ_RECSRC; 517a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_SPEAKER = SOUND_MIXER_READ_SPEAKER; 518a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_STEREODEVS = SOUND_MIXER_READ_STEREODEVS; 519a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_SYNTH = SOUND_MIXER_READ_SYNTH; 520a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_TREBLE = SOUND_MIXER_READ_TREBLE; 521a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_READ_VOLUME = SOUND_MIXER_READ_VOLUME; 522a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_ALTPCM = SOUND_MIXER_WRITE_ALTPCM; 523a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_BASS = SOUND_MIXER_WRITE_BASS; 524a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_CD = SOUND_MIXER_WRITE_CD; 525a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_ENHANCE = SOUND_MIXER_WRITE_ENHANCE; 526a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_IGAIN = SOUND_MIXER_WRITE_IGAIN; 527a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_IMIX = SOUND_MIXER_WRITE_IMIX; 528a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_LINE = SOUND_MIXER_WRITE_LINE; 529a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_LINE1 = SOUND_MIXER_WRITE_LINE1; 530a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_LINE2 = SOUND_MIXER_WRITE_LINE2; 531a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_LINE3 = SOUND_MIXER_WRITE_LINE3; 532a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_LOUD = SOUND_MIXER_WRITE_LOUD; 533a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_MIC = SOUND_MIXER_WRITE_MIC; 534a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_MUTE = SOUND_MIXER_WRITE_MUTE; 535a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_OGAIN = SOUND_MIXER_WRITE_OGAIN; 536a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_PCM = SOUND_MIXER_WRITE_PCM; 537dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_RECLEV = SOUND_MIXER_WRITE_RECLEV; 538dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_RECSRC = SOUND_MIXER_WRITE_RECSRC; 539dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_SPEAKER = SOUND_MIXER_WRITE_SPEAKER; 540dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_SYNTH = SOUND_MIXER_WRITE_SYNTH; 541a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_TREBLE = SOUND_MIXER_WRITE_TREBLE; 542dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_SOUND_MIXER_WRITE_VOLUME = SOUND_MIXER_WRITE_VOLUME; 543dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCFLSH = TCFLSH; 544dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCGETA = TCGETA; 545dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCGETS = TCGETS; 546dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCSBRK = TCSBRK; 547dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCSBRKP = TCSBRKP; 548dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCSETA = TCSETA; 549dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCSETAF = TCSETAF; 550dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCSETAW = TCSETAW; 551dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCSETS = TCSETS; 552dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCSETSF = TCSETSF; 553dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCSETSW = TCSETSW; 554dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TCXONC = TCXONC; 555dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_TIOCGLCKTRMIOS = TIOCGLCKTRMIOS; 556a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCGSOFTCAR = TIOCGSOFTCAR; 557a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCINQ = TIOCINQ; 558a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCLINUX = TIOCLINUX; 559a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCSERCONFIG = TIOCSERCONFIG; 5603847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_TIOCSERGETLSR = TIOCSERGETLSR; 561a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCSERGWILD = TIOCSERGWILD; 562a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCSERSWILD = TIOCSERSWILD; 563a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCSLCKTRMIOS = TIOCSLCKTRMIOS; 564a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCSSOFTCAR = TIOCSSOFTCAR; 565a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_VT_ACTIVATE = VT_ACTIVATE; 566a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_VT_DISALLOCATE = VT_DISALLOCATE; 567a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_VT_GETMODE = VT_GETMODE; 568a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_VT_GETSTATE = VT_GETSTATE; 569a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_VT_OPENQRY = VT_OPENQRY; 570a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_VT_RELDISP = VT_RELDISP; 5713847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_VT_RESIZE = VT_RESIZE; 572a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_VT_RESIZEX = VT_RESIZEX; 5734d3fe4e246b0312eba361689f288ddf8dd516960danno@chromium.org unsigned IOCTL_VT_SENDSIG = VT_SENDSIG; 574a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_VT_SETMODE = VT_SETMODE; 575a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_VT_WAITACTIVE = VT_WAITACTIVE; 576a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif 577a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if SANITIZER_LINUX && !SANITIZER_ANDROID 578a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CYGETDEFTHRESH = CYGETDEFTHRESH; 579a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CYGETDEFTIMEOUT = CYGETDEFTIMEOUT; 580a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CYGETMON = CYGETMON; 581a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CYGETTHRESH = CYGETTHRESH; 5827304bcac06a6a63b9f3dcebac2eeceada87ca146vegorov@chromium.org unsigned IOCTL_CYGETTIMEOUT = CYGETTIMEOUT; 583a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CYSETDEFTHRESH = CYSETDEFTHRESH; 584fb144a0716afe7ab8bf245f2391a9e53b3db3c89fschneider@chromium.org unsigned IOCTL_CYSETDEFTIMEOUT = CYSETDEFTIMEOUT; 585fb144a0716afe7ab8bf245f2391a9e53b3db3c89fschneider@chromium.org unsigned IOCTL_CYSETTHRESH = CYSETTHRESH; 586a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_CYSETTIMEOUT = CYSETTIMEOUT; 587ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org unsigned IOCTL_EQL_EMANCIPATE = EQL_EMANCIPATE; 588ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org unsigned IOCTL_EQL_ENSLAVE = EQL_ENSLAVE; 589ddd545c4c343dcf4331b9d80d2a0bdfa373a4a0fricow@chromium.org unsigned IOCTL_EQL_GETMASTRCFG = EQL_GETMASTRCFG; 590a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EQL_GETSLAVECFG = EQL_GETSLAVECFG; 591a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EQL_SETMASTRCFG = EQL_SETMASTRCFG; 592a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EQL_SETSLAVECFG = EQL_SETSLAVECFG; 593a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#if EV_VERSION > (0x010000) 594a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGKEYCODE_V2 = EVIOCGKEYCODE_V2; 595a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGPROP = EVIOCGPROP(0); 596a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCSKEYCODE_V2 = EVIOCSKEYCODE_V2; 597a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#else 598a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_EVIOCGKEYCODE_V2 = IOCTL_NOT_PRESENT; 59984bcc559ac20fb04f806e97d28a314b20b58fd60svenpanne@chromium.org unsigned IOCTL_EVIOCGPROP = IOCTL_NOT_PRESENT; 60084bcc559ac20fb04f806e97d28a314b20b58fd60svenpanne@chromium.org unsigned IOCTL_EVIOCSKEYCODE_V2 = IOCTL_NOT_PRESENT; 60184bcc559ac20fb04f806e97d28a314b20b58fd60svenpanne@chromium.org#endif 602a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FS_IOC_GETFLAGS = FS_IOC_GETFLAGS; 603a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FS_IOC_GETVERSION = FS_IOC_GETVERSION; 604a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FS_IOC_SETFLAGS = FS_IOC_SETFLAGS; 605a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_FS_IOC_SETVERSION = FS_IOC_SETVERSION; 606a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_GIO_CMAP = GIO_CMAP; 607a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_GIO_FONT = GIO_FONT; 608a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_GIO_SCRNMAP = GIO_SCRNMAP; 609a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_GIO_UNIMAP = GIO_UNIMAP; 6103a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_GIO_UNISCRNMAP = GIO_UNISCRNMAP; 6113a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_KDADDIO = KDADDIO; 612a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDDELIO = KDDELIO; 613a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDDISABIO = KDDISABIO; 6143847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_KDENABIO = KDENABIO; 6156d786c9805481bd13ecb29c3155540f2f32950e1svenpanne@chromium.org unsigned IOCTL_KDGETKEYCODE = KDGETKEYCODE; 6163847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_KDGETLED = KDGETLED; 6173847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_KDGETMODE = KDGETMODE; 6183847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_KDGKBDIACR = KDGKBDIACR; 6193847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_KDGKBENT = KDGKBENT; 6203847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com unsigned IOCTL_KDGKBLED = KDGKBLED; 621a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDGKBMETA = KDGKBMETA; 622a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDGKBMODE = KDGKBMODE; 623a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDGKBSENT = KDGKBSENT; 624378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_KDGKBTYPE = KDGKBTYPE; 625378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_KDMAPDISP = KDMAPDISP; 626378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_KDMKTONE = KDMKTONE; 627378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_KDSETKEYCODE = KDSETKEYCODE; 628378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_KDSETLED = KDSETLED; 629378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_KDSETMODE = KDSETMODE; 630378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_KDSIGACCEPT = KDSIGACCEPT; 631a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDSKBDIACR = KDSKBDIACR; 632a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDSKBENT = KDSKBENT; 633a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDSKBLED = KDSKBLED; 634a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDSKBMETA = KDSKBMETA; 635a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDSKBMODE = KDSKBMODE; 636a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDSKBSENT = KDSKBSENT; 637a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KDUNMAPDISP = KDUNMAPDISP; 638a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_KIOCSOUND = KIOCSOUND; 6393a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_LPABORT = LPABORT; 6403a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_LPABORTOPEN = LPABORTOPEN; 6413a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_LPCAREFUL = LPCAREFUL; 642a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_LPCHAR = LPCHAR; 643a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_LPGETIRQ = LPGETIRQ; 644a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_LPGETSTATUS = LPGETSTATUS; 645a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_LPRESET = LPRESET; 646a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_LPSETIRQ = LPSETIRQ; 647a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_LPTIME = LPTIME; 648a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_LPWAIT = LPWAIT; 649a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_MTIOCGETCONFIG = MTIOCGETCONFIG; 650a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_MTIOCSETCONFIG = MTIOCSETCONFIG; 6513a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_PIO_CMAP = PIO_CMAP; 6523a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_PIO_FONT = PIO_FONT; 653a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PIO_SCRNMAP = PIO_SCRNMAP; 654a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PIO_UNIMAP = PIO_UNIMAP; 6553a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_PIO_UNIMAPCLR = PIO_UNIMAPCLR; 656a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_PIO_UNISCRNMAP = PIO_UNISCRNMAP; 65783a4728861129dc263ded92157f3e6389f851f19karlklose@chromium.org unsigned IOCTL_SCSI_IOCTL_GET_IDLUN = SCSI_IOCTL_GET_IDLUN; 65883a4728861129dc263ded92157f3e6389f851f19karlklose@chromium.org unsigned IOCTL_SCSI_IOCTL_PROBE_HOST = SCSI_IOCTL_PROBE_HOST; 65983a4728861129dc263ded92157f3e6389f851f19karlklose@chromium.org unsigned IOCTL_SCSI_IOCTL_TAGGED_DISABLE = SCSI_IOCTL_TAGGED_DISABLE; 660a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SCSI_IOCTL_TAGGED_ENABLE = SCSI_IOCTL_TAGGED_ENABLE; 661dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.org unsigned IOCTL_SIOCAIPXITFCRT = SIOCAIPXITFCRT; 662a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCAIPXPRISLT = SIOCAIPXPRISLT; 663a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCAX25ADDUID = SIOCAX25ADDUID; 664a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCAX25DELUID = SIOCAX25DELUID; 665a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCAX25GETPARMS = SIOCAX25GETPARMS; 666a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCAX25GETUID = SIOCAX25GETUID; 6673a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_SIOCAX25NOUID = SIOCAX25NOUID; 668a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCAX25SETPARMS = SIOCAX25SETPARMS; 669a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCDEVPLIP = SIOCDEVPLIP; 670378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_SIOCIPXCFGDATA = SIOCIPXCFGDATA; 671a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCNRDECOBS = SIOCNRDECOBS; 672a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCNRGETPARMS = SIOCNRGETPARMS; 673a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_SIOCNRRTCTL = SIOCNRRTCTL; 674378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_SIOCNRSETPARMS = SIOCNRSETPARMS; 675378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_SNDCTL_DSP_GETISPACE = SNDCTL_DSP_GETISPACE; 6763a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org unsigned IOCTL_SNDCTL_DSP_GETOSPACE = SNDCTL_DSP_GETOSPACE; 677378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_TIOCGSERIAL = TIOCGSERIAL; 678378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_TIOCSERGETMULTI = TIOCSERGETMULTI; 679378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org unsigned IOCTL_TIOCSERSETMULTI = TIOCSERSETMULTI; 680a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org unsigned IOCTL_TIOCSSERIAL = TIOCSSERIAL; 681a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif 682a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org} // namespace __sanitizer 6833a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.org 684a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#define CHECK_TYPE_SIZE(TYPE) \ 685a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org COMPILER_CHECK(sizeof(__sanitizer_##TYPE) == sizeof(TYPE)) 686a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 687a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#define CHECK_SIZE_AND_OFFSET(CLASS, MEMBER) \ 688a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org COMPILER_CHECK(sizeof(((__sanitizer_##CLASS *) NULL)->MEMBER) == \ 689a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org sizeof(((CLASS *) NULL)->MEMBER)); \ 690a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org COMPILER_CHECK(offsetof(__sanitizer_##CLASS, MEMBER) == \ 691a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org offsetof(CLASS, MEMBER)) 692a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 693a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCOMPILER_CHECK(sizeof(__sanitizer_pthread_attr_t) >= sizeof(pthread_attr_t)); 694a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCOMPILER_CHECK(sizeof(__sanitizer::struct_sigaction_max_sz) >= 695a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org sizeof(__sanitizer::struct_sigaction_sz)); 696378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org 697378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.orgCOMPILER_CHECK(sizeof(socklen_t) == sizeof(unsigned)); 698378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org 699378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org#if SANITIZER_LINUX 700378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.org// There are more undocumented fields in dl_phdr_info that we are not interested 7013847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.com// in. 7023847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.comCOMPILER_CHECK(sizeof(__sanitizer_dl_phdr_info) <= sizeof(dl_phdr_info)); 7033847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.comCHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_addr); 7043847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.comCHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_name); 705a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_phdr); 706a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_phnum); 707a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 708a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCOMPILER_CHECK(IOC_SIZE(0x12345678) == _IOC_SIZE(0x12345678)); 709a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif 710a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 711a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_TYPE_SIZE(addrinfo); 712a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(addrinfo, ai_flags); 713a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(addrinfo, ai_family); 714a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(addrinfo, ai_socktype); 7153847bd5ff857259e945a01d75fdb383e2351d166erik.corry@gmail.comCHECK_SIZE_AND_OFFSET(addrinfo, ai_protocol); 716a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(addrinfo, ai_protocol); 717a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(addrinfo, ai_addrlen); 718a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(addrinfo, ai_canonname); 719a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(addrinfo, ai_addr); 720a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 721a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_TYPE_SIZE(hostent); 722a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(hostent, h_name); 723a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(hostent, h_aliases); 724a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(hostent, h_addrtype); 725a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(hostent, h_length); 726a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(hostent, h_addr_list); 727a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 7283a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.orgCHECK_TYPE_SIZE(iovec); 7293a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.orgCHECK_SIZE_AND_OFFSET(iovec, iov_base); 730a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(iovec, iov_len); 731a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 732a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_TYPE_SIZE(msghdr); 733a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(msghdr, msg_name); 734a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(msghdr, msg_namelen); 735a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(msghdr, msg_iov); 736a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(msghdr, msg_iovlen); 737a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(msghdr, msg_control); 738a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(msghdr, msg_controllen); 739a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(msghdr, msg_flags); 740a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 741a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_TYPE_SIZE(cmsghdr); 742a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_len); 743378b34e3f8852e94739bb77a528278fe0e2bb532ager@chromium.orgCHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_level); 744a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.orgCHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_type); 745a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 7463a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.orgCHECK_TYPE_SIZE(ifconf); 7473a5fd78f0ca6c2827bb05f69a373d152a9ce6ff3fschneider@chromium.orgCHECK_SIZE_AND_OFFSET(ifconf, ifc_len); 748dcebac0f4c6c0da579b7cc91a0cbba8f3c820c8dricow@chromium.orgCHECK_SIZE_AND_OFFSET(ifconf, ifc_ifcu); 749a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 750a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org#endif // SANITIZER_LINUX || SANITIZER_MAC 751a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org 752a55512615f5adc085d23bc8589d155c4b579fb7bkasperl@chromium.org