├── san ├── conf │ ├── files.arm │ ├── Makefile.arm │ ├── Makefile.arm64 │ ├── files.arm64 │ ├── files.x86_64 │ ├── Makefile.x86_64 │ └── files ├── Kasan.exports ├── ubsan-blacklist ├── kasan-blacklist-arm64 ├── tools │ └── validate_blacklist.sh └── kasan-blacklist-dynamic ├── libsa ├── conf │ ├── files.arm │ ├── files.arm64 │ ├── files.x86_64 │ ├── copyright │ ├── files │ ├── Makefile.arm │ ├── Makefile.arm64 │ └── Makefile.x86_64 └── Makefile ├── security └── conf │ ├── files.arm │ ├── files.arm64 │ ├── files.x86_64 │ ├── Makefile.arm │ ├── Makefile.arm64 │ └── Makefile.x86_64 ├── config ├── MACFramework.arm.exports ├── MACFramework.arm64.exports ├── Mach.arm64.exports ├── Mach.x86_64.exports ├── MACFramework.x86_64.exports ├── Mach.arm.exports ├── Unused.arm.exports ├── Unused.arm64.exports ├── Unused.exports ├── MACFramework.exports ├── Libkern.arm.exports ├── Libkern.arm64.exports ├── generate_linker_aliases.sh ├── BSDKernel.arm.exports ├── BSDKernel.arm64.exports ├── BSDKernel.x86_64.exports ├── Libkern.x86_64.exports ├── IOKit.arm64.hibernation.MacOSX.exports └── generate_linker_exports.sh ├── libkern ├── conf │ ├── files.arm64 │ ├── files.x86_64 │ ├── files.arm │ ├── copyright │ └── Makefile.arm64 ├── img4 │ └── interface.c ├── coretrust │ └── coretrust.c ├── c++ │ └── OSRuntimeSupport.c ├── libkern │ ├── arm │ │ └── Makefile │ ├── crypto │ │ └── Makefile │ ├── img4 │ │ └── Makefile │ ├── coretrust │ │ └── Makefile │ ├── machine │ │ └── Makefile │ └── i386 │ │ └── Makefile └── Makefile ├── bsd ├── man │ ├── man2 │ │ ├── dup2.2 │ │ ├── EV_SET.2 │ │ ├── FD_CLR.2 │ │ ├── FD_SET.2 │ │ ├── errno.2 │ │ ├── fchdir.2 │ │ ├── fchmod.2 │ │ ├── fchown.2 │ │ ├── fstat.2 │ │ ├── fstat64.2 │ │ ├── fstatat.2 │ │ ├── kevent.2 │ │ ├── lchown.2 │ │ ├── linkat.2 │ │ ├── lstat.2 │ │ ├── mkdirat.2 │ │ ├── munlock.2 │ │ ├── openat.2 │ │ ├── pread.2 │ │ ├── preadv.2 │ │ ├── pwrite.2 │ │ ├── pwritev.2 │ │ ├── readv.2 │ │ ├── recvfrom.2 │ │ ├── recvmsg.2 │ │ ├── sendmsg.2 │ │ ├── sendto.2 │ │ ├── setgid.2 │ │ ├── shmdt.2 │ │ ├── stat64.2 │ │ ├── unmount.2 │ │ ├── wait3.2 │ │ ├── wait4.2 │ │ ├── waitpid.2 │ │ ├── writev.2 │ │ ├── FD_COPY.2 │ │ ├── FD_ISSET.2 │ │ ├── FD_ZERO.2 │ │ ├── faccessat.2 │ │ ├── fchflags.2 │ │ ├── fchmodat.2 │ │ ├── fchownat.2 │ │ ├── fgetxattr.2 │ │ ├── fpathconf.2 │ │ ├── fsetxattr.2 │ │ ├── fstatfs.2 │ │ ├── fstatfs64.2 │ │ ├── ftruncate.2 │ │ ├── futimens.2 │ │ ├── futimes.2 │ │ ├── getegid.2 │ │ ├── geteuid.2 │ │ ├── getpgid.2 │ │ ├── getppid.2 │ │ ├── kevent64.2 │ │ ├── kevent_qos.2 │ │ ├── lstat64.2 │ │ ├── renameat.2 │ │ ├── renamex_np.2 │ │ ├── setegid.2 │ │ ├── seteuid.2 │ │ ├── setlogin.2 │ │ ├── setpgrp.2 │ │ ├── symlinkat.2 │ │ ├── unlinkat.2 │ │ ├── clonefileat.2 │ │ ├── fclonefileat.2 │ │ ├── flistxattr.2 │ │ ├── getaudit.2 │ │ ├── posix_madvise.2 │ │ ├── readlinkat.2 │ │ ├── renameatx_np.2 │ │ ├── setaudit.2 │ │ ├── setitimer.2 │ │ ├── setpriority.2 │ │ ├── setrlimit.2 │ │ ├── setsockopt.2 │ │ ├── fgetattrlist.2 │ │ ├── fremovexattr.2 │ │ ├── fsetattrlist.2 │ │ ├── getattrlistat.2 │ │ ├── i386_set_ldt.2 │ │ ├── setattrlistat.2 │ │ ├── settimeofday.2 │ │ ├── statfs64.2 │ │ ├── fs_snapshot_delete.2 │ │ ├── fs_snapshot_list.2 │ │ └── fs_snapshot_rename.2 │ ├── man4 │ │ ├── stdin.4 │ │ ├── stderr.4 │ │ ├── stdout.4 │ │ ├── urandom.4 │ │ ├── networking.4 │ │ └── aio.4 │ ├── man9 │ │ ├── copyin.9 │ │ ├── copyout.9 │ │ ├── copystr.9 │ │ ├── fubyte.9 │ │ ├── fuibyte.9 │ │ ├── fuiword.9 │ │ ├── fulong.9 │ │ ├── fuulong.9 │ │ ├── fuword.9 │ │ ├── subyte.9 │ │ ├── suibyte.9 │ │ ├── suiword.9 │ │ ├── sulong.9 │ │ ├── suulong.9 │ │ ├── suword.9 │ │ ├── copyinstr.9 │ │ └── Makefile │ ├── man5 │ │ ├── dirent.5 │ │ └── Makefile │ ├── Makefile │ └── man7 │ │ └── Makefile ├── netkey │ ├── keyv2.h │ └── Makefile ├── netinet6 │ ├── ip6.h │ └── icmp6.h ├── conf │ ├── copyright │ ├── Makefile.arm64 │ ├── compat_hdrs.awk │ ├── Makefile.x86_64 │ ├── files.arm │ └── Makefile.arm ├── arm │ ├── _limits.h │ ├── psl.h │ ├── reg.h │ ├── signal.h │ ├── disklabel.h │ └── _param.h ├── sys │ ├── sys_cdefs.modulemap │ ├── vfs_context.h │ └── lctx.h ├── dev │ ├── dtrace │ │ ├── scripts │ │ │ ├── log_unnest_badness.d │ │ │ └── vm_map_delete_permanent.d │ │ └── Makefile │ ├── memdev.h │ ├── random │ │ └── Makefile │ └── Makefile ├── machine │ ├── machine_types.modulemap │ └── limits.h ├── security │ ├── Makefile │ └── audit │ │ └── Makefile ├── pgo │ └── profile_runtime_data.c ├── crypto │ └── entropy │ │ └── Makefile ├── libkern │ └── Makefile ├── miscfs │ ├── fifofs │ │ └── Makefile │ ├── bindfs │ │ └── Makefile │ ├── nullfs │ │ └── Makefile │ ├── union │ │ └── Makefile │ ├── specfs │ │ └── Makefile │ ├── Makefile │ ├── routefs │ │ └── Makefile │ └── devfs │ │ └── Makefile ├── vm │ └── Makefile ├── vfs │ └── Makefile ├── net │ └── content_filter_crypto.h ├── bsm │ └── Makefile └── nfs │ └── Makefile ├── iokit ├── IOKitUser │ ├── OSData.h │ ├── OSAction.h │ ├── OSArray.h │ ├── OSNumber.h │ ├── OSObject.h │ ├── OSString.h │ ├── IOMemoryMap.h │ ├── IOService.h │ ├── OSBoolean.h │ ├── OSContainer.h │ ├── IOUserServer.h │ ├── OSCollection.h │ ├── OSDictionary.h │ ├── IODispatchQueue.h │ ├── IODispatchSource.h │ ├── OSSerialization.h │ ├── IOMemoryDescriptor.h │ ├── IOBlockStorageDevice.h │ ├── IOTimerDispatchSource.h │ ├── IOBufferMemoryDescriptor.h │ ├── IODataQueueDispatchSource.h │ ├── IOInterruptDispatchSource.h │ └── Makefile ├── conf │ ├── files.arm │ ├── copyright │ ├── files.arm64 │ └── files.x86_64 ├── Makefile ├── System │ └── Makefile └── IOKit │ ├── IOKitDiagnosticsUserClient.h │ ├── rtc │ └── Makefile │ ├── nvram │ └── Makefile │ ├── power │ └── Makefile │ └── system_management │ └── Makefile ├── tests ├── excserver.defs ├── drop_priv.h ├── counter │ ├── common.h │ └── common.c ├── bounded_ptr.cpp ├── bounded_array.cpp ├── test_utils.h ├── safe_allocation.cpp ├── bounded_array_ref.cpp ├── driverkit │ └── Makefile ├── intrusive_shared_ptr.cpp ├── jumbo_va_spaces_28530648.entitlements ├── settimeofday_29193041.entitlements ├── disk_mount_conditioner-entitlements.plist ├── legacy_footprint.entitlement ├── work_interval_test.entitlements ├── atm_diagnostic_flag.entitlements ├── exception_tests.entitlements ├── jitbox-entitlements.plist ├── private_entitlement.plist ├── proc_info_44873309.entitlements ├── ptrauth-entitlements.plist ├── trial_experiments.entitlements ├── proc_info_list_kthreads.entitlements ├── sr_entitlement.entitlements ├── debug_control_port_for_pid_entitlement.plist ├── task_create_suid_cred_entitlement.plist ├── bounded_ptr_03.cpp ├── vm │ ├── entitlement_increased_memory_limit.entitlements │ ├── mixed_pagesize.plist │ └── mixed_pagesize.c ├── sr_entitlement_helper.c ├── subsystem_root_path-entitlements.plist ├── jumbo_va_spaces_52551256.entitlements ├── iokit │ ├── service_helpers.h │ └── map_memory_port_leak_45265408.entitlements ├── lockf_uaf_poc │ └── README ├── sbuf_tests.c ├── ipsec.entitlements ├── stackshot_translated_child.c ├── ldt_entitlement.plist ├── kernel_symbolication_entitlements.plist ├── restrict_jit.entitlements ├── vm_set_max_addr_helper.c ├── socket_raw_uint8_max.c ├── task_policy_entitlement.plist ├── zalloc.c ├── network_entitlements.plist ├── xnu_quick_test_helpers.h ├── intrusive_shared_ptr_src │ ├── abi.callee.raw.cpp │ ├── abi.callee.smart.cpp │ ├── abi_helper.h │ ├── detach.cpp │ ├── deref.cpp │ └── ctor.nullptr.cpp ├── safe_allocation_src │ ├── assign.copy.cpp │ ├── ctor.copy.cpp │ └── usage.for_loop.cpp ├── bounded_ptr_src │ ├── test_utils.h │ └── ctor.default.cpp ├── osptr_compat.cpp ├── ptrauth_data_tests.c ├── pid_for_task_test.c ├── kperf_helpers.h ├── posix_spawn_archpref_helper.c ├── print_apple_array.c ├── test_utils.c ├── bounded_array_src │ ├── for_loop.cpp │ ├── size.cpp │ └── test_policy.h ├── bounded_array_ref_src │ ├── for_loop.cpp │ ├── operator.bool.cpp │ └── operator.subscript.cpp ├── fduiomove.c ├── task_for_pid_entitlement.plist ├── dev_zero.c ├── mpsc.c ├── mach_boottime_usec.c ├── launchd_plists │ ├── com.apple.xnu.test.kevent_qos.plist │ ├── com.apple.xnu.test.mach_port.plist │ ├── com.apple.xnu.test.task_create_suid_cred.plist │ └── com.apple.xnu.test.turnstile_multihop.plist ├── subsystem_root_path.h ├── mach_timebase_info.c └── sysctl_system_version.c ├── osfmk ├── mach │ ├── audit_triggers_types.h │ ├── telemetry_notification.defs │ ├── iocompressionstats_notification.defs │ ├── coalition_notification.defs │ ├── arm64 │ │ └── Makefile │ └── arm │ │ └── Makefile ├── conf │ └── copyright ├── console │ ├── art │ │ ├── ProgressBarFullMiddle.png │ │ ├── ProgressBarEmptyMiddle.png │ │ ├── ProgressBarFullMiddle@2x.png │ │ ├── ProgressBarEmptyLeftEndcap.png │ │ ├── ProgressBarEmptyMiddle@2x.png │ │ ├── ProgressBarFullLeftEndcap.png │ │ ├── ProgressBarFullRightEndcap.png │ │ ├── ProgressBarEmptyLeftEndcap@2x.png │ │ ├── ProgressBarEmptyRightEndcap.png │ │ ├── ProgressBarFullLeftEndcap@2x.png │ │ ├── ProgressBarFullRightEndcap@2x.png │ │ └── ProgressBarEmptyRightEndcap@2x.png │ └── Makefile ├── libsa │ └── Makefile ├── tests │ └── Makefile ├── corpses │ └── Makefile ├── kdp │ └── Makefile ├── x86_64 │ └── Makefile ├── prng │ └── Makefile ├── mach_debug │ └── Makefile ├── ipc │ └── Makefile ├── man │ ├── mach_thread_self.html │ └── mach_host_self.html └── kperf │ └── Makefile ├── libsyscall ├── mach │ └── .gitignore ├── custom │ └── dummy.c └── Platforms │ └── syscall.map ├── tools ├── lldbmacros │ ├── plugins │ │ ├── __init__.py │ │ └── iosspeedtracer.sh │ ├── usertaskdebugging │ │ └── __init__.py │ ├── core │ │ ├── __init__.py │ │ └── configuration.py │ ├── .lldbinit │ ├── mbufdefines.py │ └── routedefines.py ├── tests │ ├── perf_index │ │ ├── md5.h │ │ ├── ramdisk.h │ │ ├── PerfIndex_COPS_Module │ │ │ ├── PerfIndex.h │ │ │ ├── Prefix.pch │ │ │ └── PITest.h │ │ ├── perfindex-syscall.c │ │ ├── perfindex-zfod.c │ │ ├── perfindex-fault.c │ │ ├── test_fault_helper.h │ │ ├── perfindex-cpu.c │ │ ├── perf_index.h │ │ ├── fail.h │ │ ├── perfindex-iperf.c │ │ └── perfindex-file_create.c │ ├── personas │ │ └── persona-entitlements.plist │ ├── testkext │ │ ├── testvmx.h │ │ ├── testthreadcall.h │ │ └── pgokext │ │ │ └── pgokext.c │ ├── execperf │ │ └── exit.c │ ├── superpages │ │ └── Makefile │ ├── mktimer │ │ └── Makefile │ ├── jitter │ │ └── Makefile │ ├── kernpost_test_report │ │ └── Makefile │ ├── zero-to-n │ │ └── Makefile │ ├── TLBcoherency │ │ └── Makefile │ └── MPMMTest │ │ └── README ├── lockstat │ └── Makefile ├── Makefile └── trace │ ├── ios_trace_ipc.sh │ └── ktruss.lua ├── libkdd ├── tests │ ├── corpse-sample │ ├── nested-sample │ ├── test-twr-sample │ ├── corpse-twr-sample │ ├── exitreason-sample │ ├── stackshot-sample │ ├── corpse-twr-sample-v2 │ ├── stackshot-with-kcid │ ├── corpse-sample.plist.gz │ ├── exitreason-codesigning │ ├── stackshot-fault-stats │ ├── stackshot-sample-asid │ ├── stackshot-with-waitinfo │ ├── stackshot-sample-cputime │ ├── stackshot-sample-duration │ ├── stackshot-sample-stacktop │ ├── stackshot-sample-tailspin │ ├── stackshot-sample.plist.gz │ ├── test-twr-sample.plist.gz │ ├── xnupost_testconfig-sample │ ├── corpse-twr-sample.plist.gz │ ├── exitreason-sample.plist.gz │ ├── stackshot-sample-coalitions │ ├── stackshot-sample-cpu-times │ ├── stackshot-sample-new-arrays │ ├── stackshot-sample-old-arrays │ ├── stackshot-sample-tailspin-2 │ ├── stackshot-with-kcid.plist.gz │ ├── corpse-twr-sample-v2.plist.gz │ ├── stackshot-fault-stats.plist.gz │ ├── stackshot-sample-asid.plist.gz │ ├── stackshot-sample-instrs-cycles │ ├── stackshot-sample-sharedcachev2 │ ├── stackshot-sample-thread-groups │ ├── stackshot-sample-thread-policy │ ├── stackshot-sample-ths-thread-t │ ├── stackshot-sample-turnstileinfo │ ├── delta-stackshot-sample-new-arrays │ ├── delta-stackshot-sample-old-arrays │ ├── exitreason-codesigning.plist.gz │ ├── stackshot-sample-asid-pagetable │ ├── stackshot-sample-cputime.plist.gz │ ├── stackshot-with-waitinfo.plist.gz │ ├── stackshot-sample-cpu-times.plist.gz │ ├── stackshot-sample-duration.plist.gz │ ├── stackshot-sample-stacktop.plist.gz │ ├── stackshot-sample-tailspin.plist.gz │ ├── stackshot-with-shared-cache-layout │ ├── xnupost_testconfig-sample.plist.gz │ ├── stackshot-sample-coalitions.plist.gz │ ├── stackshot-sample-delta-thread-policy │ ├── stackshot-sample-dispatch-queue-label │ ├── stackshot-sample-new-arrays.plist.gz │ ├── stackshot-sample-old-arrays.plist.gz │ ├── stackshot-sample-tailspin-2.plist.gz │ ├── stackshot-sample-thread-groups-flags │ ├── stackshot-sample-ths-thread-t.plist.gz │ ├── stackshot-sample-asid-pagetable.plist.gz │ ├── stackshot-sample-instrs-cycles.plist.gz │ ├── stackshot-sample-sharedcachev2.plist.gz │ ├── stackshot-sample-thread-groups.plist.gz │ ├── stackshot-sample-thread-policy.plist.gz │ ├── stackshot-sample-turnstileinfo.plist.gz │ ├── delta-stackshot-sample-new-arrays.plist.gz │ ├── delta-stackshot-sample-old-arrays.plist.gz │ ├── stackshot-with-shared-cache-layout.plist.gz │ ├── stackshot-sample-delta-thread-policy.plist.gz │ ├── stackshot-sample-thread-groups-flags.plist.gz │ ├── stackshot-sample-dispatch-queue-label.plist.gz │ ├── kdd_bridge.h │ ├── nested-sample.plist │ └── Info.plist ├── kdd.framework │ └── module.modulemap └── kdd.frameworkTests │ └── Info.plist ├── pexpert ├── conf │ ├── copyright │ ├── files │ ├── files.x86_64 │ ├── files.arm │ ├── files.arm64 │ ├── Makefile.arm │ ├── Makefile.arm64 │ └── Makefile.x86_64 ├── arm │ └── pe_bootargs.c ├── pexpert │ ├── machine │ │ └── Makefile │ └── i386 │ │ └── Makefile └── Makefile ├── SETUP ├── setup.sh └── Makefile ├── EXTERNAL_HEADERS ├── sys │ ├── Makefile │ └── _pthread │ │ └── Makefile ├── architecture │ ├── arm │ │ └── Makefile │ ├── i386 │ │ └── Makefile │ └── Makefile ├── mach-o │ └── Makefile └── Info.plist ├── .gitignore └── .upstream_base_commits /san/conf/files.arm: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /libsa/conf/files.arm: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /libsa/conf/files.arm64: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /libsa/conf/files.x86_64: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /san/conf/Makefile.arm: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /san/conf/Makefile.arm64: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /security/conf/files.arm: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /security/conf/files.arm64: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /security/conf/files.x86_64: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/MACFramework.arm.exports: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/MACFramework.arm64.exports: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /libkern/conf/files.arm64: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /libkern/conf/files.x86_64: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bsd/man/man2/dup2.2: -------------------------------------------------------------------------------- 1 | .so man2/dup.2 2 | -------------------------------------------------------------------------------- /bsd/man/man4/stdin.4: -------------------------------------------------------------------------------- 1 | .so man4/fd.4 2 | -------------------------------------------------------------------------------- /bsd/man/man9/copyin.9: -------------------------------------------------------------------------------- 1 | .so man9/copy.9 -------------------------------------------------------------------------------- /bsd/man/man9/copyout.9: -------------------------------------------------------------------------------- 1 | .so man9/copy.9 -------------------------------------------------------------------------------- /bsd/man/man9/copystr.9: -------------------------------------------------------------------------------- 1 | .so man9/copy.9 -------------------------------------------------------------------------------- /bsd/man/man9/fubyte.9: -------------------------------------------------------------------------------- 1 | .so man9/fetch.9 -------------------------------------------------------------------------------- /bsd/man/man9/fuibyte.9: -------------------------------------------------------------------------------- 1 | .so man9/fetch.9 -------------------------------------------------------------------------------- /bsd/man/man9/fuiword.9: -------------------------------------------------------------------------------- 1 | .so man9/fetch.9 -------------------------------------------------------------------------------- /bsd/man/man9/fulong.9: -------------------------------------------------------------------------------- 1 | .so man9/fetch.9 -------------------------------------------------------------------------------- /bsd/man/man9/fuulong.9: -------------------------------------------------------------------------------- 1 | .so man9/fetch.9 -------------------------------------------------------------------------------- /bsd/man/man9/fuword.9: -------------------------------------------------------------------------------- 1 | .so man9/fetch.9 -------------------------------------------------------------------------------- /bsd/man/man9/subyte.9: -------------------------------------------------------------------------------- 1 | .so man9/store.9 -------------------------------------------------------------------------------- /bsd/man/man9/suibyte.9: -------------------------------------------------------------------------------- 1 | .so man9/store.9 -------------------------------------------------------------------------------- /bsd/man/man9/suiword.9: -------------------------------------------------------------------------------- 1 | .so man9/store.9 -------------------------------------------------------------------------------- /bsd/man/man9/sulong.9: -------------------------------------------------------------------------------- 1 | .so man9/store.9 -------------------------------------------------------------------------------- /bsd/man/man9/suulong.9: -------------------------------------------------------------------------------- 1 | .so man9/store.9 -------------------------------------------------------------------------------- /bsd/man/man9/suword.9: -------------------------------------------------------------------------------- 1 | .so man9/store.9 -------------------------------------------------------------------------------- /bsd/man/man2/EV_SET.2: -------------------------------------------------------------------------------- 1 | .so man2/kqueue.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/FD_CLR.2: -------------------------------------------------------------------------------- 1 | .so man2/select.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/FD_SET.2: -------------------------------------------------------------------------------- 1 | .so man2/select.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/errno.2: -------------------------------------------------------------------------------- 1 | .so man2/intro.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fchdir.2: -------------------------------------------------------------------------------- 1 | .so man2/chdir.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fchmod.2: -------------------------------------------------------------------------------- 1 | .so man2/chmod.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fchown.2: -------------------------------------------------------------------------------- 1 | .so man2/chown.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fstat.2: -------------------------------------------------------------------------------- 1 | .so man2/stat.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fstat64.2: -------------------------------------------------------------------------------- 1 | .so man2/stat.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fstatat.2: -------------------------------------------------------------------------------- 1 | .so man2/stat.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/kevent.2: -------------------------------------------------------------------------------- 1 | .so man2/kqueue.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/lchown.2: -------------------------------------------------------------------------------- 1 | .so man2/chown.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/linkat.2: -------------------------------------------------------------------------------- 1 | .so man2/link.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/lstat.2: -------------------------------------------------------------------------------- 1 | .so man2/stat.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/mkdirat.2: -------------------------------------------------------------------------------- 1 | .so man2/mkdir.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/munlock.2: -------------------------------------------------------------------------------- 1 | .so man2/mlock.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/openat.2: -------------------------------------------------------------------------------- 1 | .so man2/open.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/pread.2: -------------------------------------------------------------------------------- 1 | .so man2/read.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/preadv.2: -------------------------------------------------------------------------------- 1 | .so man2/read.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/pwrite.2: -------------------------------------------------------------------------------- 1 | .so man2/write.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/pwritev.2: -------------------------------------------------------------------------------- 1 | .so man2/write.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/readv.2: -------------------------------------------------------------------------------- 1 | .so man2/read.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/recvfrom.2: -------------------------------------------------------------------------------- 1 | .so man2/recv.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/recvmsg.2: -------------------------------------------------------------------------------- 1 | .so man2/recv.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/sendmsg.2: -------------------------------------------------------------------------------- 1 | .so man2/send.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/sendto.2: -------------------------------------------------------------------------------- 1 | .so man2/send.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/setgid.2: -------------------------------------------------------------------------------- 1 | .so man2/setuid.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/shmdt.2: -------------------------------------------------------------------------------- 1 | .so man2/shmat.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/stat64.2: -------------------------------------------------------------------------------- 1 | .so man2/stat.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/unmount.2: -------------------------------------------------------------------------------- 1 | .so man2/mount.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/wait3.2: -------------------------------------------------------------------------------- 1 | .so man2/wait.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/wait4.2: -------------------------------------------------------------------------------- 1 | .so man2/wait.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/waitpid.2: -------------------------------------------------------------------------------- 1 | .so man2/wait.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/writev.2: -------------------------------------------------------------------------------- 1 | .so man2/write.2 2 | -------------------------------------------------------------------------------- /bsd/man/man4/stderr.4: -------------------------------------------------------------------------------- 1 | .so man4/fd.4 2 | -------------------------------------------------------------------------------- /bsd/man/man4/stdout.4: -------------------------------------------------------------------------------- 1 | .so man4/fd.4 2 | -------------------------------------------------------------------------------- /bsd/man/man5/dirent.5: -------------------------------------------------------------------------------- 1 | .so man5/dir.5 2 | -------------------------------------------------------------------------------- /bsd/man/man9/copyinstr.9: -------------------------------------------------------------------------------- 1 | .so man9/copy.9 -------------------------------------------------------------------------------- /bsd/man/man2/FD_COPY.2: -------------------------------------------------------------------------------- 1 | .so man2/select.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/FD_ISSET.2: -------------------------------------------------------------------------------- 1 | .so man2/select.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/FD_ZERO.2: -------------------------------------------------------------------------------- 1 | .so man2/select.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/faccessat.2: -------------------------------------------------------------------------------- 1 | .so man2/access.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fchflags.2: -------------------------------------------------------------------------------- 1 | .so man2/chflags.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fchmodat.2: -------------------------------------------------------------------------------- 1 | .so man2/chmod.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fchownat.2: -------------------------------------------------------------------------------- 1 | .so man2/chown.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fgetxattr.2: -------------------------------------------------------------------------------- 1 | .so man2/getxattr.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fpathconf.2: -------------------------------------------------------------------------------- 1 | .so man2/pathconf.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fsetxattr.2: -------------------------------------------------------------------------------- 1 | .so man2/setxattr.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fstatfs.2: -------------------------------------------------------------------------------- 1 | .so man2/statfs.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fstatfs64.2: -------------------------------------------------------------------------------- 1 | .so man2/statfs.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/ftruncate.2: -------------------------------------------------------------------------------- 1 | .so man2/truncate.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/futimens.2: -------------------------------------------------------------------------------- 1 | .so man2/utimensat.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/futimes.2: -------------------------------------------------------------------------------- 1 | .so man2/utimes.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/getegid.2: -------------------------------------------------------------------------------- 1 | .so man2/getgid.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/geteuid.2: -------------------------------------------------------------------------------- 1 | .so man2/getuid.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/getpgid.2: -------------------------------------------------------------------------------- 1 | .so man2/getpgrp.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/getppid.2: -------------------------------------------------------------------------------- 1 | .so man2/getpid.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/kevent64.2: -------------------------------------------------------------------------------- 1 | .so man2/kqueue.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/kevent_qos.2: -------------------------------------------------------------------------------- 1 | .so man2/kqueue.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/lstat64.2: -------------------------------------------------------------------------------- 1 | .so man2/stat.2 2 | 3 | -------------------------------------------------------------------------------- /bsd/man/man2/renameat.2: -------------------------------------------------------------------------------- 1 | .so man2/rename.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/renamex_np.2: -------------------------------------------------------------------------------- 1 | .so man2/rename.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/setegid.2: -------------------------------------------------------------------------------- 1 | .so man2/setuid.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/seteuid.2: -------------------------------------------------------------------------------- 1 | .so man2/setuid.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/setlogin.2: -------------------------------------------------------------------------------- 1 | .so man2/getlogin.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/setpgrp.2: -------------------------------------------------------------------------------- 1 | .so man2/setpgid.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/symlinkat.2: -------------------------------------------------------------------------------- 1 | .so man2/symlink.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/unlinkat.2: -------------------------------------------------------------------------------- 1 | .so man2/unlink.2 2 | -------------------------------------------------------------------------------- /bsd/man/man4/urandom.4: -------------------------------------------------------------------------------- 1 | .so man4/random.4 2 | -------------------------------------------------------------------------------- /bsd/man/man2/clonefileat.2: -------------------------------------------------------------------------------- 1 | .so man2/clonefile.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fclonefileat.2: -------------------------------------------------------------------------------- 1 | .so man2/clonefile.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/flistxattr.2: -------------------------------------------------------------------------------- 1 | .so man2/listxattr.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/getaudit.2: -------------------------------------------------------------------------------- 1 | .so man2/getaudit_addr.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/posix_madvise.2: -------------------------------------------------------------------------------- 1 | .so man2/madvise.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/readlinkat.2: -------------------------------------------------------------------------------- 1 | .so man2/readlink.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/renameatx_np.2: -------------------------------------------------------------------------------- 1 | .so man2/rename.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/setaudit.2: -------------------------------------------------------------------------------- 1 | .so man2/setaudit_addr.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/setitimer.2: -------------------------------------------------------------------------------- 1 | .so man2/getitimer.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/setpriority.2: -------------------------------------------------------------------------------- 1 | .so man2/getpriority.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/setrlimit.2: -------------------------------------------------------------------------------- 1 | .so man2/getrlimit.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/setsockopt.2: -------------------------------------------------------------------------------- 1 | .so man2/getsockopt.2 2 | -------------------------------------------------------------------------------- /bsd/man/man4/networking.4: -------------------------------------------------------------------------------- 1 | .so man4/netintro.4 2 | -------------------------------------------------------------------------------- /config/Mach.arm64.exports: -------------------------------------------------------------------------------- 1 | _semaphore_timedwait 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fgetattrlist.2: -------------------------------------------------------------------------------- 1 | .so man2/getattrlist.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fremovexattr.2: -------------------------------------------------------------------------------- 1 | .so man2/removexattr.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fsetattrlist.2: -------------------------------------------------------------------------------- 1 | .so man2/setattrlist.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/getattrlistat.2: -------------------------------------------------------------------------------- 1 | .so man2/getattrlist.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/i386_set_ldt.2: -------------------------------------------------------------------------------- 1 | .so man2/i386_get_ldt.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/setattrlistat.2: -------------------------------------------------------------------------------- 1 | .so man2/setattrlist.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/settimeofday.2: -------------------------------------------------------------------------------- 1 | .so man2/gettimeofday.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/statfs64.2: -------------------------------------------------------------------------------- 1 | .so man2/statfs.2 2 | 3 | 4 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSData.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /tests/excserver.defs: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /config/Mach.x86_64.exports: -------------------------------------------------------------------------------- 1 | _host_vmxon 2 | _host_vmxoff 3 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSAction.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSArray.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSNumber.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSObject.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSString.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fs_snapshot_delete.2: -------------------------------------------------------------------------------- 1 | .so man2/fs_snapshot_create.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fs_snapshot_list.2: -------------------------------------------------------------------------------- 1 | .so man2/fs_snapshot_create.2 2 | -------------------------------------------------------------------------------- /bsd/man/man2/fs_snapshot_rename.2: -------------------------------------------------------------------------------- 1 | .so man2/fs_snapshot_create.2 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/IOMemoryMap.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/IOService.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSBoolean.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSContainer.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /osfmk/mach/audit_triggers_types.h: -------------------------------------------------------------------------------- 1 | typedef const char* string_t; 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/IOUserServer.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSCollection.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSDictionary.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /libsyscall/mach/.gitignore: -------------------------------------------------------------------------------- 1 | *.pbxuser 2 | *.perspectivev3 3 | build/ 4 | -------------------------------------------------------------------------------- /config/MACFramework.x86_64.exports: -------------------------------------------------------------------------------- 1 | _kau_will_audit 2 | _mac_do_machexc 3 | -------------------------------------------------------------------------------- /iokit/IOKitUser/IODispatchQueue.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/IODispatchSource.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/OSSerialization.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /config/Mach.arm.exports: -------------------------------------------------------------------------------- 1 | _mach_msg_send_from_kernel 2 | _semaphore_timedwait 3 | -------------------------------------------------------------------------------- /iokit/IOKitUser/IOMemoryDescriptor.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /libsyscall/custom/dummy.c: -------------------------------------------------------------------------------- 1 | /* Empty source file for Libsyscall_headers_Sim */ 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/IOBlockStorageDevice.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/IOTimerDispatchSource.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /bsd/man/man4/aio.4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/bsd/man/man4/aio.4 -------------------------------------------------------------------------------- /iokit/IOKitUser/IOBufferMemoryDescriptor.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/IODataQueueDispatchSource.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /iokit/IOKitUser/IOInterruptDispatchSource.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /tools/lldbmacros/plugins/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | Plugins that process other lldb macros' output 3 | """ 4 | -------------------------------------------------------------------------------- /libkdd/tests/corpse-sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/corpse-sample -------------------------------------------------------------------------------- /libkdd/tests/nested-sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/nested-sample -------------------------------------------------------------------------------- /tools/lldbmacros/usertaskdebugging/__init__.py: -------------------------------------------------------------------------------- 1 | """ Internal modules which should not be open sourced """ 2 | -------------------------------------------------------------------------------- /libkdd/tests/test-twr-sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/test-twr-sample -------------------------------------------------------------------------------- /libkdd/tests/corpse-twr-sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/corpse-twr-sample -------------------------------------------------------------------------------- /libkdd/tests/exitreason-sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/exitreason-sample -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample -------------------------------------------------------------------------------- /osfmk/conf/copyright: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1988-1995,1997-1999 Apple Computer, Inc. All Rights Reserved. 3 | */ 4 | -------------------------------------------------------------------------------- /libkdd/tests/corpse-twr-sample-v2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/corpse-twr-sample-v2 -------------------------------------------------------------------------------- /libkdd/tests/stackshot-with-kcid: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-with-kcid -------------------------------------------------------------------------------- /san/conf/files.arm64: -------------------------------------------------------------------------------- 1 | san/kasan-arm64.c optional config_kasan 2 | san/kasan-test-arm64.s optional config_kasan 3 | -------------------------------------------------------------------------------- /libkdd/tests/corpse-sample.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/corpse-sample.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/exitreason-codesigning: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/exitreason-codesigning -------------------------------------------------------------------------------- /libkdd/tests/stackshot-fault-stats: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-fault-stats -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-asid: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-asid -------------------------------------------------------------------------------- /libkdd/tests/stackshot-with-waitinfo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-with-waitinfo -------------------------------------------------------------------------------- /libkern/conf/files.arm: -------------------------------------------------------------------------------- 1 | libkern/zlib/arm/inffastS.s optional zlib 2 | libkern/zlib/arm/adler32vec.s optional zlib 3 | 4 | -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-cputime: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-cputime -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-duration: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-duration -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-stacktop: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-stacktop -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-tailspin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-tailspin -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/test-twr-sample.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/test-twr-sample.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/xnupost_testconfig-sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/xnupost_testconfig-sample -------------------------------------------------------------------------------- /san/conf/files.x86_64: -------------------------------------------------------------------------------- 1 | san/kasan-x86_64.c optional config_kasan 2 | san/kasan-test-x86_64.s optional config_kasan 3 | -------------------------------------------------------------------------------- /bsd/netkey/keyv2.h: -------------------------------------------------------------------------------- 1 | /* $KAME$ */ 2 | 3 | /* to be nuked shortly */ 4 | #error "obsolete include file, include net/pfkeyv2.h instead" 5 | -------------------------------------------------------------------------------- /libkdd/tests/corpse-twr-sample.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/corpse-twr-sample.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/exitreason-sample.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/exitreason-sample.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-coalitions: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-coalitions -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-cpu-times: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-cpu-times -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-new-arrays: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-new-arrays -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-old-arrays: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-old-arrays -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-tailspin-2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-tailspin-2 -------------------------------------------------------------------------------- /libkdd/tests/stackshot-with-kcid.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-with-kcid.plist.gz -------------------------------------------------------------------------------- /tests/drop_priv.h: -------------------------------------------------------------------------------- 1 | #ifndef __DROP_PRIV_H 2 | #define __DROP_PRIV_H 3 | 4 | void drop_priv(void); 5 | 6 | #endif /* __DROP_PRIV_H */ 7 | -------------------------------------------------------------------------------- /libkdd/tests/corpse-twr-sample-v2.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/corpse-twr-sample-v2.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-fault-stats.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-fault-stats.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-asid.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-asid.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-instrs-cycles: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-instrs-cycles -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-sharedcachev2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-sharedcachev2 -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-thread-groups: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-thread-groups -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-thread-policy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-thread-policy -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-ths-thread-t: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-ths-thread-t -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-turnstileinfo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-turnstileinfo -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarFullMiddle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarFullMiddle.png -------------------------------------------------------------------------------- /tools/lldbmacros/core/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | Core classes and functions used for lldb kernel debugging. 3 | """ 4 | from cvalue import value 5 | -------------------------------------------------------------------------------- /libkdd/tests/delta-stackshot-sample-new-arrays: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/delta-stackshot-sample-new-arrays -------------------------------------------------------------------------------- /libkdd/tests/delta-stackshot-sample-old-arrays: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/delta-stackshot-sample-old-arrays -------------------------------------------------------------------------------- /libkdd/tests/exitreason-codesigning.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/exitreason-codesigning.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-asid-pagetable: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-asid-pagetable -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-cputime.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-cputime.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-with-waitinfo.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-with-waitinfo.plist.gz -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarEmptyMiddle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarEmptyMiddle.png -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarFullMiddle@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarFullMiddle@2x.png -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-cpu-times.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-cpu-times.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-duration.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-duration.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-stacktop.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-stacktop.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-tailspin.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-tailspin.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-with-shared-cache-layout: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-with-shared-cache-layout -------------------------------------------------------------------------------- /libkdd/tests/xnupost_testconfig-sample.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/xnupost_testconfig-sample.plist.gz -------------------------------------------------------------------------------- /libkern/conf/copyright: -------------------------------------------------------------------------------- 1 | /* 2 | * Mach Operating System 3 | * Copyright (c) 1991 Carnegie Mellon University 4 | * All Rights Reserved. 5 | */ 6 | 7 | -------------------------------------------------------------------------------- /libsa/conf/copyright: -------------------------------------------------------------------------------- 1 | /* 2 | * Mach Operating System 3 | * Copyright (c) 1991 Carnegie Mellon University 4 | * All Rights Reserved. 5 | */ 6 | 7 | -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarEmptyLeftEndcap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarEmptyLeftEndcap.png -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarEmptyMiddle@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarEmptyMiddle@2x.png -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarFullLeftEndcap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarFullLeftEndcap.png -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarFullRightEndcap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarFullRightEndcap.png -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-coalitions.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-coalitions.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-delta-thread-policy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-delta-thread-policy -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-dispatch-queue-label: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-dispatch-queue-label -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-new-arrays.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-new-arrays.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-old-arrays.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-old-arrays.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-tailspin-2.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-tailspin-2.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-thread-groups-flags: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-thread-groups-flags -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-ths-thread-t.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-ths-thread-t.plist.gz -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarEmptyLeftEndcap@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarEmptyLeftEndcap@2x.png -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarEmptyRightEndcap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarEmptyRightEndcap.png -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarFullLeftEndcap@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarFullLeftEndcap@2x.png -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarFullRightEndcap@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarFullRightEndcap@2x.png -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-asid-pagetable.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-asid-pagetable.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-instrs-cycles.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-instrs-cycles.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-sharedcachev2.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-sharedcachev2.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-thread-groups.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-thread-groups.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-thread-policy.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-thread-policy.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-turnstileinfo.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-turnstileinfo.plist.gz -------------------------------------------------------------------------------- /osfmk/console/art/ProgressBarEmptyRightEndcap@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/osfmk/console/art/ProgressBarEmptyRightEndcap@2x.png -------------------------------------------------------------------------------- /san/Kasan.exports: -------------------------------------------------------------------------------- 1 | # The KASan kext is expected to exist for both KASan and non-KASan configurations, 2 | # so we generate an empty export list for non-KASan. 3 | -------------------------------------------------------------------------------- /libkdd/tests/delta-stackshot-sample-new-arrays.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/delta-stackshot-sample-new-arrays.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/delta-stackshot-sample-old-arrays.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/delta-stackshot-sample-old-arrays.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-with-shared-cache-layout.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-with-shared-cache-layout.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-delta-thread-policy.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-delta-thread-policy.plist.gz -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-thread-groups-flags.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-thread-groups-flags.plist.gz -------------------------------------------------------------------------------- /iokit/conf/files.arm: -------------------------------------------------------------------------------- 1 | iokit/Families/IONVRAM/IONVRAMController.cpp optional iokitcpp 2 | 3 | # Power Domains 4 | iokit/Kernel/IOPMrootDomain.cpp optional iokitcpp 5 | -------------------------------------------------------------------------------- /libkdd/tests/stackshot-sample-dispatch-queue-label.plist.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apple-opensource/xnu/HEAD/libkdd/tests/stackshot-sample-dispatch-queue-label.plist.gz -------------------------------------------------------------------------------- /config/Unused.arm.exports: -------------------------------------------------------------------------------- 1 | # Symbols that are unused as KPI, but must be globally exported 2 | _arm64_root_pgtable_level 3 | _arm64_root_pgtable_num_ttes 4 | _arm_hardware_page_size 5 | -------------------------------------------------------------------------------- /config/Unused.arm64.exports: -------------------------------------------------------------------------------- 1 | # Symbols that are unused as KPI, but must be globally exported 2 | _arm64_root_pgtable_level 3 | _arm64_root_pgtable_num_ttes 4 | _arm_hardware_page_size 5 | -------------------------------------------------------------------------------- /libkdd/kdd.framework/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module kdd { 2 | header "kcdata.h" 3 | module kdd_kdd { 4 | requires objc 5 | header "kdd.h" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /tools/tests/perf_index/md5.h: -------------------------------------------------------------------------------- 1 | #ifndef __MD5_H_ 2 | #define __MD5_H_ 3 | 4 | #include 5 | 6 | void md5_hash(uint8_t *message, uint64_t len, uint32_t *hash); 7 | 8 | #endif 9 | -------------------------------------------------------------------------------- /tools/tests/perf_index/ramdisk.h: -------------------------------------------------------------------------------- 1 | #ifndef __RAMDISK_H_ 2 | #define __RAMDISK_H_ 3 | 4 | int setup_ram_volume(const char* name, char* path); 5 | int cleanup_ram_volume(char* path); 6 | 7 | #endif 8 | -------------------------------------------------------------------------------- /tools/lldbmacros/.lldbinit: -------------------------------------------------------------------------------- 1 | settings set target.process.python-os-plugin-path ./core/operating_system.py 2 | settings set plugin.dynamic-loader.darwin-kernel.load-kexts false 3 | 4 | command script import ./xnu.py 5 | -------------------------------------------------------------------------------- /tests/counter/common.h: -------------------------------------------------------------------------------- 1 | #ifndef _COUNTER_COMMON_H 2 | #define _COUNTER_COMMON_H 3 | 4 | int init_scalable_counter_test(void); 5 | int fini_scalable_counter_test(void); 6 | 7 | #endif /* !defined(_COUNTER_COMMON_H) */ 8 | -------------------------------------------------------------------------------- /tools/lockstat/Makefile: -------------------------------------------------------------------------------- 1 | CFLAGS=-g -Os -arch x86_64 -arch i386 2 | 3 | TARGETS = lockstat 4 | 5 | all: $(TARGETS) 6 | 7 | lockstat: lockstat.c 8 | ${CC} ${CFLAGS} -o $@ $? 9 | clean: 10 | rm -rf $(TARGETS) 11 | -------------------------------------------------------------------------------- /bsd/netinet6/ip6.h: -------------------------------------------------------------------------------- 1 | /* $FreeBSD: src/sys/netinet6/ip6.h,v 1.4.2.1 2000/07/15 07:14:34 kris Exp $ */ 2 | /* $KAME: ip6.h,v 1.7 2000/03/25 07:23:36 sumikawa Exp $ */ 3 | 4 | #error "netinet6/ip6.h is obsolete. use netinet/ip6.h" 5 | -------------------------------------------------------------------------------- /config/Unused.exports: -------------------------------------------------------------------------------- 1 | # Symbols that are unused as KPI, but must be globally exported 2 | _atm_mana* 3 | _bank_mana* 4 | _dtrace_zero* 5 | _gLoadedKextSummaries 6 | _ipc_importance_mana* 7 | _ipc_mqueue_full 8 | _user_data_mana* 9 | -------------------------------------------------------------------------------- /bsd/netinet6/icmp6.h: -------------------------------------------------------------------------------- 1 | /* $FreeBSD: src/sys/netinet6/icmp6.h,v 1.5.2.1 2000/07/15 07:14:33 kris Exp $ */ 2 | /* $KAME: icmp6.h,v 1.17 2000/06/11 17:23:40 jinmei Exp $ */ 3 | 4 | #error "netinet6/icmp6.h is obsolete. use netinet/icmp6.h" 5 | -------------------------------------------------------------------------------- /config/MACFramework.exports: -------------------------------------------------------------------------------- 1 | _mac_policy_register 2 | _mac_policy_unregister 3 | _mac_vnop_getxattr 4 | _mac_vnop_setxattr 5 | _mac_vnop_removexattr 6 | _mac_audit_text 7 | _VNOP_SETXATTR 8 | _VNOP_GETXATTR 9 | _mac_schedule_userret 10 | -------------------------------------------------------------------------------- /bsd/conf/copyright: -------------------------------------------------------------------------------- 1 | /* 2 | * Mach Operating System 3 | * Copyright (c) 1989 Carnegie-Mellon University 4 | * All rights reserved. The CMU software License Agreement specifies 5 | * the terms and conditions for use and redistribution. 6 | */ 7 | -------------------------------------------------------------------------------- /iokit/conf/copyright: -------------------------------------------------------------------------------- 1 | /* 2 | * Mach Operating System 3 | * Copyright (c) 1989 Carnegie-Mellon University 4 | * All rights reserved. The CMU software License Agreement specifies 5 | * the terms and conditions for use and redistribution. 6 | */ 7 | -------------------------------------------------------------------------------- /iokit/conf/files.arm64: -------------------------------------------------------------------------------- 1 | iokit/Families/IONVRAM/IONVRAMController.cpp optional iokitcpp 2 | 3 | # Power Domains 4 | iokit/Kernel/IOPMrootDomain.cpp optional iokitcpp 5 | 6 | # SMP 7 | iokit/Kernel/arm/AppleARMSMP.cpp optional iokitcpp 8 | -------------------------------------------------------------------------------- /pexpert/conf/copyright: -------------------------------------------------------------------------------- 1 | /* 2 | * Mach Operating System 3 | * Copyright (c) 1989 Carnegie-Mellon University 4 | * All rights reserved. The CMU software License Agreement specifies 5 | * the terms and conditions for use and redistribution. 6 | */ 7 | -------------------------------------------------------------------------------- /tools/tests/perf_index/PerfIndex_COPS_Module/PerfIndex.h: -------------------------------------------------------------------------------- 1 | // 2 | // PerfIndex.h 3 | // PerfIndex 4 | // 5 | // Created by Mark Hamilton on 8/20/13. 6 | // 7 | // 8 | 9 | @protocol HGTest 10 | 11 | - (BOOL)execute; 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /config/Libkern.arm.exports: -------------------------------------------------------------------------------- 1 | _OSAddAtomic64 2 | _OSCompareAndSwap64 3 | __ZN15OSMetaClassBase9_ptmf2ptfEPKS_MS_FvvE 4 | __ZN12OSOrderedSet12withCapacityEjPFlPK15OSMetaClassBaseS2_PvES3_ 5 | __ZN12OSOrderedSet16initWithCapacityEjPFlPK15OSMetaClassBaseS2_PvES3_ 6 | -------------------------------------------------------------------------------- /tests/bounded_ptr.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Test runner for all bounded_ptr tests. 3 | // 4 | 5 | #include 6 | 7 | T_GLOBAL_META( 8 | T_META_NAMESPACE("bounded_ptr"), 9 | T_META_CHECK_LEAKS(false), 10 | T_META_RUN_CONCURRENTLY(true) 11 | ); 12 | -------------------------------------------------------------------------------- /tools/tests/perf_index/perfindex-syscall.c: -------------------------------------------------------------------------------- 1 | #include "perf_index.h" 2 | #include "fail.h" 3 | #include 4 | 5 | DECL_TEST { 6 | long long i; 7 | for (i = 0; i < length; i++) { 8 | getppid(); 9 | } 10 | return PERFINDEX_SUCCESS; 11 | } 12 | -------------------------------------------------------------------------------- /tests/bounded_array.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Test runner for all bounded_array tests. 3 | // 4 | 5 | #include 6 | 7 | T_GLOBAL_META( 8 | T_META_NAMESPACE("bounded_array"), 9 | T_META_CHECK_LEAKS(false), 10 | T_META_RUN_CONCURRENTLY(true) 11 | ); 12 | -------------------------------------------------------------------------------- /tests/test_utils.h: -------------------------------------------------------------------------------- 1 | #ifndef XNU_DARWINTEST_UTILS_H 2 | #define XNU_DARWINTEST_UTILS_H 3 | 4 | #include 5 | 6 | /* Misc. utility functions for writing darwintests. */ 7 | bool is_development_kernel(void); 8 | #endif /* !defined(XNU_DARWINTEST_UTILS_H) */ 9 | -------------------------------------------------------------------------------- /tools/tests/perf_index/perfindex-zfod.c: -------------------------------------------------------------------------------- 1 | #include "perf_index.h" 2 | #include "test_fault_helper.h" 3 | 4 | DECL_SETUP { 5 | return test_fault_setup(); 6 | } 7 | 8 | DECL_TEST { 9 | return test_fault_helper(thread_id, num_threads, length, TESTZFOD); 10 | } 11 | -------------------------------------------------------------------------------- /tests/safe_allocation.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Test runner for all `safe_allocation` tests. 3 | // 4 | 5 | #include 6 | 7 | T_GLOBAL_META( 8 | T_META_NAMESPACE("safe_allocation"), 9 | T_META_CHECK_LEAKS(false), 10 | T_META_RUN_CONCURRENTLY(true) 11 | ); 12 | -------------------------------------------------------------------------------- /tools/tests/perf_index/perfindex-fault.c: -------------------------------------------------------------------------------- 1 | #include "perf_index.h" 2 | #include "test_fault_helper.h" 3 | 4 | DECL_SETUP { 5 | return test_fault_setup(); 6 | } 7 | 8 | DECL_TEST { 9 | return test_fault_helper(thread_id, num_threads, length, TESTFAULT); 10 | } 11 | -------------------------------------------------------------------------------- /SETUP/setup.sh: -------------------------------------------------------------------------------- 1 | setup_tmp=`mktemp -d -t setup` 2 | printenv | sort > "${setup_tmp}/orig" 3 | make print_exports | grep -E -v '^(MAKE|MFLAGS|SHLVL)' > "${setup_tmp}/exports" 4 | eval `comm -13 "${setup_tmp}/orig" "${setup_tmp}/exports" | sed 's,^\(.*\)$,export "\1",'` 5 | 6 | 7 | -------------------------------------------------------------------------------- /bsd/arm/_limits.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004-2007 Apple Inc. All rights reserved. 3 | */ 4 | #ifndef _ARM__LIMITS_H_ 5 | #define _ARM__LIMITS_H_ 6 | 7 | #define __DARWIN_CLK_TCK 100 /* ticks per second */ 8 | 9 | #endif /* _ARM__LIMITS_H_ */ 10 | -------------------------------------------------------------------------------- /tests/bounded_array_ref.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Test runner for all bounded_array_ref tests. 3 | // 4 | 5 | #include 6 | 7 | T_GLOBAL_META( 8 | T_META_NAMESPACE("bounded_array_ref"), 9 | T_META_CHECK_LEAKS(false), 10 | T_META_RUN_CONCURRENTLY(true) 11 | ); 12 | -------------------------------------------------------------------------------- /tests/driverkit/Makefile: -------------------------------------------------------------------------------- 1 | ifdef BASEDSTROOT 2 | override DSTROOT = $(BASEDSTROOT) 3 | endif 4 | 5 | # the xnu build system will only ever call us with the default target 6 | .DEFAULT_GOAL := install 7 | 8 | install: 9 | mkdir -p $(DSTROOT)/AppleInternal 10 | 11 | 12 | -------------------------------------------------------------------------------- /tools/tests/perf_index/PerfIndex_COPS_Module/Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #ifdef __OBJC__ 8 | #import 9 | #endif 10 | -------------------------------------------------------------------------------- /config/Libkern.arm64.exports: -------------------------------------------------------------------------------- 1 | _OSAddAtomic64 2 | _OSCompareAndSwap64 3 | _PAGE_SHIFT_CONST 4 | __ZN15OSMetaClassBase9_ptmf2ptfEPKS_MS_FvvE 5 | __ZN12OSOrderedSet12withCapacityEjPFiPK15OSMetaClassBaseS2_PvES3_ 6 | __ZN12OSOrderedSet16initWithCapacityEjPFiPK15OSMetaClassBaseS2_PvES3_ 7 | -------------------------------------------------------------------------------- /tests/intrusive_shared_ptr.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Test runner for all intrusive_shared_ptr tests. 3 | // 4 | 5 | #include 6 | 7 | T_GLOBAL_META( 8 | T_META_NAMESPACE("intrusive_shared_ptr"), 9 | T_META_CHECK_LEAKS(false), 10 | T_META_RUN_CONCURRENTLY(true) 11 | ); 12 | -------------------------------------------------------------------------------- /pexpert/arm/pe_bootargs.c: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2000-2007 Apple Inc. All rights reserved. 3 | */ 4 | #include 5 | #include 6 | 7 | char * 8 | PE_boot_args( 9 | void) 10 | { 11 | return (char *)((boot_args *)PE_state.bootArgs)->CommandLine; 12 | } 13 | -------------------------------------------------------------------------------- /san/ubsan-blacklist: -------------------------------------------------------------------------------- 1 | [.*] 2 | src:./san/ubsan* 3 | 4 | [bounds] 5 | src:./osfmk/corecrypto/* 6 | 7 | [alignment] 8 | 9 | src:./libsa/bootstrap.cpp 10 | src:./bsd/net/necp_client.c 11 | src:./pexpert/arm/pe_identify_machine.c 12 | 13 | [object-size] 14 | src:./osfmk/i386/locks_i386.c 15 | 16 | -------------------------------------------------------------------------------- /tests/jumbo_va_spaces_28530648.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | dynamic-codesigning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/settimeofday_29193041.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.settime 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /pexpert/conf/files: -------------------------------------------------------------------------------- 1 | # 2 | OPTIONS/config_dtrace optional config_dtrace 3 | 4 | # 5 | # pexpert generic 6 | # 7 | 8 | pexpert/gen/device_tree.c standard 9 | pexpert/gen/bootargs.c standard 10 | pexpert/gen/pe_gen.c standard 11 | pexpert/gen/kcformat.c standard 12 | 13 | # 14 | 15 | -------------------------------------------------------------------------------- /tests/disk_mount_conditioner-entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.dmc.set 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/legacy_footprint.entitlement: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.memory.legacy_footprint 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/work_interval_test.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.kernel.work-interval 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/atm_diagnostic_flag.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.set-atm-diagnostic-flag 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/exception_tests.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.get-movable-control-port 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/jitbox-entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | dynamic-codesigning 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /tests/private_entitlement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.entitlement-1 6 | something 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/proc_info_44873309.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.kernel.global-proc-info 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/ptrauth-entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.security.storage.AppBundles 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/trial_experiments.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.write-kr-experiment-factors 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tools/tests/personas/persona-entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.persona-mgmt 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /bsd/sys/sys_cdefs.modulemap: -------------------------------------------------------------------------------- 1 | // Module map for sys/cdefs.h. 2 | // 3 | // See also: stdint.modulemap 4 | 5 | module Darwin_C_stdint._sys_cdefs { 6 | export * 7 | header "sys/cdefs.h" 8 | textual header "sys/_symbol_aliasing.h" 9 | textual header "sys/_posix_availability.h" 10 | } 11 | -------------------------------------------------------------------------------- /config/generate_linker_aliases.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | 5 | if [ $# -lt 2 ]; then 6 | echo "Usage: $0 output.exp input1 [input2 ... ]" 1>&2 7 | exit 1 8 | fi 9 | 10 | OUTPUT="$1" 11 | shift 12 | 13 | ( grep -h ":" "$@" | awk -F: '{print $2 " " $1}' ) | sort -u > "$OUTPUT" 14 | 15 | exit 0 16 | -------------------------------------------------------------------------------- /tests/proc_info_list_kthreads.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.kernel.global-proc-info 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /config/BSDKernel.arm.exports: -------------------------------------------------------------------------------- 1 | _file_vnode 2 | _mbuf_data 3 | _mbuf_len 4 | _mbuf_next 5 | _mbuf_nextpkt 6 | _mbuf_pkthdr_header 7 | _mbuf_pkthdr_len 8 | _mbuf_pkthdr_rcvif 9 | _mbuf_pkthdr_setheader 10 | _mbuf_setlen 11 | _mbuf_setnextpkt 12 | _mbuf_type 13 | _proc_ucred 14 | _rootvnode 15 | _suser 16 | _ubc_setcred 17 | -------------------------------------------------------------------------------- /config/BSDKernel.arm64.exports: -------------------------------------------------------------------------------- 1 | _file_vnode 2 | _mbuf_data 3 | _mbuf_len 4 | _mbuf_next 5 | _mbuf_nextpkt 6 | _mbuf_pkthdr_header 7 | _mbuf_pkthdr_len 8 | _mbuf_pkthdr_rcvif 9 | _mbuf_pkthdr_setheader 10 | _mbuf_setlen 11 | _mbuf_setnextpkt 12 | _mbuf_type 13 | _proc_ucred 14 | _rootvnode 15 | _suser 16 | _ubc_setcred 17 | -------------------------------------------------------------------------------- /config/BSDKernel.x86_64.exports: -------------------------------------------------------------------------------- 1 | _in6_cksum:_inet6_cksum 2 | _mbuf_data 3 | _mbuf_inet6_cksum 4 | _mbuf_len 5 | _mbuf_next 6 | _mbuf_nextpkt 7 | _mbuf_pkthdr_header 8 | _mbuf_pkthdr_len 9 | _mbuf_pkthdr_rcvif 10 | _mbuf_pkthdr_setheader 11 | _mbuf_setlen 12 | _mbuf_setnextpkt 13 | _mbuf_type 14 | _sysctl_register_fixed 15 | -------------------------------------------------------------------------------- /pexpert/conf/files.x86_64: -------------------------------------------------------------------------------- 1 | pexpert/i386/pe_init.c standard 2 | pexpert/i386/pe_bootargs.c standard 3 | pexpert/i386/pe_identify_machine.c standard 4 | pexpert/i386/pe_kprintf.c standard 5 | pexpert/i386/pe_interrupt.c standard 6 | pexpert/i386/pe_serial.c standard 7 | -------------------------------------------------------------------------------- /tests/sr_entitlement.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.pac.shared_region_id 6 | SharedRegionTest 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/debug_control_port_for_pid_entitlement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.debug_port 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tests/task_create_suid_cred_entitlement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | com.apple.private.suid_cred 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /tests/bounded_ptr_03.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Make sure that the forward declaration header can be included in C++03. 3 | // 4 | 5 | #include 6 | #include 7 | 8 | T_DECL(fwd_decl_cxx03, "bounded_ptr.fwd_decl.cxx03") { 9 | T_PASS("bounded_ptr.fwd_decl.cxx03 compiled successfully"); 10 | } 11 | -------------------------------------------------------------------------------- /bsd/arm/psl.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2000-2007 Apple Inc. All rights reserved. 3 | */ 4 | /* 5 | * Copyright (c) 1992 NeXT Computer, Inc. 6 | * 7 | */ 8 | 9 | #if KERNEL_PRIVATE 10 | 11 | #ifndef _BSD_ARM_PSL_H_ 12 | #define _BSD_ARM_PSL_H_ 13 | 14 | #endif /* _BSD_ARM_PSL_H_ */ 15 | 16 | #endif /* KERNEL_PRIVATE */ 17 | -------------------------------------------------------------------------------- /bsd/arm/reg.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2000-2007 Apple Inc. All rights reserved. 3 | */ 4 | /* 5 | * Copyright (c) 1992 NeXT Computer, Inc. 6 | * 7 | */ 8 | 9 | #ifdef KERNEL_PRIVATE 10 | 11 | #ifndef _BSD_ARM_REG_H_ 12 | #define _BSD_ARM_REG_H_ 13 | 14 | #endif /* _BSD_ARM_REG_H_ */ 15 | 16 | #endif /* KERNEL_PRIVATE */ 17 | -------------------------------------------------------------------------------- /tests/vm/entitlement_increased_memory_limit.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.kernel.increased-memory-limit 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /tools/tests/perf_index/test_fault_helper.h: -------------------------------------------------------------------------------- 1 | #ifndef __TEST_FAULT_HELPER_H_ 2 | #define __TEST_FAULT_HELPER_H_ 3 | 4 | typedef enum { 5 | TESTZFOD, 6 | TESTFAULT 7 | } testtype_t; 8 | 9 | int test_fault_setup(); 10 | int test_fault_helper(int thread_id, int num_threads, long long length, testtype_t testtype); 11 | 12 | #endif 13 | -------------------------------------------------------------------------------- /tests/sr_entitlement_helper.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | /* 6 | * This is a test helper that just has to run for a while. 7 | */ 8 | int 9 | main(int argc, char **argv) 10 | { 11 | printf("Hello, world.\n"); 12 | sleep(15); 13 | printf("That's all folks.\n"); 14 | exit(0); 15 | } 16 | -------------------------------------------------------------------------------- /tests/subsystem_root_path-entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.spawn-subsystem-root 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /bsd/dev/dtrace/scripts/log_unnest_badness.d: -------------------------------------------------------------------------------- 1 | #!/usr/sbin/dtrace -s 2 | 3 | vminfo::log_unnest_badness: 4 | { 5 | printf("%d[%s]: unexpected unnest(0x%llx, 0x%llx) below 0x%llx", 6 | pid, 7 | execname, 8 | (uint64_t) arg1, 9 | (uint64_t) arg2, 10 | (uint64_t) arg3); 11 | stack(); 12 | ustack(); 13 | } 14 | -------------------------------------------------------------------------------- /tests/jumbo_va_spaces_52551256.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | com.apple.developer.kernel.extended-virtual-addressing 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /tests/iokit/service_helpers.h: -------------------------------------------------------------------------------- 1 | #ifndef _XNU_TESTS_IOKIT_SERVICE_HELPERS_H_ 2 | #define _XNU_TESTS_IOKIT_SERVICE_HELPERS_H_ 3 | 4 | #include 5 | 6 | __BEGIN_DECLS 7 | 8 | int IOTestServiceFindService(const char * name, io_service_t * serviceOut); 9 | 10 | __END_DECLS 11 | 12 | #endif /* _XNU_TESTS_IOKIT_SERVICE_HELPERS_H_ */ 13 | -------------------------------------------------------------------------------- /tests/lockf_uaf_poc/README: -------------------------------------------------------------------------------- 1 | This Proof-of-Concept (PoC) is based on code from a security researcher 2 | (see rdar://70587638), and should not be used for any other purpose other 3 | than this test. In particular, this should not be used in other shipping 4 | code or as reference material to create shipping code without first checking 5 | with Apple Legal. 6 | -------------------------------------------------------------------------------- /tests/sbuf_tests.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | T_DECL(sbuf_tests, "invoke the sbuf unit tests") 5 | { 6 | char buf[5] = { 'A', 'B', 'C', 'D', 0 }; 7 | int ret; 8 | 9 | ret = sysctlbyname("kern.sbuf_test", NULL, NULL, buf, sizeof(buf) - 1); 10 | T_ASSERT_POSIX_SUCCESS(ret, "kernel sbuf tests failed"); 11 | } 12 | -------------------------------------------------------------------------------- /iokit/conf/files.x86_64: -------------------------------------------------------------------------------- 1 | 2 | # libIOKit 3 | 4 | iokit/Kernel/IOSyncer.cpp optional iokitcpp 5 | 6 | iokit/Kernel/x86_64/IOAsmSupport.s standard 7 | 8 | # Power Domains 9 | iokit/Kernel/IOPMrootDomain.cpp optional iokitcpp 10 | 11 | # Key Store helper 12 | iokit/Kernel/i386/IOKeyStoreHelper.cpp standard 13 | -------------------------------------------------------------------------------- /libkdd/tests/kdd_bridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // kdd_bridge.h 3 | // kdd 4 | // 5 | // Created by Lawrence D'Anna on 11/13/15. 6 | // Copyright © 2015 Vishal Patel. All rights reserved. 7 | // 8 | 9 | #ifndef kdd_bridge_h 10 | #define kdd_bridge_h 11 | 12 | #include 13 | #include 14 | #include 15 | 16 | #endif /* kdd_bridge_h */ 17 | -------------------------------------------------------------------------------- /tools/tests/perf_index/perfindex-cpu.c: -------------------------------------------------------------------------------- 1 | #include "perf_index.h" 2 | #include "fail.h" 3 | #include "md5.h" 4 | #include 5 | #include 6 | 7 | DECL_TEST { 8 | long long i; 9 | uint32_t digest[4]; 10 | for (i = 0; i < length; i++) { 11 | md5_hash((uint8_t *)&i, sizeof(i), digest); 12 | } 13 | return PERFINDEX_SUCCESS; 14 | } 15 | -------------------------------------------------------------------------------- /bsd/dev/memdev.h: -------------------------------------------------------------------------------- 1 | #ifndef _SYS_MEMDEV_H_ 2 | #define _SYS_MEMDEV_H_ 3 | 4 | #include 5 | 6 | #ifdef KERNEL_PRIVATE 7 | 8 | #ifdef __APPLE_API_PRIVATE 9 | 10 | void mdevinit(vm_offset_t base, unsigned int size); 11 | 12 | #endif /* __APPLE_API_PRIVATE */ 13 | 14 | #endif /* KERNEL_PRIVATE */ 15 | 16 | #endif /* _SYS_MEMDEV_H_*/ 17 | -------------------------------------------------------------------------------- /bsd/machine/machine_types.modulemap: -------------------------------------------------------------------------------- 1 | // Module maps for machine/types.h and machine/_types.h. 2 | // 3 | // See also: stdint.modulemap 4 | 5 | module Darwin_C_stdint._machine_types { 6 | export * 7 | header "machine/types.h" 8 | } 9 | module Darwin_C_stdint._machine__types { 10 | export * 11 | header "machine/_types.h" 12 | } 13 | -------------------------------------------------------------------------------- /pexpert/conf/files.arm: -------------------------------------------------------------------------------- 1 | pexpert/arm/pe_bootargs.c standard 2 | pexpert/arm/pe_fiq.c standard 3 | pexpert/arm/pe_identify_machine.c standard 4 | pexpert/arm/pe_init.c standard 5 | pexpert/arm/pe_kprintf.c standard 6 | pexpert/arm/pe_serial.c standard 7 | pexpert/arm/pe_consistent_debug.c standard 8 | -------------------------------------------------------------------------------- /tests/ipsec.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.nehelper.privileged 6 | 7 | com.apple.private.neagent 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /tests/stackshot_translated_child.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | int 6 | main() 7 | { 8 | // Always signal parent to unblock them 9 | kill(getppid(), SIGUSR1); 10 | 11 | #if !defined(__x86_64__) 12 | os_crash("translated child not running as x86_64"); 13 | #endif 14 | sleep(100); 15 | return 0; 16 | } 17 | -------------------------------------------------------------------------------- /tools/tests/testkext/testvmx.h: -------------------------------------------------------------------------------- 1 | /* 2 | * testvmx.h 3 | * testkext 4 | * 5 | */ 6 | 7 | #include 8 | #include 9 | 10 | class testvmx : public IOService { 11 | OSDeclareDefaultStructors(testvmx); 12 | 13 | virtual bool start( IOService * provider ); 14 | 15 | virtual void stop( IOService * provider ); 16 | }; 17 | -------------------------------------------------------------------------------- /config/Libkern.x86_64.exports: -------------------------------------------------------------------------------- 1 | _OSAddAtomic64 2 | _OSCompareAndSwap64 3 | __ZN12OSOrderedSet12withCapacityEjPFiPK15OSMetaClassBaseS2_PvES3_ 4 | __ZN12OSOrderedSet16initWithCapacityEjPFiPK15OSMetaClassBaseS2_PvES3_ 5 | _sprintf 6 | _strcat 7 | _strcpy 8 | _vsprintf 9 | 10 | __ZN15OSMetaClassBase25_RESERVEDOSMetaClassBase3Ev:__ZN15OSMetaClassBase8DispatchE5IORPC 11 | -------------------------------------------------------------------------------- /tests/ldt_entitlement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.ldt-in-64bit-process 6 | 7 | com.apple.security.mmap-map-32bit 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /pexpert/conf/files.arm64: -------------------------------------------------------------------------------- 1 | pexpert/arm/pe_bootargs.c standard 2 | pexpert/arm/pe_consistent_debug.c standard 3 | pexpert/arm/pe_fiq.c standard 4 | pexpert/arm/pe_identify_machine.c standard 5 | pexpert/arm/pe_init.c standard 6 | pexpert/arm/pe_kprintf.c standard 7 | pexpert/arm/pe_serial.c standard 8 | -------------------------------------------------------------------------------- /bsd/dev/dtrace/scripts/vm_map_delete_permanent.d: -------------------------------------------------------------------------------- 1 | #!/usr/sbin/dtrace -s 2 | 3 | vminfo::vm_map_delete_permanent: 4 | { 5 | printf("%d[%s]: attempt to delete permanent mapping (0x%llx, 0x%llx) prot 0x%x/0x%x", 6 | $pid, 7 | execname, 8 | (uint64_t) arg0, 9 | (uint64_t) arg1, 10 | arg2, 11 | arg3); 12 | stack(); 13 | ustack(); 14 | } 15 | -------------------------------------------------------------------------------- /libsa/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | COMP_SUBDIRS = conf 10 | 11 | include $(MakeInc_rule) 12 | include $(MakeInc_dir) 13 | -------------------------------------------------------------------------------- /bsd/arm/signal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2000-2009 Apple, Inc. All rights reserved. 3 | */ 4 | /* 5 | * Copyright (c) 1992 NeXT Computer, Inc. 6 | * 7 | */ 8 | 9 | #ifndef _ARM_SIGNAL_ 10 | #define _ARM_SIGNAL_ 1 11 | 12 | #include 13 | 14 | #ifndef _ANSI_SOURCE 15 | typedef int sig_atomic_t; 16 | #endif /* ! _ANSI_SOURCE */ 17 | 18 | #endif /* _ARM_SIGNAL_ */ 19 | -------------------------------------------------------------------------------- /tests/kernel_symbolication_entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.kernel.get-kext-info 6 | 7 | com.apple.private.security.get-kernel-info 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /tools/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | CONFIG_SUBDIRS = lldbmacros 10 | 11 | include $(MakeInc_rule) 12 | include $(MakeInc_dir) 13 | -------------------------------------------------------------------------------- /san/kasan-blacklist-arm64: -------------------------------------------------------------------------------- 1 | # ARM64 specific blacklist 2 | 3 | [address] 4 | 5 | # Exclude KASan runtime 6 | src:./san/kasan-arm64.c 7 | src:./osfmk/arm/machine_routines_common.c 8 | 9 | # These use a local variable to work out which stack we're on, but can end up with 10 | # a fakestack allocation. 11 | fun:ml_at_interrupt_context 12 | fun:ml_stack_remaining 13 | fun:ml_stack_base 14 | fun:ml_stack_size 15 | -------------------------------------------------------------------------------- /EXTERNAL_HEADERS/sys/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | INSTINC_SUBDIRS = \ 10 | _pthread 11 | 12 | include $(MakeInc_rule) 13 | include $(MakeInc_dir) 14 | -------------------------------------------------------------------------------- /tests/restrict_jit.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | dynamic-codesigning 6 | 7 | com.apple.security.cs.allow-jit 8 | 9 | com.apple.security.cs.single-jit 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /tests/vm_set_max_addr_helper.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | int 6 | main(void) 7 | { 8 | kern_return_t kr; 9 | mach_vm_address_t addr = 50ULL * 1024ULL * 1024ULL * 1024ULL; 10 | 11 | kr = mach_vm_allocate(current_task(), &addr, 4096, VM_FLAGS_FIXED); 12 | 13 | if (kr == KERN_SUCCESS) { 14 | return 0; 15 | } else { 16 | return 1; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /tools/tests/execperf/exit.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int 4 | main(int artc, char *argv[]) 5 | { 6 | #if defined(__x86_64__) 7 | asm volatile ("andq $0xfffffffffffffff0, %rsp\n"); 8 | #elif defined(__i386__) 9 | asm volatile ("andl $0xfffffff0, %esp\n"); 10 | #elif defined(__arm__) || defined(__arm64__) 11 | asm volatile (""); 12 | #else 13 | #error Unsupported architecture 14 | #endif 15 | _Exit(42); 16 | } 17 | -------------------------------------------------------------------------------- /libkdd/tests/nested-sample.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | kcdata_crashinfo 6 | 7 | kcdata_crashinfo 8 | 9 | crashed_threadid 10 | 42 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /pexpert/conf/Makefile.arm: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for arm 3 | ###################################################################### 4 | 5 | ###################################################################### 6 | #END Machine dependent Makefile fragment for arm 7 | ###################################################################### 8 | -------------------------------------------------------------------------------- /san/conf/Makefile.x86_64: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for x86_64 3 | ###################################################################### 4 | 5 | ###################################################################### 6 | #END Machine dependent Makefile fragment for x86_64 7 | ###################################################################### 8 | -------------------------------------------------------------------------------- /security/conf/Makefile.arm: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for arm 3 | ###################################################################### 4 | 5 | ###################################################################### 6 | #END Machine dependent Makefile fragment for arm 7 | ###################################################################### 8 | -------------------------------------------------------------------------------- /security/conf/Makefile.arm64: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for arm 3 | ###################################################################### 4 | 5 | ###################################################################### 6 | #END Machine dependent Makefile fragment for arm 7 | ###################################################################### 8 | -------------------------------------------------------------------------------- /pexpert/conf/Makefile.arm64: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for arm64 3 | ###################################################################### 4 | 5 | ###################################################################### 6 | #END Machine dependent Makefile fragment for arm64 7 | ###################################################################### 8 | -------------------------------------------------------------------------------- /security/conf/Makefile.x86_64: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for x86_64 3 | ###################################################################### 4 | 5 | ###################################################################### 6 | #END Machine dependent Makefile fragment for x86_64 7 | ###################################################################### 8 | -------------------------------------------------------------------------------- /tests/socket_raw_uint8_max.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | T_DECL(socket_raw_uint8_max, "create socket with borderline proto numbers") 5 | { 6 | int fd = socket(AF_INET, SOCK_RAW, 256); 7 | 8 | T_ASSERT_POSIX_FAILURE(fd, EINVAL, "socket(AF_INET, SOCK_RAW, 256);"); 9 | 10 | int fd2 = socket(AF_INET, SOCK_RAW, 255); 11 | 12 | T_ASSERT_POSIX_SUCCESS(fd2, "socket(AF_INET, SOCK_RAW, 255);"); 13 | } 14 | -------------------------------------------------------------------------------- /config/IOKit.arm64.hibernation.MacOSX.exports: -------------------------------------------------------------------------------- 1 | __ZN13SEPHibernator23_RESERVEDSEPHibernator0Ev 2 | __ZN13SEPHibernator23_RESERVEDSEPHibernator1Ev 3 | __ZN13SEPHibernator23_RESERVEDSEPHibernator2Ev 4 | __ZN13SEPHibernator23_RESERVEDSEPHibernator3Ev 5 | __ZN13SEPHibernator23_RESERVEDSEPHibernator4Ev 6 | __ZN13SEPHibernator23_RESERVEDSEPHibernator5Ev 7 | __ZN13SEPHibernator23_RESERVEDSEPHibernator6Ev 8 | __ZN13SEPHibernator23_RESERVEDSEPHibernator7Ev 9 | -------------------------------------------------------------------------------- /config/generate_linker_exports.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | 5 | if [ $# -lt 2 ]; then 6 | echo "Usage: $0 output.exp input1 [input2 ... ]" 1>&2 7 | exit 1 8 | fi 9 | 10 | OUTPUT="$1" 11 | shift 12 | 13 | # Note: we used to export both sides of the alias since forever 14 | # for now keep doing this 15 | 16 | ( grep -h -v ":" "$@"; grep -h ":" "$@" | awk -F: '{print $1; print $2}' ) | sort -u > "$OUTPUT" 17 | 18 | exit 0 19 | -------------------------------------------------------------------------------- /libsa/conf/files: -------------------------------------------------------------------------------- 1 | # options 2 | 3 | # OPTIONS/libkerncpp optional libkerncpp 4 | # OPTIONS/kdebug optional kdebug 5 | # OPTIONS/gprof optional gprof 6 | OPTIONS/config_dtrace optional config_dtrace 7 | 8 | # libsa 9 | 10 | libsa/bootstrap.cpp standard 11 | -------------------------------------------------------------------------------- /pexpert/conf/Makefile.x86_64: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for x86_64 3 | ###################################################################### 4 | 5 | ###################################################################### 6 | #END Machine dependent Makefile fragment for x86_64 7 | ###################################################################### 8 | -------------------------------------------------------------------------------- /bsd/security/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | INSTINC_SUBDIRS = \ 10 | audit 11 | 12 | EXPINC_SUBDIRS = \ 13 | audit 14 | 15 | include $(MakeInc_rule) 16 | include $(MakeInc_dir) 17 | -------------------------------------------------------------------------------- /tests/task_policy_entitlement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.private.task_policy 6 | 7 | 8 | com.apple.system-task-ports 9 | 10 | task_for_pid-allow 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /tests/zalloc.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | T_DECL(basic_zone_test, "General zalloc test", 6 | T_META_NAMESPACE("xnu.vm"), 7 | T_META_CHECK_LEAKS(false)) 8 | { 9 | unsigned int count = 1; 10 | size_t s = sizeof(count); 11 | int rc; 12 | 13 | rc = sysctlbyname("kern.run_zone_test", &count, &s, &count, s); 14 | T_ASSERT_POSIX_SUCCESS(rc, "run_zone_test"); 15 | } 16 | -------------------------------------------------------------------------------- /tools/tests/perf_index/perf_index.h: -------------------------------------------------------------------------------- 1 | #ifndef __PERF_INDEX_H_ 2 | #define __PERF_INDEX_H_ 3 | 4 | #define DECL_SETUP int setup(int num_threads, long long length, int test_argc, const void** test_argv) 5 | #define DECL_TEST int execute(int thread_id, int num_threads, long long length, int test_argc, const void** test_argv) 6 | #define DECL_CLEANUP int cleanup(int num_threads, long long length) 7 | 8 | char* error_str = ""; 9 | 10 | #endif 11 | -------------------------------------------------------------------------------- /tests/network_entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.network.client 6 | 7 | com.apple.security.network.server 8 | 9 | com.apple.private.skywalk.register-kernel-pipe 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /bsd/pgo/profile_runtime_data.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | /* 4 | * This tells compiler_rt not to include userspace-specific stuff writing 5 | * profile data to a file. 6 | */ 7 | int __llvm_profile_runtime = 0; 8 | 9 | /* compiler-rt requires this. It uses it to page-align 10 | * certain things inside its buffers. 11 | */ 12 | 13 | extern int getpagesize(void); 14 | 15 | int 16 | getpagesize() 17 | { 18 | return PAGE_SIZE; 19 | } 20 | -------------------------------------------------------------------------------- /tools/tests/testkext/testthreadcall.h: -------------------------------------------------------------------------------- 1 | /* 2 | * testthreadcall.h 3 | * testkext 4 | * 5 | */ 6 | 7 | #include 8 | #include 9 | 10 | class testthreadcall : public IOService { 11 | OSDeclareDefaultStructors(testthreadcall); 12 | 13 | virtual bool start( IOService * provider ); 14 | 15 | public: 16 | thread_call_t tcall; 17 | thread_call_t tcall2; 18 | IOSimpleLock *tlock; 19 | IOLock *tlock2; 20 | }; 21 | -------------------------------------------------------------------------------- /tests/xnu_quick_test_helpers.h: -------------------------------------------------------------------------------- 1 | #ifndef XNU_QUICK_TEST_HELPERS_H 2 | #define XNU_QUICK_TEST_HELPERS_H 3 | 4 | #include 5 | #include 6 | #include 7 | 8 | #define TEST_DIRECTORY "/tmp" 9 | 10 | extern char g_target_path[PATH_MAX]; 11 | 12 | int create_random_name( char *the_pathp, int do_open ); 13 | void create_target_directory( const char * the_targetp ); 14 | void remove_target_directory( void ); 15 | 16 | #endif 17 | -------------------------------------------------------------------------------- /tools/tests/superpages/Makefile: -------------------------------------------------------------------------------- 1 | include ../Makefile.common 2 | 3 | DSTROOT?=$(shell /bin/pwd) 4 | TARGETS := $(addprefix $(DSTROOT)/, measure_tlbs testsp) 5 | CC:=$(shell xcrun -sdk "$(SDKROOT)" -find cc) 6 | 7 | CFLAGS += $(ARCH_FLAGS) -isysroot $(SDKROOT) 8 | CFLAGS += -Wl,-sectcreate,__INFO_FILTER,__disable,/dev/null 9 | 10 | all: $(TARGETS) 11 | 12 | clean: 13 | rm -f $(TARGETS) 14 | 15 | $(TARGETS): $(DSTROOT)/%: %.c 16 | $(CC) $(CFLAGS) -o $@ $< 17 | -------------------------------------------------------------------------------- /bsd/man/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | INSTTEXTFILES_SUBDIRS = \ 10 | man2 \ 11 | man3 \ 12 | man4 \ 13 | man5 \ 14 | man7 \ 15 | man9 16 | 17 | include $(MakeInc_rule) 18 | include $(MakeInc_dir) 19 | -------------------------------------------------------------------------------- /bsd/machine/limits.h: -------------------------------------------------------------------------------- 1 | /* This is the `system' limits.h, independent of any particular 2 | * compiler. GCC provides its own limits.h which can be found in 3 | * /usr/lib/gcc, although it is not very informative. 4 | * This file is public domain. */ 5 | #if defined (__i386__) || defined(__x86_64__) 6 | #include 7 | #elif defined (__arm__) || defined (__arm64__) 8 | #include 9 | #else 10 | #error architecture not supported 11 | #endif 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Any level 2 | BUILD/ 3 | build/ 4 | .DS_Store 5 | 6 | # vim swap files 7 | *~ 8 | *.swp 9 | 10 | # JSON compilation definitions 11 | compile_commands.json 12 | 13 | # From the various build systems 14 | *.xcworkspace 15 | xcuserdata 16 | *.pyc 17 | 18 | # / 19 | /.remotebuild_credential 20 | /cscope.* 21 | /TAGS 22 | /tags 23 | 24 | # /tools/tests/zero-to-n 25 | /tools/tests/zero-to-n/zn* 26 | 27 | # XXX do not add *.orig, *.rej, use `git clean` instead 28 | -------------------------------------------------------------------------------- /bsd/crypto/entropy/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | INSTALL_MI_LIST = 10 | 11 | EXPORT_MI_LIST = ${DATAFILES} 12 | 13 | EXPORT_MI_DIR = crypto/entropy 14 | 15 | include $(MakeInc_rule) 16 | include $(MakeInc_dir) 17 | -------------------------------------------------------------------------------- /bsd/man/man7/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | sticky.7 11 | 12 | INSTALL_MAN_LIST = ${DATAFILES} 13 | 14 | INSTALL_MAN_DIR = man7 15 | 16 | include $(MakeInc_rule) 17 | include $(MakeInc_dir) 18 | -------------------------------------------------------------------------------- /bsd/sys/vfs_context.h: -------------------------------------------------------------------------------- 1 | #ifndef _BSD_SYS_VFS_CONTEXT_H_ 2 | #define _BSD_SYS_VFS_CONTEXT_H_ 3 | 4 | #include 5 | #include 6 | #include 7 | #include 8 | #ifdef BSD_KERNEL_PRIVATE 9 | #include 10 | #endif 11 | #include 12 | 13 | /* 14 | * XXX should go away; pulls in vfs_context structure definition from 15 | * XXX 16 | */ 17 | 18 | #endif /* !_BSD_SYS_VFS_CONTEXT_H_ */ 19 | -------------------------------------------------------------------------------- /tests/intrusive_shared_ptr_src/abi.callee.raw.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Declare a function as returning a shared pointer (in the header), but 3 | // implement it by returning a raw pointer. This represents a TU that would 4 | // not have been translated to shared pointers yet. 5 | // 6 | // In this TU, SharedPtr is just T* since USE_SHARED_PTR is not defined. 7 | // 8 | 9 | #include "abi_helper.h" 10 | 11 | SharedPtr 12 | return_raw_as_shared(T* ptr) 13 | { 14 | return ptr; 15 | } 16 | -------------------------------------------------------------------------------- /tests/iokit/map_memory_port_leak_45265408.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.iokit-user-client-class 6 | TestIOConnectMapMemoryPortLeak45265408UserClient 7 | com.apple.iokit.test-service-management 8 | 9 | 10 | -------------------------------------------------------------------------------- /bsd/libkern/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | KERNELFILES = \ 10 | libkern.h copyio.h 11 | 12 | EXPORT_MI_LIST = ${KERNELFILES} 13 | 14 | EXPORT_MI_DIR = libkern 15 | 16 | include $(MakeInc_rule) 17 | include $(MakeInc_dir) 18 | -------------------------------------------------------------------------------- /bsd/miscfs/fifofs/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | KERNELFILES = \ 10 | fifo.h 11 | 12 | EXPORT_MI_LIST = ${KERNELFILES} 13 | 14 | EXPORT_MI_DIR = miscfs/fifofs 15 | 16 | include $(MakeInc_rule) 17 | include $(MakeInc_dir) 18 | -------------------------------------------------------------------------------- /iokit/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | INSTINC_SUBDIRS = IOKit DriverKit System IOKitUser 10 | 11 | EXPINC_SUBDIRS = IOKit DriverKit 12 | 13 | COMP_SUBDIRS = conf 14 | 15 | include $(MakeInc_rule) 16 | include $(MakeInc_dir) 17 | -------------------------------------------------------------------------------- /libkern/img4/interface.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #if defined(SECURITY_READ_ONLY_LATE) 6 | SECURITY_READ_ONLY_LATE(const img4_interface_t *) img4if = NULL; 7 | #else 8 | const img4_interface_t *img4if = NULL; 9 | #endif 10 | 11 | void 12 | img4_interface_register(const img4_interface_t *i4) 13 | { 14 | if (img4if) { 15 | panic("img4 interface already set"); 16 | } 17 | img4if = i4; 18 | } 19 | -------------------------------------------------------------------------------- /tests/safe_allocation_src/assign.copy.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Tests for 3 | // safe_allocation& operator=(safe_allocation const&) = delete; 4 | // 5 | 6 | #include 7 | #include 8 | #include 9 | #include "test_utils.h" 10 | 11 | struct T { }; 12 | 13 | T_DECL(assign_copy, "safe_allocation.assign.copy") { 14 | static_assert(!std::is_copy_assignable_v >); 15 | T_PASS("safe_allocation.assign.copy passed"); 16 | } 17 | -------------------------------------------------------------------------------- /tests/safe_allocation_src/ctor.copy.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Tests for 3 | // safe_allocation(safe_allocation const&) = delete; 4 | // 5 | 6 | #include 7 | #include 8 | #include 9 | #include "test_utils.h" 10 | 11 | struct T { 12 | int i; 13 | }; 14 | 15 | T_DECL(ctor_copy, "safe_allocation.ctor.copy") { 16 | static_assert(!std::is_copy_constructible_v >); 17 | T_PASS("safe_allocation.ctor.copy passed"); 18 | } 19 | -------------------------------------------------------------------------------- /.upstream_base_commits: -------------------------------------------------------------------------------- 1 | #freebsd = https://github.com/freebsd/freebsd.git 2 | bsd/man/man2/access.2 freebsd lib/libc/sys/access.2 5b882020081a138285227631c46a406c08e17bc8 3 | bsd/man/man7/sticky.7 freebsd share/man/man7/sticky.7 5b882020081a138285227631c46a406c08e17bc8 4 | bsd/man/man2/utimensat.2 freebsd lib/libc/sys/utimensat.2 89c1fcc0d088065021703b658ef547f46b5481f0 5 | tools/tests/darwintests/netbsd_utimensat.c freebsd contrib/netbsd-tests/lib/libc/c063/t_utimensat.c 89c1fcc0d088065021703b658ef547f46b5481f0 6 | -------------------------------------------------------------------------------- /libkern/coretrust/coretrust.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #if defined(SECURITY_READ_ONLY_LATE) 6 | SECURITY_READ_ONLY_LATE(const coretrust_t *) coretrust = NULL; 7 | #else 8 | const coretrust_t *coretrust = NULL; 9 | #endif 10 | 11 | void 12 | coretrust_interface_register(const coretrust_t *ct) 13 | { 14 | if (coretrust) { 15 | panic("coretrust interface already set"); 16 | } 17 | coretrust = ct; 18 | } 19 | -------------------------------------------------------------------------------- /tests/bounded_ptr_src/test_utils.h: -------------------------------------------------------------------------------- 1 | #ifndef TESTS_BOUNDED_PTR_TEST_UTILS_H 2 | #define TESTS_BOUNDED_PTR_TEST_UTILS_H 3 | 4 | #include 5 | #include 6 | 7 | namespace { 8 | struct test_policy { 9 | static void 10 | trap(char const*) 11 | { 12 | assert(false); 13 | } 14 | }; 15 | 16 | template 17 | using test_bounded_ptr = libkern::bounded_ptr; 18 | } // end anonymous namespace 19 | 20 | #endif // !TESTS_BOUNDED_PTR_TEST_UTILS_H 21 | -------------------------------------------------------------------------------- /bsd/dev/random/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | randomdev.h 11 | 12 | INSTALL_MI_LIST = 13 | 14 | EXPORT_MI_LIST = ${DATAFILES} 15 | 16 | EXPORT_MI_DIR = dev/random 17 | 18 | include $(MakeInc_rule) 19 | include $(MakeInc_dir) 20 | -------------------------------------------------------------------------------- /osfmk/libsa/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | string.h 11 | 12 | INSTALL_MI_LIST = 13 | 14 | INSTALL_MI_DIR = 15 | 16 | EXPORT_MI_LIST = ${DATAFILES} 17 | 18 | EXPORT_MI_DIR = 19 | 20 | include $(MakeInc_rule) 21 | include $(MakeInc_dir) 22 | -------------------------------------------------------------------------------- /osfmk/mach/telemetry_notification.defs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2012, Apple Inc. All rights reserved. 3 | */ 4 | 5 | /* 6 | * Interface definition for the telemetry facility. 7 | */ 8 | 9 | subsystem 10 | #if KERNEL_USER 11 | KernelUser 12 | #endif /* KERNEL_USER */ 13 | telemetry_notification 5100; 14 | 15 | #include 16 | #include 17 | 18 | simpleroutine telemetry_notification( 19 | RequestPort telemetry_port : mach_port_t; 20 | in flags : uint32_t); 21 | -------------------------------------------------------------------------------- /tests/osptr_compat.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Make sure we can #include OSPtr.h under various version of the C++ Standard. 3 | // 4 | 5 | #include 6 | #include 7 | 8 | T_GLOBAL_META( 9 | T_META_NAMESPACE("osptr"), 10 | T_META_CHECK_LEAKS(false), 11 | T_META_RUN_CONCURRENTLY(true) 12 | ); 13 | 14 | #define CONCAT_PRIM(x, y) x ## y 15 | #define CONCAT(x, y) CONCAT_PRIM(x, y) 16 | T_DECL(CONCAT(osptr_compat_, OSPTR_STD), "osptr.compat") { 17 | T_PASS("OSPtr compatibility test passed"); 18 | } 19 | -------------------------------------------------------------------------------- /tools/tests/testkext/pgokext/pgokext.c: -------------------------------------------------------------------------------- 1 | // 2 | // pgokext.c 3 | // pgokext 4 | // 5 | // Created by Lawrence D'Anna on 12/15/16. 6 | // 7 | // 8 | 9 | #include 10 | 11 | kern_return_t pgokext_start(kmod_info_t * ki, void *d); 12 | kern_return_t pgokext_stop(kmod_info_t *ki, void *d); 13 | 14 | kern_return_t 15 | pgokext_start(kmod_info_t * ki, void *d) 16 | { 17 | return KERN_SUCCESS; 18 | } 19 | 20 | kern_return_t 21 | pgokext_stop(kmod_info_t *ki, void *d) 22 | { 23 | return KERN_SUCCESS; 24 | } 25 | -------------------------------------------------------------------------------- /bsd/man/man5/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | acct.5 \ 11 | core.5 \ 12 | dir.5 \ 13 | dirent.5 \ 14 | types.5 15 | 16 | INSTALL_MAN_LIST = ${DATAFILES} 17 | 18 | INSTALL_MAN_DIR = man5 19 | 20 | include $(MakeInc_rule) 21 | include $(MakeInc_dir) 22 | -------------------------------------------------------------------------------- /iokit/IOKitUser/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | ALL_HEADERS = $(notdir $(wildcard $(SOURCE)*.h)) 10 | 11 | EXPORT_MI_DIR = IOKitUser 12 | INSTALL_MI_DIR = IOKitUser 13 | 14 | INSTALL_KF_MI_LIST = $(ALL_HEADERS) 15 | 16 | include $(MakeInc_rule) 17 | include $(MakeInc_dir) 18 | -------------------------------------------------------------------------------- /bsd/vm/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | vnode_pager.h 11 | 12 | INSTALL_MI_LIST = ${DATAFILES} 13 | 14 | INSTALL_MI_DIR = vm 15 | 16 | EXPORT_MI_LIST = ${DATAFILES} 17 | 18 | EXPORT_MI_DIR = vm 19 | 20 | include $(MakeInc_rule) 21 | include $(MakeInc_dir) 22 | -------------------------------------------------------------------------------- /libsyscall/Platforms/syscall.map: -------------------------------------------------------------------------------- 1 | ___sandbox_me ___mac_execve 2 | ___sandbox_mm ___mac_mount 3 | ___sandbox_ms ___mac_syscall 4 | ___sandbox_msp ___mac_set_proc 5 | __exit ___exit 6 | _accessx_np ___access_extended 7 | _getsgroups_np ___getsgroups 8 | _getwgroups_np ___getwgroups 9 | # initgroups wrapper is defined in Libinfo 10 | _initgroups 11 | _posix_madvise ___madvise 12 | _pthread_getugid_np ___gettid 13 | _pthread_setugid_np ___settid 14 | _setsgroups_np ___setsgroups 15 | _setwgroups_np ___setwgroups 16 | _wait4 ___wait4_nocancel 17 | -------------------------------------------------------------------------------- /osfmk/tests/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | EXPORT_FILES = xnupost.h ktest.h 10 | 11 | EXPORT_MI_LIST = ${EXPORT_FILES} 12 | 13 | EXPORT_MI_DIR = tests 14 | 15 | INSTALL_KF_MI_LCL_LIST = 16 | INSTALL_KF_MI_LIST = 17 | 18 | include $(MakeInc_rule) 19 | include $(MakeInc_dir) 20 | -------------------------------------------------------------------------------- /EXTERNAL_HEADERS/architecture/arm/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | EXPORT_FILES = 10 | 11 | INSTALL_MD_LIST = 12 | 13 | INSTALL_MD_DIR = 14 | 15 | EXPORT_MD_LIST = ${EXPORT_FILES} 16 | 17 | EXPORT_MD_DIR = architecture/arm 18 | 19 | include $(MakeInc_rule) 20 | include $(MakeInc_dir) 21 | -------------------------------------------------------------------------------- /osfmk/corpses/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = task_corpse.h 10 | 11 | INSTALL_MI_LIST = ${DATAFILES} 12 | 13 | INSTALL_MI_DIR = corpses 14 | 15 | EXPORT_MI_LIST = ${DATAFILES} 16 | 17 | EXPORT_MI_DIR = corpses 18 | 19 | include $(MakeInc_rule) 20 | include $(MakeInc_dir) 21 | -------------------------------------------------------------------------------- /osfmk/mach/iocompressionstats_notification.defs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2020, Apple Inc. All rights reserved. 3 | */ 4 | 5 | /* 6 | * Interface definition for the telemetry facility. 7 | */ 8 | 9 | subsystem 10 | #if KERNEL_USER 11 | KernelUser 12 | #endif /* KERNEL_USER */ 13 | iocompressionstats_notification 5600; 14 | 15 | #include 16 | #include 17 | 18 | simpleroutine iocompressionstats_notification( 19 | RequestPort iocompressionstats_port : mach_port_t; 20 | in flags : uint32_t); 21 | -------------------------------------------------------------------------------- /tests/ptrauth_data_tests.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | T_GLOBAL_META(T_META_NAMESPACE("xnu.arm")); 5 | 6 | T_DECL(ptrauth_data_tests, "invoke the PAC unit tests", T_META_ASROOT(true)) 7 | { 8 | #if __has_feature(ptrauth_calls) 9 | int ret, dummy = 1; 10 | ret = sysctlbyname("kern.run_ptrauth_data_tests", NULL, NULL, &dummy, sizeof(dummy)); 11 | T_ASSERT_POSIX_SUCCESS(ret, "run ptrauth data tests"); 12 | #else 13 | T_SKIP("Running on non-ptrauth system. Skipping..."); 14 | #endif //__has_feature(ptrauth_calls) 15 | } 16 | -------------------------------------------------------------------------------- /tools/tests/mktimer/Makefile: -------------------------------------------------------------------------------- 1 | include ../Makefile.common 2 | 3 | OBJROOT?=$(shell /bin/pwd) 4 | 5 | CC:=$(shell xcrun -sdk "$(SDKROOT)" -find cc) 6 | 7 | DSTROOT?=$(shell /bin/pwd) 8 | 9 | CFLAGS:=$(ARCH_FLAGS) -g -Wall -Os -isysroot $(SDKROOT) -framework CoreFoundation 10 | CFLAGS += -Wl,-sectcreate,__INFO_FILTER,__disable,/dev/null 11 | 12 | all: $(DSTROOT)/mktimer_test 13 | 14 | $(DSTROOT)/mktimer_test: $(OBJROOT)/mktimer_test.c 15 | $(CC) -o $@ $^ $(CFLAGS) 16 | 17 | clean: 18 | rm -rf $(DSTROOT)/mktimer_test $(DSTROOT)/mk_timer_test.dSYM 19 | -------------------------------------------------------------------------------- /tools/tests/perf_index/fail.h: -------------------------------------------------------------------------------- 1 | #ifndef __FAIL_H_ 2 | #define __FAIL_H_ 3 | 4 | #define TOSTRING_HELPER(x) #x 5 | #define TOSTRING(x) TOSTRING_HELPER(x) 6 | 7 | #define PERFINDEX_FAILURE -1 8 | #define PERFINDEX_SUCCESS 0 9 | 10 | extern char* error_str; 11 | 12 | #define FAIL(message) do {\ 13 | error_str = message " at " __FILE__ ": " TOSTRING(__LINE__);\ 14 | return PERFINDEX_FAILURE;\ 15 | } while(0) 16 | 17 | #define VERIFY(condition, fail_message) do {\ 18 | if(!(condition)) FAIL(fail_message);\ 19 | } while(0) 20 | 21 | #endif 22 | -------------------------------------------------------------------------------- /bsd/miscfs/bindfs/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = 10 | 11 | PRIVATE_KERNELFILES = bindfs.h 12 | 13 | INSTALL_MI_LIST = 14 | 15 | INSTALL_MI_DIR = miscfs/bindfs 16 | 17 | EXPORT_MI_LIST = 18 | 19 | EXPORT_MI_DIR = miscfs/bindfs 20 | 21 | include $(MakeInc_rule) 22 | include $(MakeInc_dir) 23 | -------------------------------------------------------------------------------- /bsd/miscfs/nullfs/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = 10 | 11 | PRIVATE_KERNELFILES = nullfs.h 12 | 13 | INSTALL_MI_LIST = 14 | 15 | INSTALL_MI_DIR = miscfs/nullfs 16 | 17 | EXPORT_MI_LIST = 18 | 19 | EXPORT_MI_DIR = miscfs/nullfs 20 | 21 | include $(MakeInc_rule) 22 | include $(MakeInc_dir) 23 | -------------------------------------------------------------------------------- /tests/intrusive_shared_ptr_src/abi.callee.smart.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Declare a function as returning a raw pointer (in the header), but 3 | // implement it by returning a shared pointer. This represents a TU that 4 | // would have been translated to shared pointers. 5 | // 6 | // In this TU, SharedPtr is intrusive_shared_ptr, since USE_SHARED_PTR 7 | // is defined. 8 | // 9 | 10 | #define USE_SHARED_PTR 11 | 12 | #include "abi_helper.h" 13 | 14 | SharedPtr 15 | return_shared_as_raw(T* ptr) 16 | { 17 | return SharedPtr(ptr, libkern::no_retain); 18 | } 19 | -------------------------------------------------------------------------------- /libsa/conf/Makefile.arm: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for arm 3 | ###################################################################### 4 | 5 | # Bootstrap __KLD files must be Mach-O for "setsegname" 6 | $(foreach file,$(OBJS),$(eval $(file)_CFLAGS_ADD += $(CFLAGS_NOLTO_FLAG))) 7 | 8 | ###################################################################### 9 | #END Machine dependent Makefile fragment for arm 10 | ###################################################################### 11 | -------------------------------------------------------------------------------- /san/tools/validate_blacklist.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Ensure all blacklisted files exist. Paths with wildcards are ignored. 4 | # Run against a blacklist with fully-qualified paths. 5 | 6 | IFS=$'\n' 7 | 8 | blacklist_files=`sed -n -e ' 9 | # ignore paths with wildcards 10 | /\*/ d 11 | 12 | # strip leading 'src:' 13 | /^src/ { 14 | s/^src:// 15 | p 16 | } 17 | ' $1` 18 | 19 | ret=0 20 | 21 | for f in $blacklist_files ; do 22 | if ! [[ -e $f ]] ; then 23 | echo "KASan: blacklisted file $f not found" >&2 24 | ret=1 25 | fi 26 | done 27 | 28 | exit $ret 29 | -------------------------------------------------------------------------------- /tools/tests/perf_index/perfindex-iperf.c: -------------------------------------------------------------------------------- 1 | #include "perf_index.h" 2 | #include "fail.h" 3 | #include 4 | #include 5 | 6 | DECL_SETUP { 7 | VERIFY(test_argc > 0, "missing argument"); 8 | 9 | return PERFINDEX_SUCCESS; 10 | } 11 | 12 | DECL_TEST { 13 | char* cmd; 14 | int retval; 15 | 16 | retval = asprintf(&cmd, "iperf -c \"%s\" -n %lld > /dev/null", test_argv[0], length); 17 | VERIFY(retval > 0, "asprintf failed"); 18 | 19 | retval = system(cmd); 20 | VERIFY(retval == 0, "iperf command failed"); 21 | 22 | return PERFINDEX_SUCCESS; 23 | } 24 | -------------------------------------------------------------------------------- /bsd/dev/dtrace/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | INSTTEXTFILES_SUBDIRS = scripts 10 | 11 | INSTTEXTFILES_SUBDIRS_X86_64 = scripts 12 | INSTTEXTFILES_SUBDIRS_X86_64H = scripts 13 | INSTTEXTFILES_SUBDIRS_ARM = scripts 14 | INSTTEXTFILES_SUBDIRS_ARM64 = scripts 15 | 16 | include $(MakeInc_rule) 17 | include $(MakeInc_dir) 18 | -------------------------------------------------------------------------------- /tests/pid_for_task_test.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | T_DECL(pid_for_task_test, "Test pid_for_task with task name port") 6 | { 7 | kern_return_t kr; 8 | mach_port_t tname; 9 | pid_t pid; 10 | 11 | kr = task_name_for_pid(mach_task_self(), getpid(), &tname); 12 | T_EXPECT_EQ(kr, 0, "task_name_for_pid should succeed on current pid"); 13 | pid_for_task(tname, &pid); 14 | T_EXPECT_EQ(pid, getpid(), "pid_for_task should return the same value as getpid()"); 15 | 16 | mach_port_deallocate(mach_task_self(), tname); 17 | } 18 | -------------------------------------------------------------------------------- /libsa/conf/Makefile.arm64: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for arm 3 | ###################################################################### 4 | 5 | 6 | # Bootstrap __KLD files must be Mach-O for "setsegname" 7 | $(foreach file,$(OBJS),$(eval $(file)_CFLAGS_ADD += $(CFLAGS_NOLTO_FLAG))) 8 | 9 | ###################################################################### 10 | #END Machine dependent Makefile fragment for arm 11 | ###################################################################### 12 | -------------------------------------------------------------------------------- /tests/kperf_helpers.h: -------------------------------------------------------------------------------- 1 | #ifndef KPERF_HELPERS_H 2 | #define KPERF_HELPERS_H 3 | 4 | #include 5 | #include 6 | 7 | void configure_kperf_stacks_timer(pid_t pid, unsigned int period_ms, 8 | bool quiet); 9 | 10 | #define PERF_SAMPLE KDBG_EVENTID(DBG_PERF, 0, 0) 11 | #define PERF_KPC_PMI KDBG_EVENTID(DBG_PERF, 6, 0) 12 | #define PERF_STK_KHDR UINT32_C(0x25020014) 13 | #define PERF_STK_UHDR UINT32_C(0x25020018) 14 | #define PERF_STK_KDATA UINT32_C(0x2502000c) 15 | #define PERF_STK_UDATA UINT32_C(0x25020010) 16 | 17 | #endif /* !defined(KPERF_HELPERS_H) */ 18 | -------------------------------------------------------------------------------- /libsa/conf/Makefile.x86_64: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for x86_64 3 | ###################################################################### 4 | 5 | 6 | # Bootstrap __KLD files must be Mach-O for "setsegname" 7 | $(foreach file,$(OBJS),$(eval $(file)_CFLAGS_ADD += $(CFLAGS_NOLTO_FLAG))) 8 | 9 | ###################################################################### 10 | #END Machine dependent Makefile fragment for x86_64 11 | ###################################################################### 12 | -------------------------------------------------------------------------------- /san/kasan-blacklist-dynamic: -------------------------------------------------------------------------------- 1 | # entry = :: 2 | # 3 | # = [ kfree zfree fsfree memr memw strr strw read write rw free mem str poison ] 4 | # See kasan_internal.h for descriptions of the types 5 | # 6 | # = last component of kext bundle ID. Use '__kernel__' for xnu proper. 7 | # 8 | # Any field can be empty, which matches everything 9 | 10 | 11 | # OSKext::copyInfo copies the whole cstrings section 12 | __kernel__:_ZN6OSKext8copyInfoEP7OSArray:memr 13 | 14 | # For unit-testing KASan 15 | __kernel__:test_blacklist:test 16 | __kernel__:test_blacklist_str:memr 17 | -------------------------------------------------------------------------------- /tests/posix_spawn_archpref_helper.c: -------------------------------------------------------------------------------- 1 | #include 2 | /* 3 | * Returns the subcpu type for the architecture for which the 4 | * binary was compiled. 5 | */ 6 | int 7 | main(void) 8 | { 9 | #if defined(__x86_64__) 10 | return CPU_SUBTYPE_X86_64_ALL; 11 | #elif __arm64e__ 12 | return CPU_SUBTYPE_ARM64E; 13 | #elif defined(__arm64__) && defined(__LP64__) 14 | return CPU_SUBTYPE_ARM64_ALL; 15 | #elif defined(__arm64__) 16 | return CPU_SUBTYPE_ARM64_32_ALL; 17 | #elif defined(__arm__) 18 | return CPU_SUBTYPE_ARM_V7K; 19 | #else 20 | #error unknown architecture 21 | #endif 22 | } 23 | -------------------------------------------------------------------------------- /EXTERNAL_HEADERS/sys/_pthread/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | EXPORT_FILES = \ 10 | _pthread_types.h 11 | 12 | EXPORT_MI_LIST = ${EXPORT_FILES} 13 | 14 | EXPORT_MI_DIR = sys/_pthread 15 | 16 | INSTALL_KF_MI_LCL_LIST = $(empty) 17 | 18 | INSTALL_KF_MI_LIST = $(empty) 19 | 20 | include $(MakeInc_rule) 21 | include $(MakeInc_dir) 22 | -------------------------------------------------------------------------------- /bsd/conf/Makefile.arm64: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for arm 3 | ###################################################################### 4 | 5 | # Inline assembly doesn't interact well with LTO 6 | fbt_arm.o_CFLAGS_ADD += $(CFLAGS_NOLTO_FLAG) 7 | 8 | kern_csr.o_CFLAGS_ADD += -I$(SRCROOT)/osfmk 9 | 10 | ###################################################################### 11 | #END Machine dependent Makefile fragment for arm 12 | ###################################################################### 13 | -------------------------------------------------------------------------------- /tests/print_apple_array.c: -------------------------------------------------------------------------------- 1 | /* 2 | * Simple program to dump the apple array contents to stdout for verification. 3 | * Note that libsystem mucks with some of the fields before we can see them. 4 | */ 5 | 6 | #include 7 | #include 8 | 9 | int 10 | main( 11 | __unused int argc, 12 | __unused char **argv, 13 | __unused char **environ, 14 | char **apple) 15 | { 16 | int i = 0; 17 | while (true) { 18 | char *curr = apple[i]; 19 | if (curr == NULL) { 20 | break; 21 | } else { 22 | printf("%s\n", curr); 23 | } 24 | i++; 25 | } 26 | return 0; 27 | } 28 | -------------------------------------------------------------------------------- /bsd/sys/lctx.h: -------------------------------------------------------------------------------- 1 | /* 2 | * TODO: remove this file 3 | */ 4 | #ifndef _SYS_LCTX_H_ 5 | #define _SYS_LCTX_H_ 6 | 7 | #ifndef KERNEL 8 | #include /* errno, ENOSYS */ 9 | #include /* pid_t */ 10 | static __inline pid_t 11 | getlcid(pid_t pid) 12 | { 13 | errno = ENOSYS; 14 | return -1; 15 | } 16 | 17 | static __inline int 18 | setlcid(pid_t pid, pid_t lcid) 19 | { 20 | errno = ENOSYS; 21 | return -1; 22 | } 23 | #endif 24 | 25 | #define LCID_PROC_SELF (0) 26 | #define LCID_REMOVE (-1) 27 | #define LCID_CREATE (0) 28 | 29 | #endif /* !_SYS_LCTX_H_ */ 30 | -------------------------------------------------------------------------------- /osfmk/mach/coalition_notification.defs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2013, Apple Inc. All rights reserved. 3 | */ 4 | 5 | /* 6 | * Interface definition for the coalition facility. 7 | */ 8 | 9 | subsystem 10 | #if KERNEL_USER 11 | KernelUser 12 | #endif /* KERNEL_USER */ 13 | coalition_notification 5300; 14 | 15 | #include 16 | #include 17 | 18 | /* This is likely to change with 15385886. */ 19 | simpleroutine coalition_notification( 20 | RequestPort coalition_port : mach_port_t; 21 | in id : uint64_t; 22 | in flags : uint32_t); 23 | -------------------------------------------------------------------------------- /pexpert/pexpert/machine/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | boot.h \ 11 | protos.h 12 | 13 | INSTALL_MI_LIST = ${DATAFILES} 14 | 15 | INSTALL_MI_DIR = pexpert/machine 16 | 17 | EXPORT_MI_LIST = ${DATAFILES} 18 | 19 | EXPORT_MI_DIR = pexpert/machine 20 | 21 | include $(MakeInc_rule) 22 | include $(MakeInc_dir) 23 | -------------------------------------------------------------------------------- /SETUP/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | SETUP_SUBDIRS = \ 10 | config \ 11 | kextsymboltool \ 12 | setsegname \ 13 | decomment \ 14 | installfile \ 15 | replacecontents 16 | 17 | ifeq ($(BUILD_JSON_COMPILATION_DATABASE),1) 18 | SETUP_SUBDIRS += json_compilation_db 19 | endif 20 | 21 | include $(MakeInc_rule) 22 | include $(MakeInc_dir) 23 | -------------------------------------------------------------------------------- /bsd/dev/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | EXPINC_SUBDIRS = random 10 | 11 | INSTTEXTFILES_SUBDIRS = dtrace 12 | 13 | INSTTEXTFILES_SUBDIRS_X86_64 = dtrace 14 | INSTTEXTFILES_SUBDIRS_X86_64H = dtrace 15 | INSTTEXTFILES_SUBDIRS_ARM = dtrace 16 | INSTTEXTFILES_SUBDIRS_ARM64 = dtrace 17 | 18 | include $(MakeInc_rule) 19 | include $(MakeInc_dir) 20 | -------------------------------------------------------------------------------- /bsd/miscfs/union/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | union.h 11 | 12 | KERNELFILES = \ 13 | ${DATAFILES} 14 | 15 | INSTALL_MI_LIST = ${DATAFILES} 16 | 17 | INSTALL_MI_DIR = miscfs/union 18 | 19 | EXPORT_MI_LIST = ${KERNELFILES} 20 | 21 | EXPORT_MI_DIR = miscfs/union 22 | 23 | include $(MakeInc_rule) 24 | include $(MakeInc_dir) 25 | -------------------------------------------------------------------------------- /bsd/vfs/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | vfs_support.h 11 | 12 | INSTALL_MI_LIST = ${DATAFILES} 13 | 14 | INSTALL_MI_DIR = vfs 15 | 16 | INSTALL_KF_MI_LIST = ${DATAFILES} 17 | 18 | EXPORT_MI_LIST = ${DATAFILES} vfs_disk_conditioner.h 19 | 20 | EXPORT_MI_DIR = vfs 21 | 22 | include $(MakeInc_rule) 23 | include $(MakeInc_dir) 24 | -------------------------------------------------------------------------------- /pexpert/pexpert/i386/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | boot.h \ 11 | efi.h \ 12 | protos.h 13 | 14 | INSTALL_MD_LIST = ${DATAFILES} 15 | 16 | INSTALL_MD_DIR = pexpert/i386 17 | 18 | EXPORT_MD_LIST = ${DATAFILES} 19 | 20 | EXPORT_MD_DIR = pexpert/i386 21 | 22 | include $(MakeInc_rule) 23 | include $(MakeInc_dir) 24 | -------------------------------------------------------------------------------- /tests/counter/common.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #include "counter/common.h" 6 | 7 | int 8 | init_scalable_counter_test() 9 | { 10 | kern_return_t result; 11 | int value = 1; 12 | 13 | result = sysctlbyname("kern.scalable_counter_test_start", NULL, NULL, &value, sizeof(value)); 14 | return result; 15 | } 16 | 17 | int 18 | fini_scalable_counter_test() 19 | { 20 | kern_return_t result; 21 | int value = 1; 22 | result = sysctlbyname("kern.scalable_counter_test_finish", NULL, NULL, &value, sizeof(value)); 23 | return result; 24 | } 25 | -------------------------------------------------------------------------------- /tools/tests/jitter/Makefile: -------------------------------------------------------------------------------- 1 | include ../Makefile.common 2 | 3 | DSTROOT?=$(shell /bin/pwd) 4 | SYMROOT?=$(shell /bin/pwd) 5 | OBJROOT?=$(shell /bin/pwd) 6 | 7 | CC:=$(shell xcrun -sdk "$(SDKROOT)" -find cc) 8 | 9 | CFLAGS:=$(ARCH_FLAGS) -g -Wall -Os -isysroot $(SDKROOT) -I$(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders 10 | CFLAGS += -Wl,-sectcreate,__INFO_FILTER,__disable,/dev/null 11 | 12 | all: $(DSTROOT)/jitter 13 | 14 | $(DSTROOT)/jitter: timer_jitter.c 15 | $(CC) -o $@ $^ $(CFLAGS) 16 | 17 | clean: 18 | rm -f $(DSTROOT)/jitter $(OBJROOT)/*.o 19 | rm -rf $(SYMROOT)/*.dSYM 20 | -------------------------------------------------------------------------------- /EXTERNAL_HEADERS/mach-o/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | EXPORT_FILES = \ 10 | fat.h \ 11 | fixup-chains.h \ 12 | loader.h \ 13 | nlist.h \ 14 | reloc.h 15 | 16 | INSTALL_MI_LIST = 17 | 18 | INSTALL_MI_DIR = 19 | 20 | EXPORT_MI_LIST = ${EXPORT_FILES} 21 | 22 | EXPORT_MI_DIR = mach-o 23 | 24 | include $(MakeInc_rule) 25 | include $(MakeInc_dir) 26 | -------------------------------------------------------------------------------- /bsd/miscfs/specfs/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | specdev.h 11 | 12 | KERNELFILES = \ 13 | ${DATAFILES} 14 | 15 | INSTALL_MI_LIST = ${DATAFILES} 16 | 17 | INSTALL_MI_DIR = miscfs/specfs 18 | 19 | EXPORT_MI_LIST = ${KERNELFILES} 20 | 21 | EXPORT_MI_DIR = miscfs/specfs 22 | 23 | include $(MakeInc_rule) 24 | include $(MakeInc_dir) 25 | -------------------------------------------------------------------------------- /bsd/miscfs/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | INSTINC_SUBDIRS = \ 10 | devfs \ 11 | fifofs \ 12 | routefs \ 13 | specfs \ 14 | union \ 15 | nullfs \ 16 | bindfs 17 | 18 | EXPINC_SUBDIRS = \ 19 | devfs \ 20 | fifofs \ 21 | routefs \ 22 | specfs \ 23 | union \ 24 | nullfs \ 25 | bindfs 26 | 27 | include $(MakeInc_rule) 28 | include $(MakeInc_dir) 29 | -------------------------------------------------------------------------------- /tests/test_utils.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include "test_utils.h" 7 | 8 | bool 9 | is_development_kernel() 10 | { 11 | static dispatch_once_t is_development_once; 12 | static bool is_development; 13 | 14 | dispatch_once(&is_development_once, ^{ 15 | int dev; 16 | size_t dev_size = sizeof(dev); 17 | 18 | T_QUIET; 19 | T_ASSERT_POSIX_SUCCESS(sysctlbyname("kern.development", &dev, 20 | &dev_size, NULL, 0), NULL); 21 | is_development = (dev != 0); 22 | }); 23 | 24 | return is_development; 25 | } 26 | -------------------------------------------------------------------------------- /bsd/net/content_filter_crypto.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 Apple Inc. 3 | * All rights reserved. 4 | */ 5 | 6 | #ifndef __content_filter_crypto_h 7 | #define __content_filter_crypto_h 8 | 9 | #include 10 | 11 | extern cfil_crypto_state_t 12 | cfil_crypto_init_client(cfil_crypto_key client_key); 13 | 14 | extern void 15 | cfil_crypto_cleanup_state(cfil_crypto_state_t state); 16 | 17 | extern int 18 | cfil_crypto_sign_data(cfil_crypto_state_t state, cfil_crypto_data_t data, 19 | cfil_crypto_signature signature, u_int32_t *signature_length); 20 | 21 | #endif // __content_filter_crypto_h 22 | -------------------------------------------------------------------------------- /libkern/c++/OSRuntimeSupport.c: -------------------------------------------------------------------------------- 1 | // These functions have been moved inline but we need to continue 2 | // exporting the mangled functions for loadable drivers compiled on older 3 | // systems. 4 | // Note that I have had to manually mangle the symbols names. 5 | void _ZN11OSMetaClassdlEPvm(void *mem, unsigned long size); 6 | void *_ZN11OSMetaClassnwEm(unsigned long size); 7 | 8 | void 9 | _ZN11OSMetaClassdlEPvm(__attribute__((unused)) void *mem, __attribute__((__unused__)) unsigned long size) 10 | { 11 | } 12 | void * 13 | _ZN11OSMetaClassnwEm(__attribute__((unused)) unsigned long size) 14 | { 15 | return (void *)0ULL; 16 | } 17 | -------------------------------------------------------------------------------- /tools/lldbmacros/mbufdefines.py: -------------------------------------------------------------------------------- 1 | from xnu import * 2 | from utils import * 3 | import ctypes 4 | 5 | MBSHIFT = 20 6 | MSIZE = 256 7 | MCLBYTES = 2048 8 | MBIGCLBYTES = 4096 9 | M16KCLBYTES = 16384 10 | 11 | MB_SCVALID = 4 12 | 13 | MB_INUSE = 1 14 | MB_COMP_INUSE = 2 15 | 16 | SLF_MAPPED = 0x0001 17 | SLF_PARTIAL = 0x0002 18 | SLF_DETACHED = 0x0004 19 | 20 | INTP = ctypes.POINTER(ctypes.c_int) 21 | 22 | kgm_manual_pkt_ppc = 0x549C 23 | kgm_manual_pkt_i386 = 0x249C 24 | kgm_manual_pkt_x86_64 = 0xFFFFFF8000002930 25 | kgm_manual_pkt_arm = 0xFFFF13A0 26 | kgm_kdp_pkt_data_len = 128 27 | 28 | MCF_NOCPUCACHE = 0x10 29 | -------------------------------------------------------------------------------- /libkern/conf/Makefile.arm64: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for arm 3 | ###################################################################### 4 | # 5 | # XXX: CFLAGS 6 | # 7 | CWARNFLAGS = $(CWARNFLAGS_STD) -Wshorten-64-to-32 -Wimplicit-int-conversion 8 | CXXWARNFLAGS = $(CXXWARNFLAGS_STD) -Wshorten-64-to-32 -Wimplicit-int-conversion 9 | 10 | ###################################################################### 11 | #END Machine dependent Makefile fragment for arm 12 | ###################################################################### 13 | -------------------------------------------------------------------------------- /bsd/conf/compat_hdrs.awk: -------------------------------------------------------------------------------- 1 | BEGIN { 2 | hdr = "#warning Compatibility header file imported, use <%s/%s>\n" \ 3 | "#import\t<%s/%s>\n" 4 | } 5 | /^#/ { # skip comments in data file 6 | continue; 7 | } 8 | /COMPATMACHINE/ { 9 | ofile = sprintf("compat/%s/%s", $2, $3); 10 | printf("#import\t\n", $3) > ofile 11 | printf(hdr, $1, $3, $1, $3) > ofile; 12 | continue; 13 | } 14 | /DELETED/ { 15 | ofile = sprintf("compat/%s/%s", $2, $3); 16 | printf("#error This file has been removed\n") > ofile; 17 | continue; 18 | } 19 | { 20 | ofile = sprintf("compat/%s/%s", $2, $3); 21 | printf(hdr, $1, $NF, $1, $NF) > ofile; 22 | } 23 | -------------------------------------------------------------------------------- /tests/bounded_array_src/for_loop.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Make sure `bounded_array` works nicely with the range-based for-loop. 3 | // 4 | 5 | #include 6 | #include 7 | #include "test_policy.h" 8 | 9 | struct T { 10 | int i; 11 | }; 12 | 13 | template 14 | static void 15 | tests() 16 | { 17 | test_bounded_array array = {T{0}, T{1}, T{2}, T{3}, T{4}}; 18 | for (T& element : array) { 19 | element = T{3}; 20 | } 21 | 22 | for (T const& element : array) { 23 | CHECK(element.i == 3); 24 | } 25 | } 26 | 27 | T_DECL(for_loop, "bounded_array.for_loop") { 28 | tests(); 29 | } 30 | -------------------------------------------------------------------------------- /bsd/security/audit/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | audit_ioctl.h 11 | 12 | INSTALL_MI_LIST = ${DATAFILES} 13 | 14 | INSTALL_MI_DIR = security/audit 15 | 16 | INSTALL_KF_MI_LIST = ${DATAFILES} 17 | 18 | EXPORT_MI_LIST = ${DATAFILES} audit.h audit_bsd.h audit_private.h 19 | 20 | EXPORT_MI_DIR = security/audit 21 | 22 | include $(MakeInc_rule) 23 | include $(MakeInc_dir) 24 | -------------------------------------------------------------------------------- /tools/tests/kernpost_test_report/Makefile: -------------------------------------------------------------------------------- 1 | include ../Makefile.common 2 | 3 | DSTROOT?=$(shell /bin/pwd) 4 | SYMROOT?=$(shell /bin/pwd) 5 | OBJROOT?=$(shell /bin/pwd) 6 | 7 | CC:=$(shell xcrun -sdk "$(SDKROOT)" -find cc) 8 | 9 | CFLAGS:=$(ARCH_FLAGS) -g -Wall -Os -isysroot $(SDKROOT) -I$(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders -lkdd -framework Foundation 10 | 11 | all: $(DSTROOT)/kernpost_test_report 12 | 13 | $(DSTROOT)/kernpost_test_report: kernpost_test_report.m 14 | $(CC) -o $@ $^ $(subst -arch i386,,$(CFLAGS)) 15 | 16 | clean: 17 | rm -f $(DSTROOT)/kernpost_test_report $(OBJROOT)/*.o 18 | rm -rf $(SYMROOT)/*.dSYM 19 | -------------------------------------------------------------------------------- /bsd/conf/Makefile.x86_64: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for x86_64 3 | ###################################################################### 4 | 5 | # Inline assembly doesn't interact well with LTO 6 | fbt_x86.o_CFLAGS_ADD += $(CFLAGS_NOLTO_FLAG) 7 | # Taking the address of labels doesn't work with LTO (9524055) 8 | dtrace.o_CFLAGS_ADD += $(CFLAGS_NOLTO_FLAG) 9 | 10 | ###################################################################### 11 | #END Machine dependent Makefile fragment for x86_64 12 | ###################################################################### 13 | -------------------------------------------------------------------------------- /bsd/miscfs/routefs/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = 10 | 11 | KERNELFILES = \ 12 | routefs.h 13 | 14 | INSTALL_MI_LIST = ${DATAFILES} 15 | 16 | INSTALL_MI_DIR = miscfs/routefs 17 | 18 | INSTALL_KF_MI_LIST = ${DATAFILES} 19 | 20 | INSTALL_KF_MI_LCL_LIST = 21 | 22 | EXPORT_MI_LIST = 23 | 24 | EXPORT_MI_DIR = miscfs/routefs 25 | 26 | include $(MakeInc_rule) 27 | include $(MakeInc_dir) 28 | -------------------------------------------------------------------------------- /tests/intrusive_shared_ptr_src/abi_helper.h: -------------------------------------------------------------------------------- 1 | #ifndef TESTS_INTRUSIVE_SHARED_PTR_ABI_HELPER_H 2 | #define TESTS_INTRUSIVE_SHARED_PTR_ABI_HELPER_H 3 | 4 | #include 5 | #include 6 | #include "test_policy.h" 7 | 8 | struct T { int i; }; 9 | 10 | #if defined USE_SHARED_PTR 11 | template 12 | using SharedPtr = libkern::intrusive_shared_ptr; 13 | #else 14 | template 15 | using SharedPtr = T *; 16 | #endif 17 | 18 | extern SharedPtr return_shared_as_raw(T*); 19 | extern SharedPtr return_raw_as_shared(T*); 20 | 21 | #endif // !TESTS_INTRUSIVE_SHARED_PTR_ABI_HELPER_H 22 | -------------------------------------------------------------------------------- /tests/safe_allocation_src/usage.for_loop.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Make sure `safe_allocation` works nicely with the range-based for-loop. 3 | // 4 | 5 | #include 6 | #include 7 | #include "test_utils.h" 8 | 9 | struct T { 10 | int i; 11 | }; 12 | 13 | template 14 | static void 15 | tests() 16 | { 17 | test_safe_allocation array(10, libkern::allocate_memory); 18 | for (T& element : array) { 19 | element = T{3}; 20 | } 21 | 22 | for (T const& element : array) { 23 | CHECK(element.i == 3); 24 | } 25 | } 26 | 27 | T_DECL(usage_for_loop, "safe_allocation.usage.for_loop") { 28 | tests(); 29 | } 30 | -------------------------------------------------------------------------------- /tests/vm/mixed_pagesize.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Tests 6 | 7 | 8 | Command 9 | 10 | /AppleInternal/Tests/xnu/darwintests/tools/vm_spawn_tool 11 | /AppleInternal/Tests/xnu/darwintests/vm/mixed_pagesize 12 | 13 | TestName 14 | xnu.vm.mixed_pagesize 15 | 16 | 17 | Timeout 18 | 240 19 | 20 | 21 | -------------------------------------------------------------------------------- /san/conf/files: -------------------------------------------------------------------------------- 1 | OPTIONS/CONFIG_KASAN optional config_kasan 2 | OPTIONS/CONFIG_UBSAN optional config_ubsan 3 | OPTIONS/CONFIG_KSANCOV optional config_ksancov 4 | 5 | san/kasan.c optional config_kasan 6 | san/kasan-fakestack.c optional config_kasan 7 | san/kasan-test.c optional config_kasan 8 | san/kasan-memintrinsics.c optional config_kasan 9 | san/kasan_dynamic_blacklist.c optional config_kasan 10 | 11 | san/ubsan.c optional config_ubsan 12 | san/ubsan_log.c optional config_ubsan 13 | 14 | san/ksancov.c optional config_ksancov 15 | -------------------------------------------------------------------------------- /tools/tests/zero-to-n/Makefile: -------------------------------------------------------------------------------- 1 | include ../Makefile.common 2 | 3 | CC:=$(shell xcrun -sdk "$(SDKROOT)" -find cc) 4 | 5 | CFLAGS := -Os -g $(ARCH_FLAGS) -isysroot $(SDKROOT) -isystem $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders 6 | CFLAGS += -Wl,-sectcreate,__INFO_FILTER,__disable,/dev/null 7 | 8 | DSTROOT?=$(shell /bin/pwd) 9 | SYMROOT?=$(shell /bin/pwd) 10 | 11 | DEBUG:=0 12 | 13 | $(DSTROOT)/zn: zero-to-n.c 14 | $(CC) $(CFLAGS) -Wall zero-to-n.c -o $(SYMROOT)/$(notdir $@) -DDEBUG=$(DEBUG) -ggdb 15 | if [ ! -e $@ ]; then ditto $(SYMROOT)/$(notdir $@) $@; fi 16 | 17 | clean: 18 | rm -rf $(DSTROOT)/zn $(SYMROOT)/*.dSYM $(SYMROOT)/zn 19 | -------------------------------------------------------------------------------- /osfmk/kdp/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | kdp_callout.h \ 11 | kdp_en_debugger.h 12 | 13 | PRIVATE_KERNELFILES = processor_core.h 14 | 15 | EXPORT_MI_LIST = ${DATAFILES} kdp_dyld.h 16 | 17 | INSTALL_KF_MI_LIST = ${DATAFILES} 18 | 19 | INSTALL_KF_MI_LCL_LIST = ${DATAFILES} ${PRIVATE_KERNELFILES} 20 | 21 | EXPORT_MI_DIR = kdp 22 | 23 | include $(MakeInc_rule) 24 | include $(MakeInc_dir) 25 | -------------------------------------------------------------------------------- /tests/bounded_array_src/size.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Tests for 3 | // size_t size() const; 4 | // 5 | 6 | #include 7 | #include "test_policy.h" 8 | #include 9 | #include 10 | 11 | struct T { int i; }; 12 | 13 | template 14 | static void 15 | tests() 16 | { 17 | { 18 | test_bounded_array const array = {T{0}, T{1}, T{2}, T{3}, T{4}}; 19 | size_t size = array.size(); 20 | CHECK(size == 5); 21 | } 22 | { 23 | test_bounded_array const array = {}; 24 | size_t size = array.size(); 25 | CHECK(size == 0); 26 | } 27 | } 28 | 29 | T_DECL(size, "bounded_array.size") { 30 | tests(); 31 | } 32 | -------------------------------------------------------------------------------- /iokit/System/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | # These are System.framework headers 7 | 8 | include $(MakeInc_cmd) 9 | include $(MakeInc_def) 10 | 11 | ALL_HDRS = $(shell (cd $(SOURCE); echo *.h)) 12 | 13 | # INSTINC_SUBDIRS = Headers 14 | 15 | EXPINC_SUBDIRS = ${INSTINC_SUBDIRS} 16 | 17 | # INSTALL_MI_DIR = . 18 | 19 | INSTALL_MI_LCL_LIST = $(ALL_HDRS) 20 | 21 | INSTALL_MI_GEN_LIST = $(GENERATED_HEADERS) 22 | 23 | include $(MakeInc_rule) 24 | include $(MakeInc_dir) 25 | -------------------------------------------------------------------------------- /osfmk/x86_64/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | EXPORT_FILES = \ 10 | machine_remote_time.h 11 | 12 | 13 | EXPORT_ONLY_FILES = \ 14 | machine_kpc.h \ 15 | monotonic.h 16 | 17 | INSTALL_KF_MD_LCL_LIST = ${EXPORT_FILES} 18 | 19 | INSTALL_MD_DIR = x86_64 20 | 21 | EXPORT_MD_LIST = ${EXPORT_ONLY_FILES} ${EXPORT_FILES} 22 | 23 | EXPORT_MD_DIR = x86_64 24 | 25 | include $(MakeInc_rule) 26 | include $(MakeInc_dir) 27 | -------------------------------------------------------------------------------- /tests/bounded_array_ref_src/for_loop.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Make sure `bounded_array_ref` works nicely with the range-based for-loop. 3 | // 4 | 5 | #include 6 | #include 7 | #include "test_policy.h" 8 | 9 | struct T { 10 | int i; 11 | }; 12 | 13 | template 14 | static void 15 | tests() 16 | { 17 | T array[5] = {T{0}, T{1}, T{2}, T{3}, T{4}}; 18 | test_bounded_array_ref view(array); 19 | for (T& element : view) { 20 | element = T{3}; 21 | } 22 | 23 | for (T const& element : view) { 24 | CHECK(element.i == 3); 25 | } 26 | } 27 | 28 | T_DECL(for_loop, "bounded_array_ref.for_loop") { 29 | tests(); 30 | } 31 | -------------------------------------------------------------------------------- /osfmk/console/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = 10 | 11 | PRIVATE_DATAFILES = \ 12 | video_console.h \ 13 | serial_protos.h 14 | 15 | INSTALL_MI_LCL_LIST = ${PRIVATE_DATAFILES} 16 | 17 | INSTALL_KF_MI_LCL_LIST = ${PRIVATE_DATAFILES} 18 | 19 | EXPORT_MI_LIST = ${PRIVATE_DATAFILES} 20 | 21 | INSTALL_MI_DIR = console 22 | EXPORT_MI_DIR = console 23 | 24 | include $(MakeInc_rule) 25 | include $(MakeInc_dir) 26 | -------------------------------------------------------------------------------- /osfmk/prng/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | EXPORT_ONLY_FILES = \ 10 | entropy.h \ 11 | random.h 12 | 13 | EXPORT_MI_DIR = prng 14 | 15 | # Export our headers 16 | EXPORT_MI_LIST = ${EXPORT_ONLY_FILES} 17 | 18 | INSTALL_MI_DIR = prng 19 | 20 | INSTALL_MI_LIST = $(empty) 21 | 22 | # Don't install in non-local, though 23 | INSTALL_KF_MI_LIST = $(empty) 24 | 25 | include $(MakeInc_rule) 26 | include $(MakeInc_dir) 27 | -------------------------------------------------------------------------------- /tests/fduiomove.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | T_GLOBAL_META( 10 | T_META_RUN_CONCURRENTLY(true), 11 | T_META_LTEPHASE(LTE_POSTINIT) 12 | ); 13 | 14 | T_DECL(fd_invalid_pread, "Test for 66711697: make sure we get EFAULT") 15 | { 16 | int fd; 17 | ssize_t rc; 18 | 19 | fd = open(*_NSGetProgname(), O_RDONLY); 20 | T_ASSERT_POSIX_SUCCESS(fd, "open(self)"); 21 | 22 | rc = pread(fd, (void *)~0, 64 << 10, 0); 23 | T_ASSERT_POSIX_FAILURE(rc, EFAULT, "pread should fail with EFAULT"); 24 | 25 | close(fd); 26 | } 27 | -------------------------------------------------------------------------------- /tools/tests/TLBcoherency/Makefile: -------------------------------------------------------------------------------- 1 | include ../Makefile.common 2 | 3 | CC:=$(shell xcrun -sdk "$(SDKROOT)" -find cc) 4 | 5 | CFLAGS := -g $(ARCH_FLAGS) -isysroot $(SDKROOT) -isystem $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders 6 | CFLAGS += -Wl,-sectcreate,__INFO_FILTER,__disable,/dev/null 7 | 8 | DSTROOT?=$(shell /bin/pwd) 9 | SYMROOT?=$(shell /bin/pwd) 10 | 11 | DEBUG:=0 12 | 13 | $(DSTROOT)/tlbcoh: TLBcoherency.c 14 | $(CC) $(CFLAGS) -Wall TLBcoherency.c -o $(SYMROOT)/$(notdir $@) -DDEBUG=$(DEBUG) -g -Os 15 | if [ ! -e $@ ]; then ditto $(SYMROOT)/$(notdir $@) $@; fi 16 | 17 | clean: 18 | rm -rf $(DSTROOT)/tlbcoh $(SYMROOT)/*.dSYM $(SYMROOT)/tlbcoh 19 | -------------------------------------------------------------------------------- /bsd/bsm/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | audit.h audit_domain.h audit_errno.h audit_fcntl.h audit_internal.h \ 11 | audit_kevents.h audit_record.h audit_socket_type.h 12 | KERNFILES = \ 13 | audit.h 14 | 15 | INSTALL_MI_LIST = ${DATAFILES} 16 | 17 | INSTALL_MI_DIR = bsm 18 | 19 | EXPORT_MI_LIST = ${KERNFILES} 20 | 21 | EXPORT_MI_DIR = bsm 22 | 23 | include $(MakeInc_rule) 24 | include $(MakeInc_dir) 25 | -------------------------------------------------------------------------------- /osfmk/mach/arm64/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | VPATH := $(VPATH):$(SOURCE)/../../arm64 10 | 11 | DATAFILES = 12 | 13 | INSTALL_MD_LIST = ${DATAFILES} 14 | 15 | INSTALL_MD_GEN_LIST = \ 16 | asm.h 17 | 18 | INSTALL_MD_DIR = mach/arm64 19 | 20 | EXPORT_MD_LIST = ${DATAFILES} 21 | 22 | EXPORT_MD_GEN_LIST = \ 23 | asm.h 24 | 25 | EXPORT_MD_DIR = mach/arm64 26 | 27 | include $(MakeInc_rule) 28 | include $(MakeInc_dir) 29 | -------------------------------------------------------------------------------- /EXTERNAL_HEADERS/architecture/i386/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | EXPORT_FILES = \ 10 | asm_help.h \ 11 | cpu.h \ 12 | io.h \ 13 | pio.h \ 14 | sel.h \ 15 | tss.h \ 16 | desc.h \ 17 | reg_help.h \ 18 | table.h 19 | 20 | INSTALL_MD_LIST = 21 | 22 | INSTALL_MD_DIR = 23 | 24 | EXPORT_MD_LIST = ${EXPORT_FILES} 25 | 26 | EXPORT_MD_DIR = architecture/i386 27 | 28 | include $(MakeInc_rule) 29 | include $(MakeInc_dir) 30 | -------------------------------------------------------------------------------- /bsd/nfs/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | krpc.h nfs.h nfsdiskless.h nfsm_subs.h nfsmount.h nfsnode.h \ 11 | nfs_lock.h nfs_gss.h nfs_ioctl.h \ 12 | nfsproto.h nfsrvcache.h rpcv2.h xdr_subs.h 13 | # gss/gss_krb5_mech.h 14 | 15 | INSTALL_MI_LIST = ${DATAFILES} 16 | 17 | INSTALL_MI_DIR = nfs 18 | 19 | EXPORT_MI_LIST = 20 | 21 | EXPORT_MI_DIR = nfs 22 | 23 | include $(MakeInc_rule) 24 | include $(MakeInc_dir) 25 | -------------------------------------------------------------------------------- /tests/task_for_pid_entitlement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.system-task-ports 6 | 7 | task_for_pid-allow 8 | 9 | 10 | com.apple.system-task-ports.control 11 | 12 | 13 | 14 | com.apple.security.get-movable-control-port 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /tests/dev_zero.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | T_DECL(dev_zero, 8 | "test reading from /dev/zero", 9 | T_META_ASROOT(false)) 10 | { 11 | int dev = opendev("/dev/zero", O_RDONLY, NULL, NULL); 12 | char buffer[100]; 13 | 14 | for (int i = 0; i < 100; i++) { 15 | buffer[i] = 0xff; 16 | } 17 | 18 | int rd_sz = read(dev, buffer, sizeof(buffer)); 19 | 20 | T_EXPECT_EQ(rd_sz, 100, "read from /dev/zero failed"); 21 | 22 | for (int i = 0; i < 100; i++) { 23 | if (buffer[i]) { 24 | T_FAIL("Unexpected non-zero character read from /dev/zero"); 25 | } 26 | } 27 | 28 | close(dev); 29 | } 30 | -------------------------------------------------------------------------------- /tools/lldbmacros/core/configuration.py: -------------------------------------------------------------------------------- 1 | # global configs to be included by everybody. The recommended way is 2 | # from core.configuration import * 3 | # verbosity levels 4 | (vSILENT, vHUMAN, vSCRIPT, vDETAIL) = (0, 1, 2, 3) 5 | 6 | config = {'debug': False, 'verbosity': vHUMAN, 'showTypeSummary': False, "CacheStaticData":True, "CacheDynamicData": True} 7 | # Note: The above configuration dictionary holds the default values. 8 | # 'debug' when True enables debug print messages in whole of xnu lldbmacros framework 9 | # 'CacheStaticData' when True caches static data. Types, uuids etc. 10 | # 'CacheDymanicData' when True caches dynamic data which will get cleared upon continuing, single stepping or detaching. 11 | -------------------------------------------------------------------------------- /tools/tests/MPMMTest/README: -------------------------------------------------------------------------------- 1 | MPMMTest / KQMPMMTest 2 | 3 | These tests measure the speed of IPC with mach messaging and kqueues. To build, 4 | simply run make. A 32- and 64-bit version of each test will be generated by 5 | default. Each test can be run without options: 6 | 7 | $ ./MPMMtest 8 | 1 server, 4 clients per server (4 total) 400000 messages... in 4.820 seconds 9 | throughput in messages/sec: 82978.7 10 | average message latency (usec): 12.1 11 | 12 | and will report the latency and throughput that the server achieved. The user 13 | can change the number of servers and clients, the flavor of message, and other 14 | variables with command line options--run './MPMMtest -h' for details. 15 | 16 | -------------------------------------------------------------------------------- /tests/mpsc.c: -------------------------------------------------------------------------------- 1 | /* 2 | * mpsc: test the MPSC interface 3 | */ 4 | 5 | #ifdef T_NAMESPACE 6 | #undef T_NAMESPACE 7 | #endif 8 | 9 | #include 10 | #include 11 | 12 | T_GLOBAL_META(T_META_NAMESPACE("xnu.mpsc"), 13 | T_META_RUN_CONCURRENTLY(true)); 14 | 15 | T_DECL(pingpong, "mpsc_pingpong", T_META_ASROOT(true)) 16 | { 17 | uint64_t count = 100 * 1000, nsecs = 0; 18 | size_t nlen = sizeof(nsecs); 19 | int error; 20 | 21 | error = sysctlbyname("kern.mpsc_test_pingpong", &nsecs, &nlen, 22 | &count, sizeof(count)); 23 | T_ASSERT_POSIX_SUCCESS(error, "sysctlbyname"); 24 | T_LOG("%lld asyncs in %lld ns (%g us/async)", count, nsecs, 25 | (nsecs / 1e3) / count); 26 | } 27 | -------------------------------------------------------------------------------- /tests/mach_boottime_usec.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | 8 | #include 9 | 10 | T_GLOBAL_META(T_META_RUN_CONCURRENTLY(true)); 11 | 12 | T_DECL(mach_boottime_usec, "mach_boottime_usec()", 13 | T_META_ALL_VALID_ARCHS(true), T_META_LTEPHASE(LTE_POSTINIT)) 14 | { 15 | uint64_t bt_usec = mach_boottime_usec(); 16 | 17 | struct timeval bt_tv; 18 | size_t len = sizeof(bt_tv); 19 | T_ASSERT_POSIX_SUCCESS(sysctlbyname("kern.boottime", &bt_tv, &len, NULL, 0), NULL); 20 | 21 | T_EXPECT_EQ((uint64_t)bt_tv.tv_sec * USEC_PER_SEC + (uint64_t)bt_tv.tv_usec, bt_usec, NULL); 22 | } 23 | -------------------------------------------------------------------------------- /tests/bounded_ptr_src/ctor.default.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Tests for 3 | // explicit bounded_ptr(); 4 | // 5 | 6 | #include 7 | #include 8 | #include 9 | #include "test_utils.h" 10 | 11 | #define _assert(...) T_ASSERT_TRUE((__VA_ARGS__), # __VA_ARGS__) 12 | 13 | struct T { }; 14 | 15 | template 16 | static void 17 | tests() 18 | { 19 | { 20 | test_bounded_ptr p; 21 | _assert(p == nullptr); 22 | } 23 | { 24 | test_bounded_ptr p{}; 25 | _assert(p == nullptr); 26 | } 27 | } 28 | 29 | T_DECL(ctor_default, "bounded_ptr.ctor.default") { 30 | tests(); 31 | tests(); 32 | tests(); 33 | tests(); 34 | } 35 | -------------------------------------------------------------------------------- /iokit/IOKit/IOKitDiagnosticsUserClient.h: -------------------------------------------------------------------------------- 1 | /* * Copyright (c) 2019 Apple Inc. All rights reserved. */ 2 | 3 | #include 4 | #include 5 | 6 | 7 | class IOKitDiagnosticsClient : public IOUserClient 8 | { 9 | OSDeclareDefaultStructors(IOKitDiagnosticsClient); 10 | 11 | public: 12 | static IOUserClient * withTask(task_t owningTask); 13 | virtual IOReturn clientClose(void) APPLE_KEXT_OVERRIDE; 14 | virtual IOReturn setProperties(OSObject * properties) APPLE_KEXT_OVERRIDE; 15 | virtual IOReturn externalMethod(uint32_t selector, IOExternalMethodArguments * args, 16 | IOExternalMethodDispatch * dispatch, OSObject * target, void * reference) APPLE_KEXT_OVERRIDE; 17 | }; 18 | -------------------------------------------------------------------------------- /osfmk/mach_debug/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | MIG_DEFS = mach_debug_types.defs 10 | 11 | DATAFILES = \ 12 | mach_debug.h \ 13 | hash_info.h ipc_info.h vm_info.h zone_info.h \ 14 | page_info.h mach_debug_types.h lockgroup_info.h \ 15 | ${MIG_DEFS} 16 | 17 | INSTALL_MI_LIST = ${DATAFILES} 18 | 19 | INSTALL_MI_DIR = mach_debug 20 | 21 | EXPORT_MI_LIST = ${DATAFILES} 22 | 23 | EXPORT_MI_DIR = mach_debug 24 | 25 | include $(MakeInc_rule) 26 | include $(MakeInc_dir) 27 | -------------------------------------------------------------------------------- /osfmk/ipc/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = 10 | 11 | EXPORT_ONLY_FILES = \ 12 | ipc_types.h 13 | 14 | EXPORT_PRIVATE_FILES = \ 15 | ipc_port.h \ 16 | ipc_voucher.h 17 | 18 | INSTALL_MI_LIST = ${DATAFILES} 19 | 20 | INSTALL_MI_DIR = ipc 21 | 22 | EXPORT_MI_LIST = ${DATAFILES} ${EXPORT_ONLY_FILES} 23 | 24 | INSTALL_KF_MI_LCL_LIST = ${EXPORT_ONLY_FILES} ${EXPORT_PRIVATE_FILES} 25 | 26 | EXPORT_MI_DIR = ipc 27 | 28 | include $(MakeInc_rule) 29 | include $(MakeInc_dir) 30 | -------------------------------------------------------------------------------- /tests/intrusive_shared_ptr_src/detach.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Tests for 3 | // pointer detach() noexcept; 4 | // 5 | 6 | #include 7 | #include 8 | #include "test_policy.h" 9 | 10 | struct T { 11 | int i; 12 | }; 13 | 14 | template 15 | static void 16 | tests() 17 | { 18 | T obj{3}; 19 | 20 | tracking_policy::reset(); 21 | tracked_shared_ptr ptr(&obj, libkern::retain); 22 | T* raw = ptr.detach(); 23 | CHECK(raw == &obj); 24 | CHECK(ptr.get() == nullptr); // ptr was set to null 25 | CHECK(tracking_policy::retains == 1); 26 | CHECK(tracking_policy::releases == 0); 27 | } 28 | 29 | T_DECL(detach, "intrusive_shared_ptr.detach") { 30 | tests(); 31 | tests(); 32 | } 33 | -------------------------------------------------------------------------------- /tests/launchd_plists/com.apple.xnu.test.kevent_qos.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Label 6 | com.apple.xnu.test.kevent_qos 7 | MachServices 8 | 9 | com.apple.xnu.test.kevent_qos 10 | 11 | 12 | ThrottleInterval 13 | 1 14 | UserName 15 | root 16 | ProcessType 17 | Adaptive 18 | EnvironmentVariables 19 | 20 | MallocNanoZone 21 | 1 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /tools/tests/perf_index/perfindex-file_create.c: -------------------------------------------------------------------------------- 1 | #include "perf_index.h" 2 | #include "fail.h" 3 | #include "test_file_helper.h" 4 | #include 5 | #include 6 | #include 7 | 8 | char tempdir[MAXPATHLEN]; 9 | 10 | DECL_SETUP { 11 | char* retval; 12 | 13 | retval = setup_tempdir(tempdir); 14 | 15 | VERIFY(retval, "tempdir setup failed"); 16 | 17 | printf("tempdir: %s\n", tempdir); 18 | 19 | return PERFINDEX_SUCCESS; 20 | } 21 | 22 | DECL_TEST { 23 | return test_file_create(tempdir, thread_id, num_threads, length); 24 | } 25 | 26 | DECL_CLEANUP { 27 | int retval; 28 | 29 | retval = cleanup_tempdir(tempdir); 30 | VERIFY(retval == 0, "cleanup_tempdir failed"); 31 | 32 | return PERFINDEX_SUCCESS; 33 | } 34 | -------------------------------------------------------------------------------- /tools/trace/ios_trace_ipc.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # Initiate tracing 4 | CODE_MACH_KMSG_INFO=0x1200028 5 | CODE_MACH_PROC_EXEC=0x401000C 6 | CODE_MACH_MSG_SEND=0x120000C 7 | CODE_MACH_MSG_RECV=0x1200010 8 | CODE_TRACE_DATA_EXEC=0x7000008 9 | 10 | ofile=${1:-ipc.raw} 11 | sleepsec=${2:-3} 12 | 13 | trace -i -b 8192 14 | trace -n 15 | trace -g 16 | if [ $sleepsec -gt 0 ]; then 17 | echo "" 18 | echo "Sleeping for ${sleepsec}..." 19 | sleep ${sleepsec} 20 | fi 21 | echo "Tracing!" 22 | 23 | ps -Ac | sed 's,\s*\([0-9][0-9]*\) .*[0-9]*:[0-9]*\.[0-9]* \(.*\), 00000000.0 0.0(0.0) proc_exec \1 0 0 0 0 0 \2,' > "ps_${ofile}.txt" 24 | trace -L ${ofile} -k ${CODE_MACH_KMSG_INFO} -k ${CODE_MACH_PROC_EXEC} -k ${CODE_MACH_MSG_SEND} -k ${CODE_MACH_MSG_RECV} 25 | -------------------------------------------------------------------------------- /bsd/conf/files.arm: -------------------------------------------------------------------------------- 1 | bsd/dev/arm/conf.c standard 2 | bsd/dev/arm/cons.c standard 3 | bsd/dev/arm/km.c standard 4 | bsd/dev/arm/kern_machdep.c standard 5 | bsd/dev/arm/stubs.c standard 6 | bsd/dev/arm/systemcalls.c standard 7 | bsd/dev/arm/sysctl.c standard 8 | bsd/dev/arm/unix_signal.c standard 9 | bsd/dev/arm/cpu_in_cksum.s standard 10 | 11 | bsd/dev/arm/dtrace_isa.c optional config_dtrace 12 | bsd/dev/arm/dtrace_subr_arm.c optional config_dtrace 13 | bsd/dev/arm/fbt_arm.c optional config_dtrace 14 | bsd/dev/arm/fasttrap_isa.c optional config_dtrace 15 | bsd/dev/arm/disassembler.c optional config_dtrace 16 | bsd/dev/arm/sdt_arm.c optional config_dtrace 17 | 18 | bsd/dev/arm/munge.c standard 19 | 20 | bsd/kern/bsd_stubs.c standard 21 | -------------------------------------------------------------------------------- /pexpert/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | INSTINC_SUBDIRS = pexpert 10 | INSTINC_SUBDIRS_X86_64 = pexpert 11 | INSTINC_SUBDIRS_X86_64H = pexpert 12 | INSTINC_SUBDIRS_ARM = pexpert 13 | INSTINC_SUBDIRS_ARM64 = pexpert 14 | 15 | 16 | EXPINC_SUBDIRS = pexpert 17 | EXPINC_SUBDIRS_X86_64 = pexpert 18 | EXPINC_SUBDIRS_X86_64H = pexpert 19 | EXPINC_SUBDIRS_ARM = pexpert 20 | EXPINC_SUBDIRS_ARM64 = pexpert 21 | 22 | COMP_SUBDIRS = \ 23 | conf 24 | 25 | include $(MakeInc_rule) 26 | include $(MakeInc_dir) 27 | -------------------------------------------------------------------------------- /tests/intrusive_shared_ptr_src/deref.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Tests for 3 | // T& operator*() const noexcept; 4 | // T* operator->() const noexcept; 5 | // 6 | 7 | #include 8 | #include 9 | #include "test_policy.h" 10 | 11 | struct T { 12 | int i; 13 | }; 14 | 15 | template 16 | static void 17 | tests() 18 | { 19 | T obj{3}; 20 | tracked_shared_ptr ptr(&obj, libkern::no_retain); 21 | 22 | { 23 | T& ref = *ptr; 24 | CHECK(&ref == &obj); 25 | CHECK(ref.i == 3); 26 | } 27 | 28 | { 29 | int const& ref = ptr->i; 30 | CHECK(&ref == &obj.i); 31 | CHECK(ref == 3); 32 | } 33 | } 34 | 35 | T_DECL(deref, "intrusive_shared_ptr.deref") { 36 | tests(); 37 | tests(); 38 | } 39 | -------------------------------------------------------------------------------- /tests/subsystem_root_path.h: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #define SUBSYSTEM_ROOT_PATH_KEY "subsystem_root_path" 6 | 7 | #define HELPER_BEHAVIOR_NOT_SET "not_set" 8 | #define HELPER_BEHAVIOR_SET "set" 9 | #define HELPER_BEHAVIOR_FORK_EXEC "fork_exec" 10 | #define HELPER_BEHAVIOR_SPAWN "spawn" 11 | 12 | static int 13 | _spawn_and_wait(char ** args, posix_spawnattr_t *attr) 14 | { 15 | int pid; 16 | int status; 17 | 18 | if (posix_spawn(&pid, args[0], NULL, attr, args, NULL)) { 19 | return -1; 20 | } 21 | if (waitpid(pid, &status, 0) < 0) { 22 | return -1; 23 | } 24 | 25 | if (WIFEXITED(status) && (WEXITSTATUS(status) == 0)) { 26 | return 0; 27 | } 28 | 29 | return -1; 30 | } 31 | -------------------------------------------------------------------------------- /tests/bounded_array_src/test_policy.h: -------------------------------------------------------------------------------- 1 | #ifndef TESTS_BOUNDED_ARRAY_SRC_TEST_POLICY_H 2 | #define TESTS_BOUNDED_ARRAY_SRC_TEST_POLICY_H 3 | 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | struct test_policy { 11 | static void 12 | trap(char const*) 13 | { 14 | assert(false); 15 | } 16 | }; 17 | 18 | template 19 | using test_bounded_array = libkern::bounded_array; 20 | 21 | template 22 | using test_bounded_ptr = libkern::bounded_ptr; 23 | 24 | #define CHECK(...) T_ASSERT_TRUE((__VA_ARGS__), # __VA_ARGS__) 25 | 26 | #endif // !TESTS_BOUNDED_ARRAY_SRC_TEST_POLICY_H 27 | -------------------------------------------------------------------------------- /libkern/libkern/arm/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | OSByteOrder.h 11 | 12 | DRIVERKIT_DATAFILES = \ 13 | OSByteOrder.h 14 | 15 | INSTALL_MD_LIST = ${DATAFILES} 16 | 17 | INSTALL_DRIVERKIT_MD_LIST = ${DRIVERKIT_DATAFILES} 18 | 19 | DRIVERKITINCDIR = $(DRIVERKITSDKHEADERSROOT)/usr/local/include 20 | 21 | INSTALL_MD_DIR = libkern/arm 22 | 23 | EXPORT_MD_LIST = ${DATAFILES} 24 | 25 | EXPORT_MD_DIR = libkern/arm 26 | 27 | include $(MakeInc_rule) 28 | include $(MakeInc_dir) 29 | -------------------------------------------------------------------------------- /libkern/libkern/crypto/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = md5.h rand.h sha1.h 10 | 11 | PRIVATE_DATAFILES = register_crypto.h sha2.h des.h aes.h aesxts.h rsa.h chacha20poly1305.h 12 | 13 | INSTALL_KF_MI_LIST = ${DATAFILES} 14 | 15 | INSTALL_KF_MI_LCL_LIST = ${PRIVATE_DATAFILES} 16 | 17 | INSTALL_MI_DIR = libkern/crypto 18 | 19 | EXPORT_MI_LIST = ${DATAFILES} ${PRIVATE_DATAFILES} crypto_internal.h 20 | 21 | EXPORT_MI_DIR = libkern/crypto 22 | 23 | include $(MakeInc_rule) 24 | include $(MakeInc_dir) 25 | -------------------------------------------------------------------------------- /libkern/libkern/img4/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = 10 | PRIVATE_DATAFILES = 11 | KERNELFILES = 12 | PRIVATE_KERNELFILES = interface.h 13 | 14 | INSTALL_MI_LIST = ${DATAFILES} 15 | INSTALL_MI_LCL_LIST = ${PRIVATE_DATAFILES} 16 | INSTALL_KF_MI_LIST = ${KERNELFILES} 17 | INSTALL_KF_MI_LCL_LIST = ${PRIVATE_KERNELFILES} 18 | EXPORT_MI_LIST = ${INSTALL_KF_MI_LCL_LIST} 19 | 20 | INSTALL_MI_DIR = libkern/img4 21 | EXPORT_MI_DIR = libkern/img4 22 | 23 | include $(MakeInc_rule) 24 | include $(MakeInc_dir) 25 | -------------------------------------------------------------------------------- /bsd/miscfs/devfs/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | devfs.h 11 | 12 | KERNELFILES = \ 13 | devfs.h \ 14 | fdesc.h \ 15 | devfs_proto.h \ 16 | devfsdefs.h 17 | 18 | INSTALL_MI_LIST = ${DATAFILES} 19 | 20 | INSTALL_MI_DIR = miscfs/devfs 21 | 22 | INSTALL_KF_MI_LIST = ${DATAFILES} 23 | 24 | INSTALL_KF_MI_LCL_LIST = ${DATAFILES} devfs_proto.h devfsdefs.h 25 | 26 | EXPORT_MI_LIST = ${KERNELFILES} 27 | 28 | EXPORT_MI_DIR = miscfs/devfs 29 | 30 | include $(MakeInc_rule) 31 | include $(MakeInc_dir) 32 | -------------------------------------------------------------------------------- /libkern/libkern/coretrust/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = 10 | PRIVATE_DATAFILES = 11 | KERNELFILES = 12 | PRIVATE_KERNELFILES = coretrust.h 13 | 14 | INSTALL_MI_LIST = ${DATAFILES} 15 | INSTALL_MI_LCL_LIST = ${PRIVATE_DATAFILES} 16 | INSTALL_KF_MI_LIST = ${KERNELFILES} 17 | INSTALL_KF_MI_LCL_LIST = ${PRIVATE_KERNELFILES} 18 | EXPORT_MI_LIST = ${INSTALL_KF_MI_LCL_LIST} 19 | 20 | INSTALL_MI_DIR = libkern/coretrust 21 | EXPORT_MI_DIR = libkern/coretrust 22 | 23 | include $(MakeInc_rule) 24 | include $(MakeInc_dir) -------------------------------------------------------------------------------- /tests/launchd_plists/com.apple.xnu.test.mach_port.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | MachServices 6 | 7 | com.apple.xnu.test.mach_port 8 | 9 | ResetAtClose 10 | 11 | 12 | 13 | ThrottleInterval 14 | 1 15 | UserName 16 | root 17 | ProcessType 18 | Adaptive 19 | EnvironmentVariables 20 | 21 | MallocNanoZone 22 | 1 23 | 24 | LaunchOnlyOnce 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /bsd/arm/disklabel.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2000-2007 Apple Inc. All rights reserved. 3 | */ 4 | #ifndef _MACHINE_DISKLABEL_H_ 5 | #define _MACHINE_DISKLABEL_H_ 6 | 7 | #include 8 | 9 | #ifdef __APPLE_API_OBSOLETE 10 | #define LABELSECTOR (1024 / DEV_BSIZE) /* sector containing label */ 11 | #define LABELOFFSET 0 /* offset of label in sector */ 12 | #define MAXPARTITIONS 8 /* number of partitions */ 13 | #define RAW_PART 2 /* raw partition: xx?c */ 14 | 15 | /* Just a dummy */ 16 | struct cpu_disklabel { 17 | int cd_dummy; /* must have one element. */ 18 | }; 19 | #endif /* __APPLE_API_OBSOLETE */ 20 | 21 | #endif /* _MACHINE_DISKLABEL_H_ */ 22 | -------------------------------------------------------------------------------- /libkern/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | INSTINC_SUBDIRS = \ 10 | libkern os firehose 11 | INSTINC_SUBDIRS_X86_64 = libkern 12 | INSTINC_SUBDIRS_X86_64H = libkern 13 | INSTINC_SUBDIRS_ARM = libkern 14 | INSTINC_SUBDIRS_ARM64 = libkern 15 | 16 | EXPINC_SUBDIRS = \ 17 | libkern os firehose 18 | EXPINC_SUBDIRS_X86_64 = libkern 19 | EXPINC_SUBDIRS_X86_64H = libkern 20 | EXPINC_SUBDIRS_ARM = libkern 21 | EXPINC_SUBDIRS_ARM64 = libkern 22 | 23 | COMP_SUBDIRS = conf 24 | 25 | include $(MakeInc_rule) 26 | include $(MakeInc_dir) 27 | -------------------------------------------------------------------------------- /libkern/libkern/machine/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | OSByteOrder.h 11 | 12 | DRIVERKIT_DATAFILES = \ 13 | OSByteOrder.h 14 | 15 | INSTALL_MI_LIST = ${DATAFILES} 16 | 17 | INSTALL_DRIVERKIT_MI_LIST = ${DRIVERKIT_DATAFILES} 18 | 19 | DRIVERKITINCDIR = $(DRIVERKITSDKHEADERSROOT)/usr/local/include 20 | 21 | INSTALL_MI_DIR = libkern/machine 22 | 23 | EXPORT_MI_LIST = ${DATAFILES} 24 | 25 | EXPORT_MI_DIR = libkern/machine 26 | 27 | include $(MakeInc_rule) 28 | include $(MakeInc_dir) 29 | -------------------------------------------------------------------------------- /tests/launchd_plists/com.apple.xnu.test.task_create_suid_cred.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Label 6 | com.apple.xnu.test.task_create_suid_cred 7 | MachServices 8 | 9 | com.apple.xnu.test.task_create_suid_cred 10 | 11 | 12 | ThrottleInterval 13 | 1 14 | UserName 15 | root 16 | ProcessType 17 | Adaptive 18 | EnvironmentVariables 19 | 20 | MallocNanoZone 21 | 1 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /tests/mach_timebase_info.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | #include 4 | 5 | T_GLOBAL_META(T_META_RUN_CONCURRENTLY(true)); 6 | 7 | extern kern_return_t mach_timebase_info_trap(mach_timebase_info_t info); 8 | 9 | T_DECL(mach_timebase_info, "mach_timebase_info(_trap)", 10 | T_META_ALL_VALID_ARCHS(true), T_META_LTEPHASE(LTE_POSTINIT)) 11 | { 12 | mach_timebase_info_data_t a, b, c; 13 | 14 | T_ASSERT_EQ(KERN_SUCCESS, mach_timebase_info(&a), NULL); 15 | T_ASSERT_EQ(KERN_SUCCESS, mach_timebase_info(&b), NULL); 16 | T_ASSERT_EQ(KERN_SUCCESS, mach_timebase_info_trap(&c), NULL); 17 | 18 | T_EXPECT_EQ(a.numer, b.numer, NULL); 19 | T_EXPECT_EQ(a.denom, b.denom, NULL); 20 | T_EXPECT_EQ(a.numer, c.numer, NULL); 21 | T_EXPECT_EQ(a.denom, c.denom, NULL); 22 | } 23 | -------------------------------------------------------------------------------- /tests/bounded_array_ref_src/operator.bool.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Tests for 3 | // explicit operator bool() const; 4 | // 5 | 6 | #include 7 | #include "test_policy.h" 8 | #include 9 | #include 10 | 11 | struct T { int i; }; 12 | 13 | template 14 | static void 15 | tests() 16 | { 17 | { 18 | test_bounded_array_ref const view; 19 | if (view) { 20 | CHECK(false); 21 | } 22 | CHECK(!view); 23 | } 24 | { 25 | T array[5] = {}; 26 | test_bounded_array_ref const view(array); 27 | if (view) { 28 | } else { 29 | CHECK(false); 30 | } 31 | CHECK(!!view); 32 | } 33 | } 34 | 35 | T_DECL(operator_bool, "bounded_array_ref.operator.bool") { 36 | tests(); 37 | tests(); 38 | } 39 | -------------------------------------------------------------------------------- /tests/vm/mixed_pagesize.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int 5 | main(int argc __unused, char **argv __unused) 6 | { 7 | /* 8 | * This test should have been launched with the 4K pagesize flag. 9 | * Verify that the page size globals were set. 10 | */ 11 | if (vm_page_shift != 12) { 12 | fprintf(stderr, "Expected: vm_page_shift == 12. Actual: vm_page_shift == %d\n", vm_page_shift); 13 | return 1; 14 | } 15 | if (vm_page_size != 4096) { 16 | fprintf(stderr, "Expected: vm_page_size == 4096. Actual: vm_page_shift == %zu\n", vm_page_size); 17 | return 1; 18 | } 19 | if (vm_page_mask != 4095) { 20 | fprintf(stderr, "Expected: vm_page_mask == 4095. Actual: vm_page_mask == %zu\n", vm_page_mask); 21 | return 1; 22 | } 23 | return 0; 24 | } 25 | -------------------------------------------------------------------------------- /bsd/conf/Makefile.arm: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | #BEGIN Machine dependent Makefile fragment for arm 3 | ###################################################################### 4 | 5 | # Inline assembly doesn't interact well with LTO 6 | fbt_arm.o_CFLAGS_ADD += $(CFLAGS_NOLTO_FLAG) 7 | 8 | # 9 | # Diagnostic opt-outs. We need to make this list empty. 10 | # 11 | # DO NOT ADD MORE HERE. 12 | # 13 | # -Wno-shorten-64-to-32 14 | kern_mman.o_CFLAGS_ADD += -Wno-shorten-64-to-32 15 | vm_compressor_backing_file.o_CFLAGS_ADD += -Wno-shorten-64-to-32 16 | ###################################################################### 17 | #END Machine dependent Makefile fragment for arm 18 | ###################################################################### 19 | -------------------------------------------------------------------------------- /tests/launchd_plists/com.apple.xnu.test.turnstile_multihop.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | MachServices 6 | 7 | com.apple.xnu.test.turnstile_multihop 8 | 9 | ResetAtClose 10 | 11 | 12 | 13 | ThrottleInterval 14 | 1 15 | UserName 16 | root 17 | ProcessType 18 | Adaptive 19 | EnvironmentVariables 20 | 21 | MallocNanoZone 22 | 1 23 | 24 | LaunchOnlyOnce 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /bsd/netkey/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | keysock.h 11 | 12 | PRIVATE_DATAFILES = \ 13 | key_debug.h keydb.h key_var.h 14 | 15 | PRIVATE_KERNELFILES = \ 16 | key.h 17 | 18 | INSTALL_MI_LIST = ${DATAFILES} 19 | 20 | INSTALL_MI_DIR = netkey 21 | 22 | EXPORT_MI_LIST = ${DATAFILES} 23 | 24 | EXPORT_MI_DIR = netkey 25 | 26 | INSTALL_MI_LCL_LIST = ${PRIVATE_DATAFILES} 27 | 28 | INSTALL_KF_MI_LCL_LIST = ${DATAFILES} ${PRIVATE_DATAFILES} ${PRIVATE_KERNELFILES} 29 | 30 | include $(MakeInc_rule) 31 | include $(MakeInc_dir) 32 | -------------------------------------------------------------------------------- /EXTERNAL_HEADERS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleIdentifier 8 | com.apple.framework.kernel 9 | CFBundleName 10 | Kernel 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | FMWK 15 | CFBundleShortVersionString 16 | ###KERNEL_VERSION_SHORT### 17 | CFBundleVersion 18 | ###KERNEL_VERSION_LONG### 19 | CFBundleSignature 20 | ???? 21 | 22 | 23 | -------------------------------------------------------------------------------- /EXTERNAL_HEADERS/architecture/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | INSTINC_SUBDIRS = 10 | 11 | INSTINC_SUBDIRS_X86_64 = \ 12 | i386 13 | 14 | INSTINC_SUBDIRS_X86_64H = \ 15 | i386 16 | 17 | INSTINC_SUBDIRS_ARM = \ 18 | arm 19 | 20 | INSTINC_SUBDIRS_ARM64 = \ 21 | arm 22 | 23 | EXPORT_FILES = 24 | 25 | INSTALL_MI_LIST = 26 | 27 | INSTALL_MI_DIR = architecture 28 | 29 | INSTALL_KF_MI_LIST = byte_order.h 30 | 31 | EXPORT_MI_LIST = ${EXPORT_FILES} 32 | 33 | EXPORT_MI_DIR = architecture 34 | 35 | include $(MakeInc_rule) 36 | include $(MakeInc_dir) 37 | -------------------------------------------------------------------------------- /osfmk/man/mach_thread_self.html: -------------------------------------------------------------------------------- 1 |

