authorgravatar for mail@linusgroh.deLinus Groh <mail@linusgroh.de> 2025-11-04 21:40:21+00:00
committergravatar for mail@linusgroh.deLinus Groh <mail@linusgroh.de> 2025-11-04 21:40:21+00:00
logabca5bd588202d6ec9d30227072b08e295447c61
tree1933a566f707c07f309760068c5243f18d6f7fa4
parent459f3b7edef14da7d9ec29a77329601469f08b36

libc: Update macOS headers to SDK 26.1


18 files changed, 282 insertions(+), 194 deletions(-)

lib/libc/darwin/SDKSettings.json+1-1
......@@ -1 +1 @@
1{"MinimalDisplayName":"26.0"}
1{"MinimalDisplayName":"26.1"}
lib/libc/darwin/libSystem.tbd+82-79
......@@ -400,7 +400,7 @@ tbd-version: 4
400400targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
401401 arm64e-macos, arm64e-maccatalyst ]
402402install-name: '/usr/lib/system/libcorecrypto.dylib'
403current-version: 1922.0.25
403current-version: 1922.40.14
404404parent-umbrella:
405405 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
406406 arm64e-macos, arm64e-maccatalyst ]
......@@ -417,21 +417,21 @@ exports:
417417 _ccsha256_vng_intel_SupplementalSSE3_di ]
418418 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
419419 arm64e-macos, arm64e-maccatalyst ]
420 symbols: [ _CCEC_FAULT_CANARY, _CCRSA_PKCS1_FAULT_CANARY, _CCRSA_PSS_FAULT_CANARY,
421 _CCSS_PRIME_P192, _CCSS_PRIME_P224, _CCSS_PRIME_P256, _CCSS_PRIME_P384,
422 _CCSS_PRIME_P521, _cc_abort, _cc_atfork_child, _cc_atfork_parent,
423 _cc_atfork_prepare, _cc_clear, _cc_cmp_safe, _cc_impl_name,
424 _cc_try_abort, _cc_try_abort_if, _ccaes_cbc_decrypt_mode,
425 _ccaes_cbc_encrypt_mode, _ccaes_ccm_decrypt_mode, _ccaes_ccm_encrypt_mode,
426 _ccaes_cfb8_decrypt_mode, _ccaes_cfb8_encrypt_mode, _ccaes_cfb_decrypt_mode,
427 _ccaes_cfb_encrypt_mode, _ccaes_ctr_crypt_mode, _ccaes_ecb_decrypt_mode,
428 _ccaes_ecb_encrypt_mode, _ccaes_gcm_decrypt_mode, _ccaes_gcm_encrypt_mode,
429 _ccaes_gladman_cbc_decrypt_mode, _ccaes_gladman_cbc_encrypt_mode,
430 _ccaes_ltc_ecb_decrypt_mode, _ccaes_ltc_ecb_encrypt_mode,
431 _ccaes_ofb_crypt_mode, _ccaes_siv_decrypt_mode, _ccaes_siv_encrypt_mode,
432 _ccaes_siv_hmac_sha256_decrypt_mode, _ccaes_siv_hmac_sha256_encrypt_mode,
433 _ccaes_unwind, _ccaes_xts_decrypt_mode, _ccaes_xts_encrypt_mode,
434 _ccansikdf_x963, _ccapsic_client_check_intersect_response,
420 symbols: [ _CCEC_FAULT_CANARY, _CCMLDSA_FAULT_CANARY, _CCRSA_PKCS1_FAULT_CANARY,
421 _CCRSA_PSS_FAULT_CANARY, _CCSS_PRIME_P192, _CCSS_PRIME_P224,
422 _CCSS_PRIME_P256, _CCSS_PRIME_P384, _CCSS_PRIME_P521, _cc_abort,
423 _cc_atfork_child, _cc_atfork_parent, _cc_atfork_prepare, _cc_clear,
424 _cc_cmp_safe, _cc_impl_name, _cc_try_abort, _cc_try_abort_if,
425 _ccaes_cbc_decrypt_mode, _ccaes_cbc_encrypt_mode, _ccaes_ccm_decrypt_mode,
426 _ccaes_ccm_encrypt_mode, _ccaes_cfb8_decrypt_mode, _ccaes_cfb8_encrypt_mode,
427 _ccaes_cfb_decrypt_mode, _ccaes_cfb_encrypt_mode, _ccaes_ctr_crypt_mode,
428 _ccaes_ecb_decrypt_mode, _ccaes_ecb_encrypt_mode, _ccaes_gcm_decrypt_mode,
429 _ccaes_gcm_encrypt_mode, _ccaes_gladman_cbc_decrypt_mode,
430 _ccaes_gladman_cbc_encrypt_mode, _ccaes_ltc_ecb_decrypt_mode,
431 _ccaes_ltc_ecb_encrypt_mode, _ccaes_ofb_crypt_mode, _ccaes_siv_decrypt_mode,
432 _ccaes_siv_encrypt_mode, _ccaes_siv_hmac_sha256_decrypt_mode,
433 _ccaes_siv_hmac_sha256_encrypt_mode, _ccaes_unwind, _ccaes_xts_decrypt_mode,
434 _ccaes_xts_encrypt_mode, _ccansikdf_x963, _ccapsic_client_check_intersect_response,
435435 _ccapsic_client_generate_match_response, _ccapsic_client_init,
436436 _ccapsic_client_state_sizeof, _ccapsic_server_determine_intersection,
437437 _ccapsic_server_encode_element, _ccapsic_server_init, _ccapsic_server_state_sizeof,
......@@ -650,19 +650,20 @@ exports:
650650 _ccmldsa_sign_with_context, _ccmldsa_signature_nbytes_ctx,
651651 _ccmldsa_signature_nbytes_params, _ccmldsa_sizeof_full_ctx,
652652 _ccmldsa_sizeof_pub_ctx, _ccmldsa_verify, _ccmldsa_verify_prehashed,
653 _ccmldsa_verify_with_context, _ccmode_factory_cbc_decrypt,
654 _ccmode_factory_cbc_encrypt, _ccmode_factory_ccm_decrypt,
655 _ccmode_factory_ccm_encrypt, _ccmode_factory_cfb8_decrypt,
656 _ccmode_factory_cfb8_encrypt, _ccmode_factory_cfb_decrypt,
657 _ccmode_factory_cfb_encrypt, _ccmode_factory_ctr_crypt, _ccmode_factory_gcm_decrypt,
658 _ccmode_factory_gcm_encrypt, _ccmode_factory_ofb_crypt, _ccmode_factory_siv_decrypt,
659 _ccmode_factory_siv_encrypt, _ccmode_factory_xts_decrypt,
660 _ccmode_factory_xts_encrypt, _ccn_add, _ccn_add1, _ccn_bitlen,
661 _ccn_cmp, _ccn_cmpn, _ccn_lprint, _ccn_print, _ccn_read_uint,
662 _ccn_set_bit, _ccn_seti, _ccn_sub, _ccn_swap, _ccn_write_int,
663 _ccn_write_int_size, _ccn_write_uint, _ccn_write_uint_padded,
664 _ccn_write_uint_padded_ct, _ccn_write_uint_size, _ccn_xor,
665 _ccn_zero, _ccnistkdf_ctr_cmac, _ccnistkdf_ctr_cmac_fixed,
653 _ccmldsa_verify_prehashed_with_canary, _ccmldsa_verify_with_canary,
654 _ccmldsa_verify_with_context, _ccmldsa_verify_with_context_and_canary,
655 _ccmode_factory_cbc_decrypt, _ccmode_factory_cbc_encrypt,
656 _ccmode_factory_ccm_decrypt, _ccmode_factory_ccm_encrypt,
657 _ccmode_factory_cfb8_decrypt, _ccmode_factory_cfb8_encrypt,
658 _ccmode_factory_cfb_decrypt, _ccmode_factory_cfb_encrypt,
659 _ccmode_factory_ctr_crypt, _ccmode_factory_gcm_decrypt, _ccmode_factory_gcm_encrypt,
660 _ccmode_factory_ofb_crypt, _ccmode_factory_siv_decrypt, _ccmode_factory_siv_encrypt,
661 _ccmode_factory_xts_decrypt, _ccmode_factory_xts_encrypt,
662 _ccn_add, _ccn_add1, _ccn_bitlen, _ccn_cmp, _ccn_cmpn, _ccn_lprint,
663 _ccn_print, _ccn_read_uint, _ccn_set_bit, _ccn_seti, _ccn_sub,
664 _ccn_swap, _ccn_write_int, _ccn_write_int_size, _ccn_write_uint,
665 _ccn_write_uint_padded, _ccn_write_uint_padded_ct, _ccn_write_uint_size,
666 _ccn_xor, _ccn_zero, _ccnistkdf_ctr_cmac, _ccnistkdf_ctr_cmac_fixed,
666667 _ccnistkdf_ctr_hmac, _ccnistkdf_ctr_hmac_fixed, _ccofb_block_size,
667668 _ccofb_context_size, _ccofb_init, _ccofb_one_shot, _ccofb_update,
668669 _ccoid_equal, _ccoid_payload, _ccoid_size, _ccpad_cts1_decrypt,
......@@ -1116,7 +1117,7 @@ tbd-version: 4
11161117targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
11171118 arm64e-macos, arm64e-maccatalyst ]
11181119install-name: '/usr/lib/system/libquarantine.dylib'
1119current-version: 196.0.1
1120current-version: 196.40.3
11201121parent-umbrella:
11211122 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
11221123 arm64e-macos, arm64e-maccatalyst ]
......@@ -1281,7 +1282,7 @@ tbd-version: 4
12811282targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
12821283 arm64e-macos, arm64e-maccatalyst ]
12831284install-name: '/usr/lib/system/libsystem_c.dylib'
1284current-version: 1725.0.11
1285current-version: 1725.40.4
12851286parent-umbrella:
12861287 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
12871288 arm64e-macos, arm64e-maccatalyst ]
......@@ -1578,7 +1579,7 @@ tbd-version: 4
15781579targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
15791580 arm64e-macos, arm64e-maccatalyst ]
15801581install-name: '/usr/lib/system/libsystem_collections.dylib'
1581current-version: 1725.0.11
1582current-version: 1725.40.4
15821583parent-umbrella:
15831584 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
15841585 arm64e-macos, arm64e-maccatalyst ]
......@@ -1608,7 +1609,7 @@ tbd-version: 4
16081609targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
16091610 arm64e-macos, arm64e-maccatalyst ]
16101611install-name: '/usr/lib/system/libsystem_configuration.dylib'
1611current-version: 1385.0.7
1612current-version: 1385.40.9
16121613parent-umbrella:
16131614 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
16141615 arm64e-macos, arm64e-maccatalyst ]
......@@ -1643,8 +1644,8 @@ exports:
16431644 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
16441645 arm64e-macos, arm64e-maccatalyst ]
16451646 symbols: [ _CMCONTAINERSEAM_DEFAULT, _CMDISPATCHSEAM_DEFAULT, _CMFSSEAM_DEFAULT,
1646 _CMNOTIFYSEAM_DEFAULT, _CMPWDSEAM_DEFAULT, _CMSANDBOXSEAM_DEFAULT,
1647 _CONTAINER_CLASS_NAMES, _CONTAINER_NOTIFY_GENERATION_INITIAL,
1647 _CMNOTIFYSEAM_DEFAULT, _CMPWDSEAM_DEFAULT, _CMQUARANTINESEAM_DEFAULT,
1648 _CMSANDBOXSEAM_DEFAULT, _CONTAINER_CLASS_NAMES, _CONTAINER_NOTIFY_GENERATION_INITIAL,
16481649 _CONTAINER_NOTIFY_GENERATION_INVALID, _CONTAINER_NOTIFY_USER_INVALIDATED,
16491650 _CONTAINER_PERSONA_CURRENT, _CONTAINER_PERSONA_PRIMARY, __container_init,
16501651 __container_notify_copy_notify_name, __container_query_get_next_result_sync,
......@@ -1658,17 +1659,17 @@ exports:
16581659 _container_acquire_sandbox_extension, _container_audit_token_copy_codesign_hash,
16591660 _container_audit_token_copy_codesign_identifier, _container_audit_token_copy_codesign_team_identifier,
16601661 _container_audit_token_copy_entitlement, _container_audit_token_copy_executable_name,
1661 _container_audit_token_for_pid, _container_audit_token_get_codesign_status,
1662 _container_audit_token_get_egid, _container_audit_token_get_euid,
1663 _container_audit_token_get_pid, _container_audit_token_get_platform,
1664 _container_audit_token_is_valid, _container_authorize, _container_authorize_container,
1665 _container_authorize_container_for_self, _container_authorize_get_result_description,
1666 _container_base64_decode, _container_base64_decode_string,
1667 _container_base64_encode, _container_base64_encode_string,
1668 _container_bundle_copy_data_container, _container_bundle_copy_data_container_path,
1669 _container_class_for_each_normalized_class, _container_class_normalized,
1670 _container_class_supports_data_subdirectory, _container_class_supports_randomized_path,
1671 _container_class_supports_randomized_path_on_current_platform,
1662 _container_audit_token_copy_executable_name_with_pid, _container_audit_token_for_pid,
1663 _container_audit_token_get_codesign_status, _container_audit_token_get_egid,
1664 _container_audit_token_get_euid, _container_audit_token_get_pid,
1665 _container_audit_token_get_platform, _container_audit_token_is_valid,
1666 _container_authorize, _container_authorize_container, _container_authorize_container_for_self,
1667 _container_authorize_get_result_description, _container_base64_decode,
1668 _container_base64_decode_string, _container_base64_encode,
1669 _container_base64_encode_string, _container_bundle_copy_data_container,
1670 _container_bundle_copy_data_container_path, _container_class_for_each_normalized_class,
1671 _container_class_normalized, _container_class_supports_data_subdirectory,
1672 _container_class_supports_randomized_path, _container_class_supports_randomized_path_on_current_platform,
16721673 _container_client_copy_decoded_from_xpc_object, _container_client_copy_encoded_xpc_object,
16731674 _container_client_copy_entitlement, _container_client_create_from_audit_token,
16741675 _container_client_get_audit_token, _container_client_get_codesign_identifier,
......@@ -1680,7 +1681,7 @@ exports:
16801681 _container_client_is_signature_valid, _container_client_is_signed,
16811682 _container_client_is_test_client, _container_codesign_copy_cdhash,
16821683 _container_codesign_copy_cs_identity, _container_codesign_copy_cs_team_identifier,
1683 _container_codesign_copy_current_identifier, _container_codesign_get_self_audit_token,
1684 _container_codesign_get_current_identifier, _container_codesign_get_self_audit_token,
16841685 _container_codesign_get_status, _container_copy_client, _container_copy_code_signing_info_for_identifier,
16851686 _container_copy_from_path, _container_copy_info, _container_copy_info_value_for_key,
16861687 _container_copy_object, _container_copy_path, _container_copy_persona_unique_strings,
......@@ -1794,7 +1795,8 @@ exports:
17941795 _container_seam_dispatch_set_common, _container_seam_fs_ensure_lazy_loaded,
17951796 _container_seam_fs_reset, _container_seam_fs_set_common, _container_seam_notify_reset,
17961797 _container_seam_notify_set_common, _container_seam_pwd_reset,
1797 _container_seam_pwd_set_common, _container_seam_sandbox_reset,
1798 _container_seam_pwd_set_common, _container_seam_quarantine_reset,
1799 _container_seam_quarantine_set_common, _container_seam_sandbox_reset,
17981800 _container_seam_sandbox_set_common, _container_serialize_copy_deserialized_reference,
17991801 _container_serialize_copy_serialized_reference, _container_set_code_signing_info_for_identifier,
18001802 _container_set_data_protection_for_current_user, _container_set_info_value,
......@@ -1831,7 +1833,7 @@ exports:
18311833 _container_xpc_set_outgoing_message_send_block, _container_xpc_set_use_shared_connection,
18321834 _container_xpc_shared_copy_connection, _gCMContainerSeam,
18331835 _gCMDispatchSeam, _gCMFSSeam, _gCMNotifySeam, _gCMPWDSeam,
1834 _gCMSandboxSeam ]
1836 _gCMQuarantineSeam, _gCMSandboxSeam ]
18351837 - targets: [ x86_64-maccatalyst, arm64-maccatalyst, arm64e-maccatalyst ]
18361838 symbols: [ _CONTAINER_CURRENT_MOBILE_UID, _CONTAINER_INSTALLATION_UID,
18371839 _CONTAINER_SYSTEM_UID, _container_create_or_lookup, _container_create_or_lookup_app_group_paths,
......@@ -1925,7 +1927,7 @@ tbd-version: 4
19251927targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
19261928 arm64e-macos, arm64e-maccatalyst ]
19271929install-name: '/usr/lib/system/libsystem_dnssd.dylib'
1928current-version: 2881.0.25
1930current-version: 2881.40.18
19291931parent-umbrella:
19301932 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
19311933 arm64e-macos, arm64e-maccatalyst ]
......@@ -1962,7 +1964,7 @@ exports:
19621964tbd-version: 4
19631965targets: [ x86_64-macos, arm64-macos, arm64e-macos ]
19641966install-name: '/usr/lib/system/libsystem_eligibility.dylib'
1965current-version: 286
1967current-version: 286.40.9
19661968parent-umbrella:
19671969 - targets: [ x86_64-macos, arm64-macos, arm64e-macos ]
19681970 umbrella: System
......@@ -2118,7 +2120,7 @@ tbd-version: 4
21182120targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
21192121 arm64e-macos, arm64e-maccatalyst ]
21202122install-name: '/usr/lib/system/libsystem_kernel.dylib'
2121current-version: 12377.1.9
2123current-version: 12377.41.6
21222124parent-umbrella:
21232125 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
21242126 arm64e-macos, arm64e-maccatalyst ]
......@@ -2254,7 +2256,7 @@ exports:
22542256 _clock_alarm, _clock_alarm_reply, _clock_get_attributes, _clock_get_time,
22552257 _clock_set_attributes, _clock_set_time, _clock_sleep, _clock_sleep_trap,
22562258 _clonefile, _clonefileat, _close, '_close$NOCANCEL', _coalition_create,
2257 _coalition_info_debug_info, _coalition_info_resource_usage,
2259 _coalition_info_debug_info, _coalition_info_pid_list, _coalition_info_resource_usage,
22582260 _coalition_info_set_efficiency, _coalition_info_set_name,
22592261 _coalition_ledger_set_logical_writes_limit, _coalition_policy_get,
22602262 _coalition_policy_set, _coalition_reap, _coalition_terminate,
......@@ -2636,7 +2638,7 @@ tbd-version: 4
26362638targets: [ x86_64-macos, x86_64-maccatalyst, x86_64h-macos, x86_64h-maccatalyst,
26372639 arm64-macos, arm64-maccatalyst, arm64e-macos, arm64e-maccatalyst ]
26382640install-name: '/usr/lib/system/libsystem_m.dylib'
2639current-version: 3307.0.1
2641current-version: 3309
26402642parent-umbrella:
26412643 - targets: [ x86_64-macos, x86_64-maccatalyst, x86_64h-macos, x86_64h-maccatalyst,
26422644 arm64-macos, arm64-maccatalyst, arm64e-macos, arm64e-maccatalyst ]
......@@ -2858,7 +2860,7 @@ tbd-version: 4
28582860targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
28592861 arm64e-macos, arm64e-maccatalyst ]
28602862install-name: '/usr/lib/system/libsystem_malloc.dylib'
2861current-version: 792.1.1
2863current-version: 792.41.1
28622864parent-umbrella:
28632865 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
28642866 arm64e-macos, arm64e-maccatalyst ]
......@@ -2983,11 +2985,12 @@ exports:
29832985 _ne_session_status_to_string, _ne_session_stop, _ne_session_stop_all_with_plugin_type,
29842986 _ne_session_stop_reason_to_string, _ne_session_type_to_string,
29852987 _ne_session_urlfilter_configs_present, _ne_session_use_as_system_vpn,
2986 _ne_session_vod_evaluate_connection_present, _ne_session_vpn_include_all_networks_configs_present,
2987 _ne_socket_set_attribution, _ne_socket_set_domains, _ne_socket_set_is_app_initiated,
2988 _ne_socket_set_website_attribution, _ne_tracker_build_cache,
2989 _ne_tracker_build_trie, _ne_tracker_check_info_changed, _ne_tracker_check_is_hostname_blocked,
2990 _ne_tracker_check_tcc, _ne_tracker_clear_cache, _ne_tracker_context_can_block_request,
2988 _ne_session_vod_evaluate_connection_present, _ne_session_vpn_configs_present,
2989 _ne_session_vpn_include_all_networks_configs_present, _ne_socket_set_attribution,
2990 _ne_socket_set_domains, _ne_socket_set_is_app_initiated, _ne_socket_set_website_attribution,
2991 _ne_tracker_build_cache, _ne_tracker_build_trie, _ne_tracker_check_info_changed,
2992 _ne_tracker_check_is_hostname_blocked, _ne_tracker_check_tcc,
2993 _ne_tracker_clear_cache, _ne_tracker_context_can_block_request,
29912994 _ne_tracker_context_get_domain, _ne_tracker_context_get_domain_owner,
29922995 _ne_tracker_context_is_from_app_list, _ne_tracker_context_is_from_web_list,
29932996 _ne_tracker_copy_current_stacktrace, _ne_tracker_create_xcode_issue,
......@@ -3024,7 +3027,7 @@ tbd-version: 4
30243027targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
30253028 arm64e-macos, arm64e-maccatalyst ]
30263029install-name: '/usr/lib/system/libsystem_platform.dylib'
3027current-version: 359.1.2
3030current-version: 359.40.3
30283031parent-umbrella:
30293032 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
30303033 arm64e-macos, arm64e-maccatalyst ]
......@@ -3200,7 +3203,7 @@ tbd-version: 4
32003203targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
32013204 arm64e-macos, arm64e-maccatalyst ]
32023205install-name: '/usr/lib/system/libsystem_sandbox.dylib'
3203current-version: 2680.0.50
3206current-version: 2680.41.1
32043207parent-umbrella:
32053208 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
32063209 arm64e-macos, arm64e-maccatalyst ]
......@@ -3321,7 +3324,7 @@ tbd-version: 4
33213324targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
33223325 arm64e-macos, arm64e-maccatalyst ]
33233326install-name: '/usr/lib/system/libsystem_secinit.dylib'
3324current-version: 168.0.3
3327current-version: 168.40.2
33253328parent-umbrella:
33263329 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
33273330 arm64e-macos, arm64e-maccatalyst ]
......@@ -3354,7 +3357,7 @@ tbd-version: 4
33543357targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
33553358 arm64e-macos, arm64e-maccatalyst ]
33563359install-name: '/usr/lib/system/libsystem_trace.dylib'
3357current-version: 1815.0.16
3360current-version: 1815.40.20
33583361parent-umbrella:
33593362 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
33603363 arm64e-macos, arm64e-maccatalyst ]
......@@ -3441,7 +3444,7 @@ exports:
34413444tbd-version: 4
34423445targets: [ x86_64-macos, arm64-macos, arm64e-macos ]
34433446install-name: '/usr/lib/system/libsystem_trial.dylib'
3444current-version: 474
3447current-version: 474.3
34453448parent-umbrella:
34463449 - targets: [ x86_64-macos, arm64-macos, arm64e-macos ]
34473450 umbrella: System
......@@ -3484,7 +3487,7 @@ tbd-version: 4
34843487targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
34853488 arm64e-macos, arm64e-maccatalyst ]
34863489install-name: '/usr/lib/system/libxpc.dylib'
3487current-version: 3089.0.11
3490current-version: 3089.41.2
34883491parent-umbrella:
34893492 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
34903493 arm64e-macos, arm64e-maccatalyst ]
......@@ -3670,10 +3673,10 @@ exports:
36703673 _xpc_binprefs_equal, _xpc_binprefs_init, _xpc_binprefs_is_noop,
36713674 _xpc_binprefs_set_psattr, _xpc_bool_create, _xpc_bool_get_value,
36723675 _xpc_bs_main, _xpc_bundle_copy_info_dictionary, _xpc_bundle_copy_normalized_cryptex_path,
3673 _xpc_bundle_copy_resource_path, _xpc_bundle_copy_services,
3674 _xpc_bundle_create, _xpc_bundle_create_from_origin, _xpc_bundle_create_from_origin_with_string_cache,
3675 _xpc_bundle_create_main, _xpc_bundle_create_with_string_cache,
3676 _xpc_bundle_get_error, _xpc_bundle_get_executable_path, _xpc_bundle_get_info_dictionary,
3676 _xpc_bundle_copy_services, _xpc_bundle_create, _xpc_bundle_create_from_origin,
3677 _xpc_bundle_create_from_origin_with_string_cache, _xpc_bundle_create_main,
3678 _xpc_bundle_create_with_string_cache, _xpc_bundle_get_error,
3679 _xpc_bundle_get_executable_path, _xpc_bundle_get_info_dictionary,
36773680 _xpc_bundle_get_path, _xpc_bundle_get_property, _xpc_bundle_get_xpcservice_dictionary,
36783681 _xpc_bundle_populate, _xpc_bundle_resolve, _xpc_bundle_resolve_on_queue,
36793682 _xpc_bundle_resolve_sync, _xpc_coalition_copy_info, _xpc_coalition_history_pipe_async,
......@@ -3752,15 +3755,15 @@ exports:
37523755 _xpc_event_publisher_set_error_handler, _xpc_event_publisher_set_event,
37533756 _xpc_event_publisher_set_handler, _xpc_event_publisher_set_initial_load_completed_handler_4remoted,
37543757 _xpc_event_publisher_set_subscriber_keepalive, _xpc_event_publisher_set_throttling,
3755 _xpc_event_stream_check_in, _xpc_event_stream_check_in2, _xpc_exit_reason_get_label,
3756 _xpc_extension_type_init, _xpc_fd_create, _xpc_fd_dup, _xpc_file_transfer_cancel,
3757 _xpc_file_transfer_copy_io, _xpc_file_transfer_create_with_fd,
3758 _xpc_file_transfer_create_with_path, _xpc_file_transfer_get_size,
3759 _xpc_file_transfer_get_transfer_id, _xpc_file_transfer_send_finished,
3760 _xpc_file_transfer_set_transport_writing_callbacks, _xpc_file_transfer_write_finished,
3761 _xpc_file_transfer_write_to_fd, _xpc_file_transfer_write_to_path,
3762 _xpc_generate_audit_token, _xpc_get_attachment_endpoint, _xpc_get_class4NSXPC,
3763 _xpc_get_event_name, _xpc_get_instance, _xpc_get_service_identifier_for_token,
3758 _xpc_exit_reason_get_label, _xpc_extension_type_init, _xpc_fd_create,
3759 _xpc_fd_dup, _xpc_file_transfer_cancel, _xpc_file_transfer_copy_io,
3760 _xpc_file_transfer_create_with_fd, _xpc_file_transfer_create_with_path,
3761 _xpc_file_transfer_get_size, _xpc_file_transfer_get_transfer_id,
3762 _xpc_file_transfer_send_finished, _xpc_file_transfer_set_transport_writing_callbacks,
3763 _xpc_file_transfer_write_finished, _xpc_file_transfer_write_to_fd,
3764 _xpc_file_transfer_write_to_path, _xpc_generate_audit_token,
3765 _xpc_get_attachment_endpoint, _xpc_get_class4NSXPC, _xpc_get_event_name,
3766 _xpc_get_instance, _xpc_get_service_identifier_for_token,
37643767 _xpc_get_service_name_from_pid, _xpc_get_service_uid_for_token,
37653768 _xpc_get_type, _xpc_handle_service, _xpc_handle_subservice,
37663769 _xpc_hash, _xpc_impersonate_user, _xpc_init_services, _xpc_inspect_copy_description,
lib/libc/include/any-macos-any/AvailabilityInternal.h+10-10
......@@ -37,11 +37,11 @@
3737 #if __has_builtin(__is_target_os)
3838 #if __is_target_os(macos)
3939 #define __MAC_OS_X_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
40 #define __MAC_OS_X_VERSION_MAX_ALLOWED __MAC_26_0
40 #define __MAC_OS_X_VERSION_MAX_ALLOWED __MAC_26_1
4141 #endif
4242 #elif __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
4343 #define __MAC_OS_X_VERSION_MIN_REQUIRED __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
44 #define __MAC_OS_X_VERSION_MAX_ALLOWED __MAC_26_0
44 #define __MAC_OS_X_VERSION_MAX_ALLOWED __MAC_26_1
4545 #endif /* __has_builtin(__is_target_os) */
4646 #endif /* defined(__has_builtin) */
4747#endif /* __MAC_OS_X_VERSION_MIN_REQUIRED */
......@@ -51,11 +51,11 @@
5151 #if __has_builtin(__is_target_os)
5252 #if __is_target_os(ios)
5353 #define __IPHONE_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
54 #define __IPHONE_OS_VERSION_MAX_ALLOWED __IPHONE_26_0
54 #define __IPHONE_OS_VERSION_MAX_ALLOWED __IPHONE_26_1
5555 #endif
5656 #elif __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__
5757 #define __IPHONE_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__
58 #define __IPHONE_OS_VERSION_MAX_ALLOWED __IPHONE_26_0
58 #define __IPHONE_OS_VERSION_MAX_ALLOWED __IPHONE_26_1
5959 #endif /* __has_builtin(__is_target_os) */
6060 #endif /* defined(__has_builtin) */
6161#endif /* __IPHONE_OS_VERSION_MIN_REQUIRED */
......@@ -65,13 +65,13 @@
6565 #if __has_builtin(__is_target_os)
6666 #if __is_target_os(watchos)
6767 #define __WATCH_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
68 #define __WATCH_OS_VERSION_MAX_ALLOWED __WATCHOS_26_0
68 #define __WATCH_OS_VERSION_MAX_ALLOWED __WATCHOS_26_1
6969 /* for compatibility with existing code. New code should use platform specific checks */
7070 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_0
7171 #endif
7272 #elif __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__
7373 #define __WATCH_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__
74 #define __WATCH_OS_VERSION_MAX_ALLOWED __WATCHOS_26_0
74 #define __WATCH_OS_VERSION_MAX_ALLOWED __WATCHOS_26_1
7575 /* for compatibility with existing code. New code should use platform specific checks */
7676 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_0
7777 #endif /* __has_builtin(__is_target_os) */
......@@ -83,13 +83,13 @@
8383 #if __has_builtin(__is_target_os)
8484 #if __is_target_os(tvos)
8585 #define __TV_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
86 #define __TV_OS_VERSION_MAX_ALLOWED __TVOS_26_0
86 #define __TV_OS_VERSION_MAX_ALLOWED __TVOS_26_1
8787 /* for compatibility with existing code. New code should use platform specific checks */
8888 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_0
8989 #endif
9090 #elif __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__
9191 #define __TV_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__
92 #define __TV_OS_VERSION_MAX_ALLOWED __TVOS_26_0
92 #define __TV_OS_VERSION_MAX_ALLOWED __TVOS_26_1
9393 /* for compatibility with existing code. New code should use platform specific checks */
9494 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_0
9595 #endif /* __has_builtin(__is_target_os) */
......@@ -103,7 +103,7 @@
103103 #if __has_builtin(__is_target_os)
104104 #if __is_target_os(driverkit)
105105 #define __DRIVERKIT_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
106 #define __DRIVERKIT_VERSION_MAX_ALLOWED __DRIVERKIT_25_0
106 #define __DRIVERKIT_VERSION_MAX_ALLOWED __DRIVERKIT_25_1
107107 #endif
108108 #endif /* __has_builtin(__is_target_os) */
109109 #endif /* defined(__has_builtin) */
......@@ -114,7 +114,7 @@
114114 #if __has_builtin(__is_target_os)
115115 #if __is_target_os(visionos)
116116 #define __VISION_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
117 #define __VISION_OS_VERSION_MAX_ALLOWED __VISIONOS_26_0
117 #define __VISION_OS_VERSION_MAX_ALLOWED __VISIONOS_26_1
118118 /* for compatibility with existing code. New code should use platform specific checks */
119119 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_17_1
120120 #endif
lib/libc/include/any-macos-any/AvailabilityVersions.h+8
......@@ -97,6 +97,7 @@
9797#define __MAC_15_6 150600
9898#define __MAC_16_0 160000
9999#define __MAC_26_0 260000
100#define __MAC_26_1 260100
100101/* __MAC__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
101102
102103#define __IPHONE_2_0 20000
......@@ -188,6 +189,7 @@
188189#define __IPHONE_18_6 180600
189190#define __IPHONE_19_0 190000
190191#define __IPHONE_26_0 260000
192#define __IPHONE_26_1 260100
191193/* __IPHONE__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
192194
193195#define __WATCHOS_1_0 10000
......@@ -248,6 +250,7 @@
248250#define __WATCHOS_11_6 110600
249251#define __WATCHOS_12_0 120000
250252#define __WATCHOS_26_0 260000
253#define __WATCHOS_26_1 260100
251254/* __WATCHOS__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
252255
253256#define __TVOS_9_0 90000
......@@ -308,6 +311,7 @@
308311#define __TVOS_18_6 180600
309312#define __TVOS_19_0 190000
310313#define __TVOS_26_0 260000
314#define __TVOS_26_1 260100
311315/* __TVOS__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
312316
313317#define __BRIDGEOS_2_0 20000
......@@ -345,6 +349,7 @@
345349#define __BRIDGEOS_9_5 90500
346350#define __BRIDGEOS_9_6 90600
347351#define __BRIDGEOS_10_0 100000
352#define __BRIDGEOS_10_1 100100
348353
349354
350355#define __DRIVERKIT_19_0 190000
......@@ -369,6 +374,7 @@
369374#define __DRIVERKIT_24_5 240500
370375#define __DRIVERKIT_24_6 240600
371376#define __DRIVERKIT_25_0 250000
377#define __DRIVERKIT_25_1 250100
372378/* __DRIVERKIT__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
373379
374380#define __VISIONOS_1_0 10000
......@@ -384,6 +390,7 @@
384390#define __VISIONOS_2_6 20600
385391#define __VISIONOS_3_0 30000
386392#define __VISIONOS_26_0 260000
393#define __VISIONOS_26_1 260100
387394/* __VISIONOS__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
388395
389396
......@@ -474,6 +481,7 @@
474481#define MAC_OS_VERSION_15_6 __MAC_15_6
475482#define MAC_OS_VERSION_16_0 __MAC_16_0
476483#define MAC_OS_VERSION_26_0 __MAC_26_0
484#define MAC_OS_VERSION_26_1 __MAC_26_1
477485
478486#endif /* #if (!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || defined(_DARWIN_C_SOURCE) */
479487
lib/libc/include/any-macos-any/mach/arm/exception.h+2
......@@ -72,6 +72,8 @@
7272#define EXC_ARM_SWP 0x104 /* SWP instruction */
7373#define EXC_ARM_PAC_FAIL 0x105 /* PAC authentication failure */
7474
75#define EXC_ARM_MTE_TAGCHECK_FAIL 0x106 /* MTE Tag Check failure */
76#define EXC_ARM_MTE_CANONICAL_FAIL 0x107 /* MTE Canonical Tag access fail */
7577
7678/*
7779 * EXC_BREAKPOINT
lib/libc/include/any-macos-any/mach/machine.h+1
......@@ -409,6 +409,7 @@ typedef integer_t cpu_threadtype_t;
409409#define CPUFAMILY_ARM_BRAVA 0x17d5b93a
410410#define CPUFAMILY_ARM_TAHITI 0x75d4acb9
411411#define CPUFAMILY_ARM_TUPAI 0x204526d0
412#define CPUFAMILY_ARM_HIDRA 0x1d5a87e8
412413#define CPUFAMILY_ARM_THERA 0xab345f09
413414#define CPUFAMILY_ARM_TILOS 0x01d7a72b
414415
lib/libc/include/any-macos-any/mach/port.h+1-1
......@@ -487,7 +487,7 @@ enum mach_port_guard_exception_codes {
487487 kGUARD_EXC_MOVE_PROVISIONAL_REPLY_PORT = 0x00100004,
488488 kGUARD_EXC_REPLY_PORT_SINGLE_SO_RIGHT = 0x00100005,
489489 kGUARD_EXC_MOD_REFS_NON_FATAL = 1u << 21,
490 kGUARD_EXC_IMMOVABLE_NON_FATAL = 1u << 22,
490 kGUARD_EXC_IMMOVABLE_NON_FATAL = 1u << 22, /* unused*/
491491};
492492
493493#define MAX_FATAL_kGUARD_EXC_CODE kGUARD_EXC_MSG_FILTERED
lib/libc/include/any-macos-any/mach/vm_prot.h-7
......@@ -100,13 +100,6 @@ typedef int vm_prot_t;
100100
101101#define VM_PROT_ALL (VM_PROT_READ|VM_PROT_WRITE|VM_PROT_EXECUTE)
102102
103/*
104 * This is an alias to VM_PROT_EXECUTE to identify callers that
105 * want to allocate an hardware assisted Read-only/read-write
106 * trusted path in userland.
107 */
108#define VM_PROT_RORW_TP (VM_PROT_EXECUTE)
109
110103/*
111104 * An invalid protection value.
112105 * Used only by memory_object_lock_request to indicate no change
lib/libc/include/any-macos-any/mach/vm_statistics.h+7-1
......@@ -283,6 +283,7 @@ typedef struct vm_purgeable_info *vm_purgeable_info_t;
283283#define VM_FLAGS_RESILIENT_MEDIA 0x00000040
284284#define VM_FLAGS_PERMANENT 0x00000080
285285#define VM_FLAGS_TPRO 0x00001000
286#define VM_FLAGS_MTE 0x00002000
286287#define VM_FLAGS_OVERWRITE 0x00004000 /* delete any existing mappings first */
287288/*
288289 * VM_FLAGS_SUPERPAGE_MASK
......@@ -299,7 +300,7 @@ typedef struct vm_purgeable_info *vm_purgeable_info_t;
299300 (flags) = (((flags) & ~VM_FLAGS_ALIAS_MASK) | \
300301 (((alias) & ~VM_FLAGS_ALIAS_MASK) << 24))
301302
302#define VM_FLAGS_HW (VM_FLAGS_TPRO)
303#define VM_FLAGS_HW (VM_FLAGS_TPRO | VM_FLAGS_MTE)
303304
304305/* These are the flags that we accept from user-space */
305306#define VM_FLAGS_USER_ALLOCATE (VM_FLAGS_FIXED | \
......@@ -358,8 +359,13 @@ __enum_decl(virtual_memory_guard_exception_code_t, uint32_t, {
358359 kGUARD_EXC_SEC_COPY_DENIED = 100,
359360 kGUARD_EXC_SEC_SHARING_DENIED = 101,
360361
362 /* Fault-related exceptions. */
363 kGUARD_EXC_MTE_SYNC_FAULT = 200,
364 kGUARD_EXC_MTE_ASYNC_USER_FAULT = 201,
365 kGUARD_EXC_MTE_ASYNC_KERN_FAULT = 202
361366});
362367
368#define kGUARD_EXC_MTE_SOFT_MODE 0x100000
363369
364370
365371#pragma mark Ledger Tags
lib/libc/include/any-macos-any/mach/vm_types.h+6
......@@ -71,6 +71,12 @@ typedef uint32_t reg64_t;
7171typedef uint32_t ppnum_t __kernel_ptr_semantics; /* Physical page number */
7272#define PPNUM_MAX UINT32_MAX
7373
74/*
75 * For use with mach_vm_update_pointers_with_remote_tags.
76 * This definition must be kept in sync with the definition in mach_types.defs.
77 */
78#define VM_OFFSET_LIST_MAX 1024
79
7480
7581typedef mach_port_t vm_map_t, vm_map_read_t, vm_map_inspect_t;
7682typedef mach_port_t upl_t;
lib/libc/include/any-macos-any/malloc/malloc.h+21-5
......@@ -110,6 +110,10 @@ __API_AVAILABLE(macos(26.0), ios(26.0), tvos(26.0), watchos(26.0), visionos(26.0
110110void * __sized_by_or_null(size) malloc_type_zone_malloc_with_options(malloc_zone_t *zone, size_t alignment, size_t size, malloc_type_id_t type_id, malloc_zone_malloc_options_t opts) __result_use_check __alloc_align(2) __alloc_size(3);
111111#endif /* __LP64__ */
112112
113#if defined(_MALLOC_TYPE_MALLOC_IS_BACKDEPLOYING) && _MALLOC_TYPE_MALLOC_IS_BACKDEPLOYING
114static void * __sized_by_or_null(size) __attribute__((always_inline)) malloc_type_zone_malloc_with_options_backdeploy(malloc_zone_t *zone, size_t alignment, size_t size, malloc_type_id_t type_id, malloc_zone_malloc_options_t opts) __result_use_check __alloc_align(2) __alloc_size(3);
115#endif /* defined(_MALLOC_TYPE_MALLOC_IS_BACKDEPLOYING) && _MALLOC_TYPE_MALLOC_IS_BACKDEPLOYING */
116
113117// The remainder of these functions are declared in malloc/_malloc_type.h, and
114118// the backdeployment variant definitions are at the bottom of this file.
115119
......@@ -409,13 +413,16 @@ extern void * __sized_by_or_null(size) malloc_zone_malloc(malloc_zone_t *zone, s
409413 * parameter may be NULL, in which case the default zone will be used.
410414 *
411415 * @param align
412 * The minimum alignment of the requested allocation. This parameter must be
413 * MALLOC_ZONE_MALLOC_DEFAULT_ALIGN to request default alignment, or a power
414 * of 2 >= sizeof(void *).
416 * The minimum alignment of the requested allocation. This non-zero parameter
417 * must be MALLOC_ZONE_MALLOC_DEFAULT_ALIGN to request default alignment, or a
418 * power of 2 > sizeof(void *).
415419 *
416420 * @param size
417 * The size, in bytes, of the requested allocation. Must be an integral
418 * multiple of align if align is non-zero.
421 * The size, in bytes, of the requested allocation, which must be an integral
422 * multiple of align. This requirement is relaxed slightly on OS versions
423 * strictly newer than 26.0, where a non-multiple size is permitted if and only
424 * if align is MALLOC_ZONE_MALLOC_DEFAULT_ALIGN. OS version 26.0 does not
425 * implement this exception.
419426 *
420427 * @param options
421428 * A bitmask of options defining how the memory should be allocated. See the
......@@ -698,6 +705,15 @@ static void * __sized_by_or_null(size) __attribute__((always_inline)) malloc_typ
698705 return func(zone, size);
699706}
700707
708static void * __sized_by_or_null(size) __attribute__((always_inline)) malloc_type_zone_malloc_with_options_backdeploy(malloc_zone_t *zone, size_t alignment, size_t size, malloc_type_id_t type_id, malloc_zone_malloc_options_t opts) __result_use_check __alloc_align(2) __alloc_size(3) {
709 __attribute__((weak_import)) void * __sized_by_or_null(size) malloc_type_zone_malloc_with_options(malloc_zone_t *zone, size_t alignment, size_t size, malloc_type_id_t type_id, malloc_zone_malloc_options_t opts) __result_use_check __alloc_align(2) __alloc_size(3);
710 __auto_type func = malloc_zone_malloc_with_options;
711 if (malloc_type_zone_malloc_with_options) {
712 return malloc_type_zone_malloc_with_options(zone, alignment, size, type_id, opts);
713 }
714 return func(zone, alignment, size, opts);
715}
716
701717static void * __sized_by_or_null(count * size) __attribute__((always_inline)) malloc_type_zone_calloc_backdeploy(malloc_zone_t *zone, size_t count, size_t size, malloc_type_id_t type_id) __result_use_check __alloc_size(2,3) {
702718 __attribute__((weak_import)) void * __sized_by_or_null(count * size) malloc_type_zone_calloc(malloc_zone_t *zone, size_t count, size_t size, malloc_type_id_t type_id) __result_use_check __alloc_size(2,3);
703719 __auto_type func = malloc_zone_calloc;
lib/libc/include/any-macos-any/sys/_symbol_aliasing.h+12
......@@ -563,6 +563,12 @@
563563#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_26_0(x)
564564#endif
565565
566#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 260100
567#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_26_1(x) x
568#else
569#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_26_1(x)
570#endif
571
566572#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1000
567573#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_0(x) x
568574#else
......@@ -1001,3 +1007,9 @@
10011007#define __DARWIN_ALIAS_STARTING_MAC___MAC_26_0(x)
10021008#endif
10031009
1010#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 260100
1011#define __DARWIN_ALIAS_STARTING_MAC___MAC_26_1(x) x
1012#else
1013#define __DARWIN_ALIAS_STARTING_MAC___MAC_26_1(x)
1014#endif
1015
lib/libc/include/any-macos-any/sys/fcntl.h+1
......@@ -184,6 +184,7 @@
184184#define AT_SYMLINK_NOFOLLOW_ANY 0x0800 /* Path should not contain any symlinks */
185185#define AT_RESOLVE_BENEATH 0x2000 /* Path must reside in the hierarchy beneath the starting directory */
186186#define AT_NODELETEBUSY 0x4000 /* Don't delete busy files */
187#define AT_UNIQUE 0x8000 /* prevent a path lookup from succeeding on a vnode with multiple links */
187188#endif
188189#endif
189190
lib/libc/include/any-macos-any/sys/mount.h+4-2
......@@ -419,8 +419,9 @@ OS_ENUM(graftdmg_type, uint32_t,
419419 GRAFTDMG_CRYPTEX_PDI_NONCE = 6,
420420 GRAFTDMG_CRYPTEX_EFFECTIVE_AP = 7,
421421 GRAFTDMG_CRYPTEX_MOBILE_ASSET = 8,
422 GRAFTDMG_CRYPTEX_MOBILE_ASSET_WITH_CODE = 9,
422423 // Update this when a new type is added
423 GRAFTDMG_CRYPTEX_MAX = 8);
424 GRAFTDMG_CRYPTEX_MAX = 9);
424425
425426OS_ENUM(cryptex_auth_type, uint32_t,
426427 // Reserved: GRAFTDMG_CRYPTEX_BOOT = 1,
......@@ -431,8 +432,9 @@ OS_ENUM(cryptex_auth_type, uint32_t,
431432 CRYPTEX_AUTH_PDI_NONCE = 6,
432433 // Reserved: GRAFTDMG_CRYPTEX_EFFECTIVE_AP = 7,
433434 CRYPTEX_AUTH_MOBILE_ASSET = 8,
435 CRYPTEX_AUTH_MOBILE_ASSET_WITH_CODE = 9,
434436 // Update this when a new type is added
435 CRYPTEX_AUTH_MAX = 8);
437 CRYPTEX_AUTH_MAX = 9);
436438
437439
438440__BEGIN_DECLS
lib/libc/include/any-macos-any/sys/resource.h+3
......@@ -539,6 +539,9 @@ struct proc_rlimit_control_wakeupmon {
539539#define IOPOL_MATERIALIZE_DATALESS_FILES_DEFAULT 0
540540#define IOPOL_MATERIALIZE_DATALESS_FILES_OFF 1
541541#define IOPOL_MATERIALIZE_DATALESS_FILES_ON 2
542#define IOPOL_MATERIALIZE_DATALESS_FILES_ORIG 4
543
544#define IOPOL_MATERIALIZE_DATALESS_FILES_BASIC_MASK 3
542545
543546#define IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT 0
544547#define IOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME 1
lib/libc/include/any-macos-any/xpc/connection.h+51-39
......@@ -135,7 +135,7 @@ typedef void (*xpc_finalizer_t)(void * _Nullable value);
135135 *
136136 * If NULL, an anonymous listener connection will be created. You can embed the
137137 * ability to create new peer connections in an endpoint, which can be inserted
138 * into a message and sent to another process .
138 * into a message and sent to another process.
139139 *
140140 * @param targetq
141141 * The GCD queue to which the event handler block will be submitted. This
......@@ -301,7 +301,7 @@ xpc_connection_set_target_queue(xpc_connection_t connection,
301301 * A connection may receive different events depending upon whether it is a
302302 * listener or not. Any connection may receive an error in its event handler.
303303 * But while normal connections may receive messages in addition to errors,
304 * listener connections will receive connections and and not messages.
304 * listener connections will receive connections and not messages.
305305 *
306306 * Connections received by listeners are equivalent to those returned by
307307 * xpc_connection_create() with a non-NULL name argument and a NULL targetq
......@@ -310,6 +310,17 @@ xpc_connection_set_target_queue(xpc_connection_t connection,
310310 * to accept the connection, you may simply call xpc_connection_cancel() on it
311311 * and return. The runtime will dispose of it for you.
312312 *
313 * IMPORTANT: For peer connections received through a listener connection's
314 * event handler, you MUST either accept the connection by setting an event
315 * handler with xpc_connection_set_event_handler() and calling
316 * xpc_connection_resume(), or reject the connection by calling
317 * xpc_connection_cancel(). Failure to take one of these actions will result
318 * in the connection remaining in an undefined state, potentially causing
319 * resource leaks or preventing proper transaction cleanup. This requirement
320 * applies to all listener connections, including those created with
321 * xpc_connection_create_mach_service() and those managed automatically by
322 * xpc_main().
323 *
313324 * If there is an error in the connection, this handler will be invoked with the
314325 * error dictionary as its argument. This dictionary will be one of the well-
315326 * known XPC_ERROR_* dictionaries.
......@@ -586,10 +597,11 @@ xpc_connection_send_message_with_reply_sync(xpc_connection_t connection,
586597 * Cancellation is asynchronous and non-preemptive and therefore this method
587598 * will not interrupt the execution of an already-running event handler block.
588599 * If the event handler is executing at the time of this call, it will finish,
589 * and then the connection will be canceled, causing a final invocation of the
590 * event handler to be scheduled with the XPC_ERROR_CONNECTION_INVALID error.
591 * After that invocation, there will be no further invocations of the event
592 * handler.
600 * and then the connection will be canceled.
601 *
602 * Canceling the connection will cause a final invocation of the event handler
603 * to be scheduled with the XPC_ERROR_CONNECTION_INVALID error. After that
604 * invocation, there will be no further invocations of the event handler.
593605 *
594606 * The XPC runtime guarantees this non-preemptiveness even for concurrent target
595607 * queues.
......@@ -601,7 +613,7 @@ xpc_connection_cancel(xpc_connection_t connection);
601613
602614/*!
603615 * @function xpc_connection_get_name
604 * Returns the name of the service with which the connections was created.
616 * Returns the name of the service with which the connection was created.
605617 *
606618 * @param connection
607619 * The connection object which is to be examined.
......@@ -690,7 +702,7 @@ xpc_connection_get_asid(xpc_connection_t connection);
690702
691703/*!
692704 * @function xpc_connection_set_context
693 * Sets context on an connection.
705 * Sets context on a connection.
694706 *
695707 * @param connection
696708 * The connection which is to be manipulated.
......@@ -764,8 +776,8 @@ xpc_connection_set_finalizer_f(xpc_connection_t connection,
764776 * The connection object which is to be modified.
765777 *
766778 * @param requirement
767 * The code signing requirement to be satisfied by the peer
768 * It is safe to deallocate the requirement string after calling `xpc_connection_set_peer_code_signing_requirement`
779 * The code signing requirement to be satisfied by the peer.
780 * It is safe to deallocate the requirement string after calling `xpc_connection_set_peer_code_signing_requirement`.
769781 *
770782 * @result
771783 * 0 on success, non-zero on error
......@@ -780,7 +792,7 @@ xpc_connection_set_finalizer_f(xpc_connection_t connection,
780792 * are dropped. When a reply is expected on the connection and the peer does not satisfy the requirement
781793 * `XPC_ERROR_PEER_CODE_SIGNING_REQUIREMENT` will be delivered instead of the reply.
782794 *
783 * This API is not supported on embedded platforms and will return ENOTSUP.
795 * This API is not supported on embedded platforms and will return ENOTSUP.
784796 *
785797 * @see https://developer.apple.com/documentation/technotes/tn3127-inside-code-signing-requirements
786798 */
......@@ -792,14 +804,14 @@ xpc_connection_set_peer_code_signing_requirement(xpc_connection_t connection, co
792804
793805/*!
794806 * @function xpc_connection_set_peer_entitlement_exists_requirement
795 * Requires that the connection peer has the specified entitlement
807 * Requires that the connection peer has the specified entitlement.
796808 *
797809 * @param connection
798 * The connection object which is to be modified
810 * The connection object which is to be modified.
799811 *
800812 * @param entitlement
801 * The entitlement the peer must have
802 * It is safe to deallocate the entitlement string after calling `xpc_connection_set_peer_entitlement_exists_requirement`
813 * The entitlement the peer must have.
814 * It is safe to deallocate the entitlement string after calling `xpc_connection_set_peer_entitlement_exists_requirement`.
803815 *
804816 * @result
805817 * 0 on success, non-zero on error
......@@ -824,17 +836,17 @@ xpc_connection_set_peer_entitlement_exists_requirement(xpc_connection_t connecti
824836
825837/*!
826838 * @function xpc_connection_set_peer_entitlement_matches_value_requirement
827 * Requires that the connection peer has the specified entitlement with the matching value
839 * Requires that the connection peer has the specified entitlement with the matching value.
828840 *
829841 * @param connection
830 * The connection object which is to be modified
842 * The connection object which is to be modified.
831843 *
832844 * @param entitlement
833 * The entitlement the peer must have
834 * It is safe to deallocate the entitlement string after calling `xpc_connection_set_peer_entitlement_matches_value_requirement`
845 * The entitlement the peer must have.
846 * It is safe to deallocate the entitlement string after calling `xpc_connection_set_peer_entitlement_matches_value_requirement`.
835847 *
836848 * @param value
837 * The value that the entitlement must match
849 * The value that the entitlement must match.
838850 * It is safe to deallocate the value object after calling
839851 * `xpc_connection_set_peer_entitlement_matches_value_requirement`.
840852 * Valid xpc types for this object are `XPC_TYPE_BOOL`, `XPC_TYPE_STRING` and `XPC_TYPE_INT64`.
......@@ -863,14 +875,14 @@ xpc_connection_set_peer_entitlement_matches_value_requirement(xpc_connection_t c
863875/*!
864876 * @function xpc_connection_set_peer_team_identity_requirement
865877 * Requires that the connection peer has the specified identity and is signed with the same team identifier
866 * as the current process
878 * as the current process.
867879 *
868880 * @param connection
869 * The connection object which is to be modified
881 * The connection object which is to be modified.
870882 *
871883 * @param signing_identifier
872 * The optional signing identifier the peer must have
873 * It is safe to deallocate the signing identifier string after calling `xpc_connection_set_peer_identity_requirement`
884 * The optional signing identifier the peer must have.
885 * It is safe to deallocate the signing identifier string after calling `xpc_connection_set_peer_identity_requirement`.
874886 *
875887 * @result
876888 * 0 on success, non-zero on error
......@@ -879,7 +891,7 @@ xpc_connection_set_peer_entitlement_matches_value_requirement(xpc_connection_t c
879891 * This function will return an error promptly if the identity requirement is invalid.
880892 *
881893 * The peer process must be signed as either a Testflight app or an App store app,
882 * or be signed by an apple issued development certificate, an enterprise distributed
894 * or be signed by an Apple-issued development certificate, an enterprise distributed
883895 * certificate (embedded only), or a Developer ID certificate (macOS only)
884896 *
885897 * It is a programming error to call multiple of the `xpc_connection_set_peer_*_requirement` family of functions on the same
......@@ -899,14 +911,14 @@ xpc_connection_set_peer_team_identity_requirement(xpc_connection_t connection, c
899911
900912/*!
901913 * @function xpc_connection_set_peer_platform_identity_requirement
902 * Requires that the connection peer has the specified identity and is signed by Apple
914 * Requires that the connection peer has the specified identity and is signed by Apple.
903915 *
904916 * @param connection
905 * The connection object which is to be modified
917 * The connection object which is to be modified.
906918 *
907919 * @param signing_identifier
908 * The optional signing identifier the peer must have. If not specified, this function ensures that the peer is signed by Apple
909 * It is safe to deallocate the signing identifier string after calling `xpc_connection_set_peer_identity_requirement`
920 * The optional signing identifier the peer must have. If not specified, this function ensures that the peer is signed by Apple.
921 * It is safe to deallocate the signing identifier string after calling `xpc_connection_set_peer_identity_requirement`.
910922 *
911923 * @result
912924 * 0 on success, non-zero on error
......@@ -934,14 +946,14 @@ xpc_connection_set_peer_platform_identity_requirement(xpc_connection_t connectio
934946
935947/*!
936948 * @function xpc_connection_set_peer_lightweight_code_requirement
937 * Requires that the connection peer has the specified lightweight code requirement
949 * Requires that the connection peer has the specified lightweight code requirement.
938950 *
939951 * @param connection
940 * The connection object which is to be modified
952 * The connection object which is to be modified.
941953 *
942954 * @param lwcr
943 * The lightweight code requirement the peer must have
944 * It is safe to deallocate the lightweight code requirement object after calling `xpc_connection_set_peer_lightweight_code_requirement`
955 * The lightweight code requirement the peer must have.
956 * It is safe to deallocate the lightweight code requirement object after calling `xpc_connection_set_peer_lightweight_code_requirement`.
945957 *
946958 * @result
947959 * 0 on success, non-zero on error
......@@ -982,14 +994,14 @@ xpc_connection_set_peer_lightweight_code_requirement(xpc_connection_t connection
982994
983995/*!
984996 * @function xpc_connection_set_peer_requirement
985 * Requires that the connection peer has the specified requirement
997 * Requires that the connection peer has the specified requirement.
986998 *
987999 * @param connection
988 * The connection object which is to be modified
1000 * The connection object which is to be modified.
9891001 *
9901002 * @param peer_requirement
991 * The requirement the peer must have
992 * It is safe to deallocate the peer requirement after calling `xpc_connection_set_peer_requirement`
1003 * The requirement the peer must have.
1004 * It is safe to deallocate the peer requirement after calling `xpc_connection_set_peer_requirement`.
9931005 *
9941006 * @discussion
9951007 * It is a programming error to call multiple of the `xpc_connection_set_peer_*_requirement` family of functions on the same
......@@ -1012,10 +1024,10 @@ xpc_connection_set_peer_requirement(xpc_connection_t connection,
10121024 * Returns a description of why the connection was invalidated.
10131025 *
10141026 * @param connection
1015 * The connection object to inspect
1027 * The connection object to inspect.
10161028 *
10171029 * @result
1018 * Null if the connection has not been invalidated, otherwise a description for why the connection was invalidated.
1030 * NULL if the connection has not been invalidated, otherwise a description for why the connection was invalidated.
10191031 */
10201032API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), watchos(8.0))
10211033XPC_EXPORT XPC_NONNULL1 XPC_WARN_RESULT
lib/libc/include/any-macos-any/xpc/listener.h+17-9
......@@ -21,7 +21,7 @@ __BEGIN_DECLS
2121 * Listeners represent the server side variant of an XPC Session.
2222 *
2323 * Listeners are activated and then begin receiving `xpc_session_t` from peers attempting to
24 * connect to the server
24 * connect to the server.
2525 *
2626 */
2727OS_OBJECT_DECL_SENDABLE_CLASS(xpc_listener);
......@@ -38,10 +38,10 @@ OS_OBJECT_DECL_SENDABLE_CLASS(xpc_listener);
3838 * {@link xpc_listener_activate} before it can be used.
3939 *
4040 * @const XPC_LISTENER_CREATE_FORCE_MACH
41 * Optional key to indicate to the runtime that this listener is for a Mach Service
41 * Optional key to indicate to the runtime that this listener is for a Mach Service.
4242 *
4343 * @const XPC_LISTENER_CREATE_FORCE_XPCSERVICE
44 * Optional key to indicate to the runtime that this listener is for a XPCService endpoint
44 * Optional key to indicate to the runtime that this listener is for a XPCService endpoint.
4545 */
4646XPC_SWIFT_NOEXPORT
4747XPC_FLAGS_ENUM(xpc_listener_create_flags, uint64_t,
......@@ -76,7 +76,7 @@ xpc_listener_copy_description(xpc_listener_t listener);
7676#pragma mark Server Session Creation
7777/*!
7878 * @function xpc_listener_create
79 * Creates a listener with the service defined by the provided name
79 * Creates a listener with the service defined by the provided name.
8080 *
8181 * @param service
8282 * The Mach service or XPC Service name to create the listener with.
......@@ -91,9 +91,14 @@ xpc_listener_copy_description(xpc_listener_t listener);
9191 * Additional attributes to create the listener.
9292 *
9393 * @param incoming_session_handler
94 * The handler block to be called when a peer is attempting to establish a
94 * The handler block to be called when a peer is attempting to establish a
9595 * connection with this listener. The incoming session handler is mandatory.
9696 *
97 * Unlike XPC connection listeners that require explicit acceptance,
98 * xpc_listener automatically accepts and activates incoming peer sessions when
99 * the incoming_session_handler returns, unless the peer session was explicitly
100 * rejected using xpc_listener_reject_peer() or cancelled using xpc_session_cancel().
101 *
97102 * @param error_out
98103 * An out-parameter that, if set and in the event of an error, will point to an
99104 * {@link xpc_rich_error_t} describing the details of any errors that occurred.
......@@ -176,17 +181,20 @@ xpc_listener_cancel(xpc_listener_t listener);
176181
177182/*!
178183 * @function xpc_listener_reject_peer
179 * Rejects the incoming peer session
184 * Rejects the incoming peer session.
180185 *
181186 * @param peer
182187 * The peer session object to reject. This must be a session that was an argument
183 * from an incoming session handler block
188 * from an incoming session handler block.
184189 *
185190 * @param reason
186 * The reason that the peer was rejected
191 * The reason that the peer was rejected.
187192 *
188193 * @discussion
189 * The peer session will be cancelled and cannot be used after it has been rejected
194 * The peer session will be cancelled and cannot be used after it has been rejected.
195 *
196 * An incoming session that is not rejected will automatically be accepted
197 * after returning from the incoming peer handler.
190198 */
191199API_AVAILABLE(macos(14.0), macCatalyst(17.0))
192200API_UNAVAILABLE(ios, tvos, watchos)
lib/libc/include/any-macos-any/xpc/xpc.h+55-40
......@@ -221,7 +221,7 @@ XPC_TYPE(_xpc_type_date);
221221
222222/*!
223223 * @define XPC_TYPE_DATA
224 * A type representing a an arbitrary buffer of bytes.
224 * A type representing an arbitrary buffer of bytes.
225225 */
226226#define XPC_TYPE_DATA (&_xpc_type_data)
227227__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
......@@ -239,7 +239,7 @@ XPC_TYPE(_xpc_type_string);
239239
240240/*!
241241 * @define XPC_TYPE_UUID
242 * A type representing a Universally Unique Identifier as defined by uuid(3).
242 * A type representing a Universally Unique Identifier as defined by uuid(3).
243243 */
244244#define XPC_TYPE_UUID (&_xpc_type_uuid)
245245__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
......@@ -487,7 +487,7 @@ xpc_copy(xpc_object_t object);
487487 * Returns true if the objects are equal, otherwise false. Two objects must be
488488 * of the same type in order to be equal.
489489 *
490 * For two arrays to be equal, they must contain the same values at the
490 * For two arrays to be equal, they must contain the same values at the
491491 * same indexes. For two dictionaries to be equal, they must contain the same
492492 * values for the same keys.
493493 *
......@@ -513,8 +513,8 @@ xpc_equal(xpc_object_t object1, xpc_object_t object2);
513513 * The calculated hash value.
514514 *
515515 * @discussion
516 * Note that the computed hash values for any particular type and value of an
517 * object can change from across releases and platforms and should not be
516 * Note that the computed hash values for any particular type and value of an
517 * object can change across releases and platforms and should not be
518518 * assumed to be constant across all time and space or stored persistently.
519519 */
520520__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
......@@ -567,7 +567,7 @@ xpc_null_create(void);
567567 * The Boolean primitive value which is to be boxed.
568568 *
569569 * @result
570 * A new Boolean object.
570 * A new Boolean object.
571571 */
572572__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
573573XPC_EXPORT XPC_RETURNS_RETAINED XPC_WARN_RESULT
......@@ -710,7 +710,8 @@ xpc_double_get_value(xpc_object_t xdouble);
710710 * @param interval
711711 * The date interval which is to be boxed. Negative values indicate the number
712712 * of nanoseconds before the epoch. Positive values indicate the number of
713 * nanoseconds after the epoch.
713 * nanoseconds after the epoch. The interval is with respect to the Unix epoch.
714 * XPC dates are in Unix time and are thus unaware of local time or leap seconds.
714715 *
715716 * @result
716717 * A new date object.
......@@ -745,7 +746,8 @@ xpc_date_create_from_current(void);
745746 *
746747 * @result
747748 * The underlying date interval or 0 if the given object was not an XPC date
748 * object.
749 * object. The interval is with respect to the Unix epoch. XPC dates are in
750 * Unix time and are thus unaware of local time or leap seconds.
749751 */
750752__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
751753XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1
......@@ -768,7 +770,7 @@ xpc_date_get_value(xpc_object_t xdate);
768770 * The number of bytes which are to be boxed.
769771 *
770772 * @result
771 * A new data object.
773 * A new data object.
772774 *
773775 * @discussion
774776 * This method will copy the buffer given into internal storage. After calling
......@@ -791,7 +793,7 @@ xpc_data_create(const void * _Nullable XPC_SIZEDBY(length) bytes, size_t length)
791793 * is retained by the data object.
792794 *
793795 * @result
794 * A new data object.
796 * A new data object.
795797 *
796798 * @discussion
797799 * The object returned by this method will refer to the buffer returned by
......@@ -843,7 +845,7 @@ xpc_data_get_bytes_ptr(xpc_object_t xdata);
843845 * @function xpc_data_get_bytes
844846 *
845847 * @abstract
846 * Copies the bytes stored in an data objects into the specified buffer.
848 * Copies the bytes stored in a data object into the specified buffer.
847849 *
848850 * @param xdata
849851 * The data object which is to be examined.
......@@ -852,7 +854,7 @@ xpc_data_get_bytes_ptr(xpc_object_t xdata);
852854 * The buffer in which to copy the data object's bytes.
853855 *
854856 * @param off
855 * The offset at which to begin the copy. If this offset is greater than the
857 * The offset at which to begin the copy. If this offset is greater than the
856858 * length of the data element, nothing is copied. Pass 0 to start the copy
857859 * at the beginning of the buffer.
858860 *
......@@ -880,7 +882,7 @@ xpc_data_get_bytes(xpc_object_t xdata,
880882 * The C-string which is to be boxed.
881883 *
882884 * @result
883 * A new string object.
885 * A new string object.
884886 */
885887__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
886888XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1
......@@ -902,7 +904,7 @@ xpc_string_create(const char *string);
902904 * The arguments which correspond to those specified in the format string.
903905 *
904906 * @result
905 * A new string object.
907 * A new string object.
906908 */
907909__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
908910XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1
......@@ -926,7 +928,7 @@ xpc_string_create_with_format(const char *fmt, ...);
926928 * string.
927929 *
928930 * @result
929 * A new string object.
931 * A new string object.
930932 */
931933__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
932934XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1
......@@ -944,7 +946,7 @@ xpc_string_create_with_format_and_arguments(const char *fmt, va_list ap);
944946 * The string object which is to be examined.
945947 *
946948 * @result
947 * The length of the underlying string, not including the NUL-terminator, or 0
949 * The length of the underlying string, not including the NUL-terminator, or 0
948950 * if the given object was not an XPC string object.
949951 */
950952__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
......@@ -982,7 +984,7 @@ xpc_string_get_string_ptr(xpc_object_t xstring);
982984 * The UUID which is to be boxed.
983985 *
984986 * @result
985 * A new UUID object.
987 * A new UUID object.
986988 */
987989__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
988990XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1
......@@ -1444,9 +1446,11 @@ xpc_array_set_double(xpc_object_t xarray, size_t index, double value);
14441446 * undefined.
14451447 *
14461448 * @param value
1447 * The date value to insert, represented as an <code>int64_t</code>. After
1448 * calling this method, the XPC object corresponding to the primitive value
1449 * inserted may be safely retrieved with {@link xpc_array_get_value()}.
1449 * The date value to insert, represented as an <code>int64_t</code>. The
1450 * interval is with respect to the Unix epoch. XPC dates are in Unix time and
1451 * are thus unaware of local time or leap seconds. After calling this method,
1452 * the XPC object corresponding to the primitive value inserted may be safely
1453 * retrieved with {@link xpc_array_get_value()}.
14501454 */
14511455__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
14521456XPC_EXPORT XPC_NONNULL1
......@@ -1624,7 +1628,7 @@ xpc_array_get_bool(xpc_object_t xarray, size_t index);
16241628 *
16251629 * @result
16261630 * The underlying <code>int64_t</code> value at the specified index. 0 if the
1627 * value at the specified index is not a signed integer value.
1631 * value at the specified index is not a signed integer value.
16281632 */
16291633__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
16301634XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1
......@@ -1692,8 +1696,10 @@ xpc_array_get_double(xpc_object_t xarray, size_t index);
16921696 * index is outside that range, the behavior is undefined.
16931697 *
16941698 * @result
1695 * The underlying date interval at the specified index. 0 if the value at the
1696 * specified index is not a date value.
1699 * The underlying date interval at the specified index. The interval is with
1700 * respect to the Unix epoch. XPC dates are in Unix time and are thus unaware
1701 * of local time or leap seconds. 0 if the value at the specified index is not
1702 * a date value.
16971703 */
16981704__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
16991705XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1
......@@ -1715,7 +1721,7 @@ xpc_array_get_date(xpc_object_t xarray, size_t index);
17151721 * index is outside that range, the behavior is undefined.
17161722 *
17171723 * @param length
1718 * Upon return output, will contain the length of the data corresponding to the
1724 * Upon return, will contain the length of the data corresponding to the
17191725 * specified key.
17201726 *
17211727 * @result
......@@ -1842,7 +1848,7 @@ xpc_array_create_connection(xpc_object_t xarray, size_t index);
18421848 *
18431849 * @result
18441850 * The object at the specified index within the array or NULL if the given
1845 * object was not an XPC array or if the the value at the specified index was
1851 * object was not an XPC array or if the value at the specified index was
18461852 * not a dictionary.
18471853 *
18481854 * @discussion
......@@ -1869,7 +1875,7 @@ xpc_array_get_dictionary(xpc_object_t xarray, size_t index);
18691875 *
18701876 * @result
18711877 * The object at the specified index within the array or NULL if the given
1872 * object was not an XPC array or if the the value at the specified index was
1878 * object was not an XPC array or if the value at the specified index was
18731879 * not an array.
18741880 *
18751881 * @discussion
......@@ -1922,7 +1928,7 @@ typedef bool (^xpc_dictionary_applier_t)(const char * _Nonnull key,
19221928 * the actual count of values, only that many key/value pairs will be inserted
19231929 * into the dictionary.
19241930 *
1925 * If the count is more than the the actual count of key/value pairs, the
1931 * If the count is more than the actual count of key/value pairs, the
19261932 * behavior is undefined. If one array is NULL and the other is not, the
19271933 * behavior is undefined. If both arrays are NULL and the count is non-0, the
19281934 * behavior is undefined.
......@@ -2040,7 +2046,7 @@ xpc_dictionary_get_value(xpc_object_t xdict, const char *key);
20402046 * The dictionary object which is to be examined.
20412047 *
20422048 * @result
2043 * The number of values stored in the dictionary or 0 if the given object was
2049 * The number of values stored in the dictionary or 0 if the given object was
20442050 * not an XPC dictionary. Calling xpc_dictionary_set_value() with a non-NULL
20452051 * value will increment the count. Calling xpc_dictionary_set_value() with a
20462052 * NULL value will decrement the count.
......@@ -2192,18 +2198,20 @@ xpc_dictionary_set_double(xpc_object_t xdict, const char *key, double value);
21922198 * @function xpc_dictionary_set_date
21932199 *
21942200 * @abstract
2195 * Inserts a date (primitive) value into a dictionary.
2201 * Inserts a date value into a dictionary.
21962202 *
21972203 * @param xdict
21982204 * The dictionary which is to be manipulated.
21992205 *
22002206 * @param key
2201 * The key for which the primitive value shall be set.
2207 * The key for which the value shall be set.
22022208 *
22032209 * @param value
2204 * The date value to insert. After calling this method, the XPC object
2205 * corresponding to the primitive value inserted may be safely retrieved with
2206 * {@link xpc_dictionary_get_value()}.
2210 * The date value to insert, represented as an <code>int64_t</code>. The
2211 * interval is with respect to the Unix epoch. XPC dates are in Unix time and
2212 * are thus unaware of local time or leap seconds. After calling this method,
2213 * the XPC object corresponding to the primitive value inserted may be safely
2214 * retrieved with {@link xpc_dictionary_get_value()}.
22072215 */
22082216__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
22092217XPC_EXPORT XPC_NONNULL1 XPC_NONNULL2
......@@ -2263,7 +2271,7 @@ xpc_dictionary_set_string(xpc_object_t xdict, const char *key,
22632271 * @function xpc_dictionary_set_uuid
22642272 *
22652273 * @abstract
2266 * Inserts a uuid (primitive) value into an array.
2274 * Inserts a UUID (primitive) value into a dictionary.
22672275 *
22682276 * @param xdict
22692277 * The dictionary which is to be manipulated.
......@@ -2381,7 +2389,7 @@ xpc_dictionary_get_bool(xpc_object_t xdict, const char *key);
23812389 * @function xpc_dictionary_get_int64
23822390 *
23832391 * @abstract
2384 * Gets an <code>int64</code> primitive value from a dictionary directly.
2392 * Gets an <code>int64_t</code> primitive value from a dictionary directly.
23852393 *
23862394 * @param xdict
23872395 * The dictionary object which is to be examined.
......@@ -2403,7 +2411,7 @@ xpc_dictionary_get_int64(xpc_object_t xdict, const char *key);
24032411 * @function xpc_dictionary_get_uint64
24042412 *
24052413 * @abstract
2406 * Gets a <code>uint64</code> primitive value from a dictionary directly.
2414 * Gets a <code>uint64_t</code> primitive value from a dictionary directly.
24072415 *
24082416 * @param xdict
24092417 * The dictionary object which is to be examined.
......@@ -2456,9 +2464,10 @@ xpc_dictionary_get_double(xpc_object_t xdict, const char *key);
24562464 * The key whose value is to be obtained.
24572465 *
24582466 * @result
2459 * The underlying date interval for the specified key. 0 if the value for the
2460 * specified key is not a date value or if there is no value for the specified
2461 * key.
2467 * The underlying date interval for the specified key. The interval is with
2468 * respect to the Unix epoch. XPC dates are in Unix time and are thus unaware
2469 * of local time or leap seconds. 0 if the value for the specified key is not a
2470 * date value or if there is no value for the specified key.
24622471 */
24632472__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
24642473XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL_ALL
......@@ -2674,7 +2683,13 @@ xpc_dictionary_copy_mach_send(xpc_object_t xdict, const char *key);
26742683 * bundle's Info.plist under the XPCService dictionary.
26752684 *
26762685 * @param handler
2677 * The handler with which to accept new connections.
2686 * The handler with which to accept new connections. This handler is called for
2687 * each new connection established with the service. The handler must either
2688 * accept the connection by setting an event handler with
2689 * xpc_connection_set_event_handler() and calling xpc_connection_resume(), or
2690 * reject the connection by calling xpc_connection_cancel(). Failure to take
2691 * one of these actions will result in the connection remaining in an undefined
2692 * state, potentially causing resource leaks or transaction issues.
26782693 */
26792694API_AVAILABLE(macos(10.7), macCatalyst(5.0))
26802695API_UNAVAILABLE(ios)