mach_thread_self

2 |
3 |

4 | System Trap - Returns the thread self port. 5 | 6 |

SYNOPSIS

7 |

8 | #include 9 |

10 | thread_port_t   mach_thread_self( void );
11 | 
12 |

PARAMETERS

13 |

14 | None. 15 |

DESCRIPTION

16 |

17 | The mach_thread_self function returns send rights 18 | to the thread's own kernel port. 19 |

RETURN VALUES

20 |

21 | [thread-self send right] Send rights to the thread's port. 22 |

RELATED INFORMATION

23 |

24 | Functions: 25 | thread_info, 26 | thread_set_special_port. 27 | 28 | -------------------------------------------------------------------------------- /tests/intrusive_shared_ptr_src/ctor.nullptr.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Tests for 3 | // intrusive_shared_ptr(nullptr_t); 4 | // 5 | 6 | #include 7 | #include 8 | #include 9 | #include "test_policy.h" 10 | 11 | struct T { int i; }; 12 | 13 | template 14 | static void 15 | tests() 16 | { 17 | { 18 | libkern::intrusive_shared_ptr ptr = nullptr; 19 | CHECK(ptr.get() == nullptr); 20 | } 21 | { 22 | libkern::intrusive_shared_ptr ptr{nullptr}; 23 | CHECK(ptr.get() == nullptr); 24 | } 25 | { 26 | libkern::intrusive_shared_ptr ptr(nullptr); 27 | CHECK(ptr.get() == nullptr); 28 | } 29 | } 30 | 31 | T_DECL(ctor_nullptr, "intrusive_shared_ptr.ctor.nullptr") { 32 | tests(); 33 | } 34 | -------------------------------------------------------------------------------- /bsd/man/man9/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | copy.9 \ 11 | copyin.9 \ 12 | copyinstr.9 \ 13 | copyout.9 \ 14 | copystr.9 \ 15 | fetch.9 \ 16 | fubyte.9 \ 17 | fuibyte.9 \ 18 | fuiword.9 \ 19 | fulong.9 \ 20 | fuulong.9 \ 21 | fuword.9 \ 22 | store.9 \ 23 | style.9 \ 24 | subyte.9 \ 25 | suibyte.9 \ 26 | suiword.9 \ 27 | sulong.9 \ 28 | suulong.9 \ 29 | suword.9 \ 30 | intro.9 31 | 32 | INSTALL_MAN_LIST = ${DATAFILES} 33 | 34 | INSTALL_MAN_DIR = man9 35 | 36 | include $(MakeInc_rule) 37 | include $(MakeInc_dir) 38 | -------------------------------------------------------------------------------- /iokit/IOKit/rtc/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | IOKIT_FRAMEDIR = $(FRAMEDIR)/IOKit.framework/Versions/A 7 | INCDIR = $(IOKIT_FRAMEDIR)/Headers 8 | LCLDIR = $(IOKIT_FRAMEDIR)/PrivateHeaders 9 | 10 | include $(MakeInc_cmd) 11 | include $(MakeInc_def) 12 | 13 | MI_DIR = rtc 14 | NOT_EXPORT_HEADERS = 15 | 16 | ALL_HEADERS = $(notdir $(wildcard $(SOURCE)*.h)) 17 | 18 | INSTALL_MI_LIST = 19 | INSTALL_MI_LCL_LIST = 20 | INSTALL_MI_DIR = $(MI_DIR) 21 | 22 | EXPORT_MI_LIST = $(filter-out $(NOT_EXPORT_HEADERS), $(ALL_HEADERS)) 23 | EXPORT_MI_DIR = IOKit/$(MI_DIR) 24 | 25 | include $(MakeInc_rule) 26 | include $(MakeInc_dir) 27 | -------------------------------------------------------------------------------- /libkdd/kdd.frameworkTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | $(DEVELOPMENT_LANGUAGE) 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /tools/lldbmacros/routedefines.py: -------------------------------------------------------------------------------- 1 | RTF_UP = 0x1 2 | RTF_GATEWAY = 0x2 3 | RTF_HOST = 0x4 4 | RTF_REJECT = 0x8 5 | RTF_DYNAMIC = 0x10 6 | RTF_MODIFIED = 0x20 7 | RTF_DONE = 0x40 8 | RTF_DELCLONE = 0x80 9 | RTF_CLONING = 0x100 10 | RTF_XRESOLVE = 0x200 11 | RTF_LLINFO = 0x400 12 | RTF_STATIC = 0x800 13 | RTF_BLACKHOLE = 0x1000 14 | RTF_PROTO2 = 0x4000 15 | RTF_PROTO1 = 0x8000 16 | RTF_PRCLONING = 0x10000 17 | RTF_WASCLONED = 0x20000 18 | RTF_PROTO3 = 0x40000 19 | RTF_PINNED = 0x100000 20 | RTF_LOCAL = 0x200000 21 | RTF_BROADCAST = 0x400000 22 | RTF_MULTICAST = 0x800000 23 | RTF_IFSCOPE = 0x1000000 24 | RTF_CONDEMNED = 0x2000000 25 | RTF_IFREF = 0x4000000 26 | RTF_PROXY = 0x8000000 27 | RTF_ROUTER = 0x10000000 28 | -------------------------------------------------------------------------------- /iokit/IOKit/nvram/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | IOKIT_FRAMEDIR = $(FRAMEDIR)/IOKit.framework/Versions/A 7 | INCDIR = $(IOKIT_FRAMEDIR)/Headers 8 | LCLDIR = $(IOKIT_FRAMEDIR)/PrivateHeaders 9 | 10 | include $(MakeInc_cmd) 11 | include $(MakeInc_def) 12 | 13 | MI_DIR = nvram 14 | NOT_EXPORT_HEADERS = 15 | 16 | ALL_HEADERS = $(notdir $(wildcard $(SOURCE)*.h)) 17 | 18 | INSTALL_MI_LIST = 19 | INSTALL_MI_LCL_LIST = 20 | INSTALL_MI_DIR = $(MI_DIR) 21 | 22 | EXPORT_MI_LIST = $(filter-out $(NOT_EXPORT_HEADERS), $(ALL_HEADERS)) 23 | EXPORT_MI_DIR = IOKit/$(MI_DIR) 24 | 25 | include $(MakeInc_rule) 26 | include $(MakeInc_dir) 27 | -------------------------------------------------------------------------------- /iokit/IOKit/power/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | IOKIT_FRAMEDIR = $(FRAMEDIR)/IOKit.framework/Versions/A 7 | INCDIR = $(IOKIT_FRAMEDIR)/Headers 8 | LCLDIR = $(IOKIT_FRAMEDIR)/PrivateHeaders 9 | 10 | include $(MakeInc_cmd) 11 | include $(MakeInc_def) 12 | 13 | MI_DIR = power 14 | NOT_EXPORT_HEADERS = 15 | 16 | ALL_HEADERS = $(notdir $(wildcard $(SOURCE)*.h)) 17 | 18 | INSTALL_MI_LIST = 19 | INSTALL_MI_LCL_LIST = 20 | INSTALL_MI_DIR = $(MI_DIR) 21 | 22 | EXPORT_MI_LIST = $(filter-out $(NOT_EXPORT_HEADERS), $(ALL_HEADERS)) 23 | EXPORT_MI_DIR = IOKit/$(MI_DIR) 24 | 25 | include $(MakeInc_rule) 26 | include $(MakeInc_dir) 27 | -------------------------------------------------------------------------------- /libkern/libkern/i386/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | DATAFILES = \ 10 | OSByteOrder.h \ 11 | _OSByteOrder.h 12 | 13 | DRIVERKIT_DATAFILES = \ 14 | OSByteOrder.h \ 15 | _OSByteOrder.h 16 | 17 | INSTALL_MD_LIST = ${DATAFILES} 18 | 19 | INSTALL_DRIVERKIT_MD_LIST = ${DRIVERKIT_DATAFILES} 20 | 21 | DRIVERKITINCDIR = $(DRIVERKITSDKHEADERSROOT)/usr/local/include 22 | 23 | INSTALL_MD_DIR = libkern/i386 24 | 25 | EXPORT_MD_LIST = ${DATAFILES} 26 | 27 | EXPORT_MD_DIR = libkern/i386 28 | 29 | include $(MakeInc_rule) 30 | include $(MakeInc_dir) 31 | -------------------------------------------------------------------------------- /tests/bounded_array_ref_src/operator.subscript.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Tests for 3 | // T& operator[](ptrdiff_t n) const; 4 | // 5 | 6 | #include 7 | #include "test_policy.h" 8 | #include 9 | #include 10 | 11 | struct T { int i; }; 12 | inline bool 13 | operator==(T const& a, T const& b) 14 | { 15 | return a.i == b.i; 16 | }; 17 | 18 | template 19 | static void 20 | tests() 21 | { 22 | { 23 | T array[5] = {T{0}, T{1}, T{2}, T{3}, T{4}}; 24 | test_bounded_array_ref view(array); 25 | CHECK(view[0] == T{0}); 26 | CHECK(view[1] == T{1}); 27 | CHECK(view[2] == T{2}); 28 | CHECK(view[3] == T{3}); 29 | CHECK(view[4] == T{4}); 30 | } 31 | } 32 | 33 | T_DECL(operator_subscript, "bounded_array_ref.operator.subscript") { 34 | tests(); 35 | } 36 | -------------------------------------------------------------------------------- /osfmk/man/mach_host_self.html: -------------------------------------------------------------------------------- 1 |

mach_host_self

2 |
3 |

4 | System Trap - Returns the host self port 5 |

SYNOPSIS

6 |
 7 | host_name_port_t   mach_host_self( void );
 8 | 
9 |

PARAMETERS

10 |

11 | None. 12 | 13 |

DESCRIPTION

14 |

15 | The mach_host_self function 16 | returns send rights to the task's host self port. 17 | By default, this is the name port for the current host 18 | but can be a different value if so set. 19 | 20 |

RETURN VALUES

21 |

22 | [host-self send right] Send rights to the host's name port. 23 | 24 |

RELATED INFORMATION

25 |

26 | Functions: 27 | host_info, 28 | task_set_special_port. 29 | -------------------------------------------------------------------------------- /tools/tests/perf_index/PerfIndex_COPS_Module/PITest.h: -------------------------------------------------------------------------------- 1 | // 2 | // PITest.h 3 | // PerfIndex 4 | // 5 | // Created by Mark Hamilton on 8/21/13. 6 | // 7 | // 8 | 9 | #import 10 | #import "PerfIndex.h" 11 | 12 | @interface PITest : NSObject 13 | { 14 | int (*setup_func)(int, long long, int, void**); 15 | int (*execute_func)(int, int, long long, int, void**); 16 | void (*cleanup_func)(int, long long); 17 | 18 | long long length; 19 | int numThreads; 20 | int readyThreadCount; 21 | int testArgc; 22 | void** testArgv; 23 | pthread_mutex_t readyThreadCountLock; 24 | pthread_cond_t threadsReadyCvar; 25 | pthread_cond_t startCvar; 26 | pthread_t* threads; 27 | } 28 | 29 | @property NSString* testName; 30 | 31 | - (BOOL)setup; 32 | - (BOOL)execute; 33 | - (void)cleanup; 34 | 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /bsd/arm/_param.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2006-2007 Apple Inc. All rights reserved. 3 | */ 4 | 5 | #ifndef _ARM__PARAM_H_ 6 | #define _ARM__PARAM_H_ 7 | 8 | #include 9 | 10 | /* 11 | * Round p (pointer or byte index) up to a correctly-aligned value for all 12 | * data types (int, long, ...). The result is unsigned int and must be 13 | * cast to any desired pointer type. 14 | */ 15 | #define __DARWIN_ALIGNBYTES (sizeof(__darwin_size_t) - 1) 16 | #define __DARWIN_ALIGN(p) ((__darwin_size_t)((__darwin_size_t)(p) + __DARWIN_ALIGNBYTES) &~ __DARWIN_ALIGNBYTES) 17 | 18 | #define __DARWIN_ALIGNBYTES32 (sizeof(__uint32_t) - 1) 19 | #define __DARWIN_ALIGN32(p) ((__darwin_size_t)((__darwin_size_t)(p) + __DARWIN_ALIGNBYTES32) &~ __DARWIN_ALIGNBYTES32) 20 | 21 | 22 | #endif /* _ARM__PARAM_H_ */ 23 | -------------------------------------------------------------------------------- /iokit/IOKit/system_management/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | IOKIT_FRAMEDIR = $(FRAMEDIR)/IOKit.framework/Versions/A 7 | INCDIR = $(IOKIT_FRAMEDIR)/Headers 8 | LCLDIR = $(IOKIT_FRAMEDIR)/PrivateHeaders 9 | 10 | include $(MakeInc_cmd) 11 | include $(MakeInc_def) 12 | 13 | MI_DIR = system_management 14 | NOT_EXPORT_HEADERS = 15 | 16 | ALL_HEADERS = $(notdir $(wildcard $(SOURCE)*.h)) 17 | 18 | INSTALL_MI_LIST = 19 | INSTALL_MI_LCL_LIST = 20 | INSTALL_MI_DIR = $(MI_DIR) 21 | 22 | EXPORT_MI_LIST = $(filter-out $(NOT_EXPORT_HEADERS), $(ALL_HEADERS)) 23 | EXPORT_MI_DIR = IOKit/$(MI_DIR) 24 | 25 | include $(MakeInc_rule) 26 | include $(MakeInc_dir) 27 | -------------------------------------------------------------------------------- /osfmk/kperf/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | EXPORT_ONLY_FILES = \ 10 | action.h \ 11 | context.h \ 12 | kperf.h \ 13 | kperfbsd.h \ 14 | kptimer.h \ 15 | kdebug_trigger.h \ 16 | lazy.h \ 17 | pet.h 18 | 19 | EXPORT_MI_DIR = kperf 20 | 21 | # Export our headers 22 | EXPORT_MI_LIST = ${EXPORT_ONLY_FILES} 23 | 24 | INSTALL_MI_DIR = kperf 25 | 26 | INSTALL_MI_LIST = $(empty) 27 | 28 | # Don't install in non-local, though 29 | INSTALL_KF_MI_LIST = $(empty) 30 | 31 | include $(MakeInc_rule) 32 | include $(MakeInc_dir) 33 | -------------------------------------------------------------------------------- /libkdd/tests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /tools/lldbmacros/plugins/iosspeedtracer.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | TMPFILE=$(mktemp /var/tmp/iosspeedtracer-$$-XXXXXX) 4 | TMPFILE2=$(mktemp /var/tmp/iosspeedtracer2-$$-XXXXXX) 5 | trap 'rm -f $TMPFILE $TMPFILE2' 0 6 | 7 | # save stack log for curl 8 | cat > $TMPFILE 9 | 10 | if security find-internet-password -s ios.apple.com > $TMPFILE2; then 11 | USER=$(sed -n -E -e 's/"acct"="([^"]*)"/\1/p' < $TMPFILE2) 12 | PW=$(security find-internet-password -a $USER -s ios.apple.com -w) 13 | if [[ $? = 0 ]]; then 14 | curl -u $USER:$PW -X POST -H "Content-Type: text/plain" -H "Accept: text/plain" --data-binary @${TMPFILE} https://ios.apple.com/speedtracer/services/logs 15 | else 16 | echo "security failed -- try security unlock-keychain" 17 | fi 18 | else 19 | echo "no internet password keychain item for ios.apple.com?!" 20 | fi 21 | -------------------------------------------------------------------------------- /tools/trace/ktruss.lua: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/recon 2 | 3 | local ktrace = require 'ktrace' 4 | 5 | if not arg[1] or arg[1] == '-h' then 6 | print[[ 7 | usage: ktruss [ ...] 8 | 9 | Use Kernel TRace to print User Space Syscalls (ktruss).]] 10 | os.exit(arg[1] == nil) 11 | end 12 | 13 | local sess = ktrace.Session.new() 14 | 15 | for i = 1, #arg do 16 | sess:add_callback_pair('BSC_' .. arg[i], function (start, finish) 17 | print(('%s[%d]: %s(0x%x, 0x%x, 0x%x, 0x%x) -> %d'):format( 18 | sess:procname_for_threadid(start.threadid), 19 | sess:pid_for_threadid(start.threadid), arg[1], start[1], start[2], 20 | start[3], start[4], finish[2])) 21 | end) 22 | end 23 | 24 | local ok, err = sess:start() 25 | if not ok then 26 | io.stderr:write('tracing failed: ', err, '\n') 27 | os.exit(1) 28 | end 29 | -------------------------------------------------------------------------------- /tests/sysctl_system_version.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | T_DECL(sysctl_osreleasetype_nowrite, 5 | "ensure the osreleasetype sysctl is not writeable by normal processes") 6 | { 7 | char nice_try[32] = "FactoryToAvoidSandbox!"; 8 | int ret = sysctlbyname("kern.osreleasetype", NULL, NULL, nice_try, 9 | sizeof(nice_try)); 10 | T_ASSERT_POSIX_FAILURE(ret, EPERM, "try to set kern.osreleasetype sysctl"); 11 | } 12 | 13 | T_DECL(sysctl_osreleasetype_exists, "ensure the osreleasetype sysctl exists") 14 | { 15 | char release_type[64] = ""; 16 | size_t release_type_size = sizeof(release_type); 17 | int ret = sysctlbyname("kern.osreleasetype", release_type, 18 | &release_type_size, NULL, 0); 19 | T_ASSERT_POSIX_SUCCESS(ret, "kern.osreleasetype sysctl"); 20 | T_LOG("kern.osreleasetype = %s", release_type); 21 | } 22 | -------------------------------------------------------------------------------- /osfmk/mach/arm/Makefile: -------------------------------------------------------------------------------- 1 | export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2 | export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3 | export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4 | export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 | 6 | include $(MakeInc_cmd) 7 | include $(MakeInc_def) 8 | 9 | VPATH := $(VPATH):$(SOURCE)/../../arm 10 | 11 | DATAFILES = \ 12 | boolean.h exception.h kern_return.h ndr_def.h \ 13 | processor_info.h rpc.h thread_state.h thread_status.h \ 14 | traps.h vm_param.h vm_types.h \ 15 | syscall_sw.h _structs.h sdt_isa.h 16 | 17 | INSTALL_MD_LIST = ${DATAFILES} 18 | 19 | INSTALL_MD_GEN_LIST = \ 20 | asm.h 21 | 22 | INSTALL_MD_DIR = mach/arm 23 | 24 | EXPORT_MD_LIST = ${DATAFILES} 25 | 26 | EXPORT_MD_GEN_LIST = \ 27 | asm.h 28 | 29 | EXPORT_MD_DIR = mach/arm 30 | 31 | include $(MakeInc_rule) 32 | include $(MakeInc_dir) 33 | --------------------------------------------------------------------------------