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 +1 @@
1{"MinimalDisplayName":"26.0"}1{"MinimalDisplayName":"26.1"}
lib/libc/darwin/libSystem.tbd+82-79
...@@ -400,7 +400,7 @@ tbd-version: 4...@@ -400,7 +400,7 @@ tbd-version: 4
400targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 400targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
401 arm64e-macos, arm64e-maccatalyst ]401 arm64e-macos, arm64e-maccatalyst ]
402install-name: '/usr/lib/system/libcorecrypto.dylib'402install-name: '/usr/lib/system/libcorecrypto.dylib'
403current-version: 1922.0.25403current-version: 1922.40.14
404parent-umbrella:404parent-umbrella:
405 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 405 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
406 arm64e-macos, arm64e-maccatalyst ]406 arm64e-macos, arm64e-maccatalyst ]
...@@ -417,21 +417,21 @@ exports:...@@ -417,21 +417,21 @@ exports:
417 _ccsha256_vng_intel_SupplementalSSE3_di ]417 _ccsha256_vng_intel_SupplementalSSE3_di ]
418 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 418 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
419 arm64e-macos, arm64e-maccatalyst ]419 arm64e-macos, arm64e-maccatalyst ]
420 symbols: [ _CCEC_FAULT_CANARY, _CCRSA_PKCS1_FAULT_CANARY, _CCRSA_PSS_FAULT_CANARY, 420 symbols: [ _CCEC_FAULT_CANARY, _CCMLDSA_FAULT_CANARY, _CCRSA_PKCS1_FAULT_CANARY,
421 _CCSS_PRIME_P192, _CCSS_PRIME_P224, _CCSS_PRIME_P256, _CCSS_PRIME_P384, 421 _CCRSA_PSS_FAULT_CANARY, _CCSS_PRIME_P192, _CCSS_PRIME_P224,
422 _CCSS_PRIME_P521, _cc_abort, _cc_atfork_child, _cc_atfork_parent, 422 _CCSS_PRIME_P256, _CCSS_PRIME_P384, _CCSS_PRIME_P521, _cc_abort,
423 _cc_atfork_prepare, _cc_clear, _cc_cmp_safe, _cc_impl_name, 423 _cc_atfork_child, _cc_atfork_parent, _cc_atfork_prepare, _cc_clear,
424 _cc_try_abort, _cc_try_abort_if, _ccaes_cbc_decrypt_mode, 424 _cc_cmp_safe, _cc_impl_name, _cc_try_abort, _cc_try_abort_if,
425 _ccaes_cbc_encrypt_mode, _ccaes_ccm_decrypt_mode, _ccaes_ccm_encrypt_mode, 425 _ccaes_cbc_decrypt_mode, _ccaes_cbc_encrypt_mode, _ccaes_ccm_decrypt_mode,
426 _ccaes_cfb8_decrypt_mode, _ccaes_cfb8_encrypt_mode, _ccaes_cfb_decrypt_mode, 426 _ccaes_ccm_encrypt_mode, _ccaes_cfb8_decrypt_mode, _ccaes_cfb8_encrypt_mode,
427 _ccaes_cfb_encrypt_mode, _ccaes_ctr_crypt_mode, _ccaes_ecb_decrypt_mode, 427 _ccaes_cfb_decrypt_mode, _ccaes_cfb_encrypt_mode, _ccaes_ctr_crypt_mode,
428 _ccaes_ecb_encrypt_mode, _ccaes_gcm_decrypt_mode, _ccaes_gcm_encrypt_mode, 428 _ccaes_ecb_decrypt_mode, _ccaes_ecb_encrypt_mode, _ccaes_gcm_decrypt_mode,
429 _ccaes_gladman_cbc_decrypt_mode, _ccaes_gladman_cbc_encrypt_mode, 429 _ccaes_gcm_encrypt_mode, _ccaes_gladman_cbc_decrypt_mode,
430 _ccaes_ltc_ecb_decrypt_mode, _ccaes_ltc_ecb_encrypt_mode, 430 _ccaes_gladman_cbc_encrypt_mode, _ccaes_ltc_ecb_decrypt_mode,
431 _ccaes_ofb_crypt_mode, _ccaes_siv_decrypt_mode, _ccaes_siv_encrypt_mode, 431 _ccaes_ltc_ecb_encrypt_mode, _ccaes_ofb_crypt_mode, _ccaes_siv_decrypt_mode,
432 _ccaes_siv_hmac_sha256_decrypt_mode, _ccaes_siv_hmac_sha256_encrypt_mode, 432 _ccaes_siv_encrypt_mode, _ccaes_siv_hmac_sha256_decrypt_mode,
433 _ccaes_unwind, _ccaes_xts_decrypt_mode, _ccaes_xts_encrypt_mode, 433 _ccaes_siv_hmac_sha256_encrypt_mode, _ccaes_unwind, _ccaes_xts_decrypt_mode,
434 _ccansikdf_x963, _ccapsic_client_check_intersect_response, 434 _ccaes_xts_encrypt_mode, _ccansikdf_x963, _ccapsic_client_check_intersect_response,
435 _ccapsic_client_generate_match_response, _ccapsic_client_init, 435 _ccapsic_client_generate_match_response, _ccapsic_client_init,
436 _ccapsic_client_state_sizeof, _ccapsic_server_determine_intersection, 436 _ccapsic_client_state_sizeof, _ccapsic_server_determine_intersection,
437 _ccapsic_server_encode_element, _ccapsic_server_init, _ccapsic_server_state_sizeof, 437 _ccapsic_server_encode_element, _ccapsic_server_init, _ccapsic_server_state_sizeof,
...@@ -650,19 +650,20 @@ exports:...@@ -650,19 +650,20 @@ exports:
650 _ccmldsa_sign_with_context, _ccmldsa_signature_nbytes_ctx, 650 _ccmldsa_sign_with_context, _ccmldsa_signature_nbytes_ctx,
651 _ccmldsa_signature_nbytes_params, _ccmldsa_sizeof_full_ctx, 651 _ccmldsa_signature_nbytes_params, _ccmldsa_sizeof_full_ctx,
652 _ccmldsa_sizeof_pub_ctx, _ccmldsa_verify, _ccmldsa_verify_prehashed, 652 _ccmldsa_sizeof_pub_ctx, _ccmldsa_verify, _ccmldsa_verify_prehashed,
653 _ccmldsa_verify_with_context, _ccmode_factory_cbc_decrypt, 653 _ccmldsa_verify_prehashed_with_canary, _ccmldsa_verify_with_canary,
654 _ccmode_factory_cbc_encrypt, _ccmode_factory_ccm_decrypt, 654 _ccmldsa_verify_with_context, _ccmldsa_verify_with_context_and_canary,
655 _ccmode_factory_ccm_encrypt, _ccmode_factory_cfb8_decrypt, 655 _ccmode_factory_cbc_decrypt, _ccmode_factory_cbc_encrypt,
656 _ccmode_factory_cfb8_encrypt, _ccmode_factory_cfb_decrypt, 656 _ccmode_factory_ccm_decrypt, _ccmode_factory_ccm_encrypt,
657 _ccmode_factory_cfb_encrypt, _ccmode_factory_ctr_crypt, _ccmode_factory_gcm_decrypt, 657 _ccmode_factory_cfb8_decrypt, _ccmode_factory_cfb8_encrypt,
658 _ccmode_factory_gcm_encrypt, _ccmode_factory_ofb_crypt, _ccmode_factory_siv_decrypt, 658 _ccmode_factory_cfb_decrypt, _ccmode_factory_cfb_encrypt,
659 _ccmode_factory_siv_encrypt, _ccmode_factory_xts_decrypt, 659 _ccmode_factory_ctr_crypt, _ccmode_factory_gcm_decrypt, _ccmode_factory_gcm_encrypt,
660 _ccmode_factory_xts_encrypt, _ccn_add, _ccn_add1, _ccn_bitlen, 660 _ccmode_factory_ofb_crypt, _ccmode_factory_siv_decrypt, _ccmode_factory_siv_encrypt,
661 _ccn_cmp, _ccn_cmpn, _ccn_lprint, _ccn_print, _ccn_read_uint, 661 _ccmode_factory_xts_decrypt, _ccmode_factory_xts_encrypt,
662 _ccn_set_bit, _ccn_seti, _ccn_sub, _ccn_swap, _ccn_write_int, 662 _ccn_add, _ccn_add1, _ccn_bitlen, _ccn_cmp, _ccn_cmpn, _ccn_lprint,
663 _ccn_write_int_size, _ccn_write_uint, _ccn_write_uint_padded, 663 _ccn_print, _ccn_read_uint, _ccn_set_bit, _ccn_seti, _ccn_sub,
664 _ccn_write_uint_padded_ct, _ccn_write_uint_size, _ccn_xor, 664 _ccn_swap, _ccn_write_int, _ccn_write_int_size, _ccn_write_uint,
665 _ccn_zero, _ccnistkdf_ctr_cmac, _ccnistkdf_ctr_cmac_fixed, 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,
666 _ccnistkdf_ctr_hmac, _ccnistkdf_ctr_hmac_fixed, _ccofb_block_size, 667 _ccnistkdf_ctr_hmac, _ccnistkdf_ctr_hmac_fixed, _ccofb_block_size,
667 _ccofb_context_size, _ccofb_init, _ccofb_one_shot, _ccofb_update, 668 _ccofb_context_size, _ccofb_init, _ccofb_one_shot, _ccofb_update,
668 _ccoid_equal, _ccoid_payload, _ccoid_size, _ccpad_cts1_decrypt, 669 _ccoid_equal, _ccoid_payload, _ccoid_size, _ccpad_cts1_decrypt,
...@@ -1116,7 +1117,7 @@ tbd-version: 4...@@ -1116,7 +1117,7 @@ tbd-version: 4
1116targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1117targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1117 arm64e-macos, arm64e-maccatalyst ]1118 arm64e-macos, arm64e-maccatalyst ]
1118install-name: '/usr/lib/system/libquarantine.dylib'1119install-name: '/usr/lib/system/libquarantine.dylib'
1119current-version: 196.0.11120current-version: 196.40.3
1120parent-umbrella:1121parent-umbrella:
1121 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1122 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1122 arm64e-macos, arm64e-maccatalyst ]1123 arm64e-macos, arm64e-maccatalyst ]
...@@ -1281,7 +1282,7 @@ tbd-version: 4...@@ -1281,7 +1282,7 @@ tbd-version: 4
1281targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1282targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1282 arm64e-macos, arm64e-maccatalyst ]1283 arm64e-macos, arm64e-maccatalyst ]
1283install-name: '/usr/lib/system/libsystem_c.dylib'1284install-name: '/usr/lib/system/libsystem_c.dylib'
1284current-version: 1725.0.111285current-version: 1725.40.4
1285parent-umbrella:1286parent-umbrella:
1286 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1287 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1287 arm64e-macos, arm64e-maccatalyst ]1288 arm64e-macos, arm64e-maccatalyst ]
...@@ -1578,7 +1579,7 @@ tbd-version: 4...@@ -1578,7 +1579,7 @@ tbd-version: 4
1578targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1579targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1579 arm64e-macos, arm64e-maccatalyst ]1580 arm64e-macos, arm64e-maccatalyst ]
1580install-name: '/usr/lib/system/libsystem_collections.dylib'1581install-name: '/usr/lib/system/libsystem_collections.dylib'
1581current-version: 1725.0.111582current-version: 1725.40.4
1582parent-umbrella:1583parent-umbrella:
1583 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1584 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1584 arm64e-macos, arm64e-maccatalyst ]1585 arm64e-macos, arm64e-maccatalyst ]
...@@ -1608,7 +1609,7 @@ tbd-version: 4...@@ -1608,7 +1609,7 @@ tbd-version: 4
1608targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1609targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1609 arm64e-macos, arm64e-maccatalyst ]1610 arm64e-macos, arm64e-maccatalyst ]
1610install-name: '/usr/lib/system/libsystem_configuration.dylib'1611install-name: '/usr/lib/system/libsystem_configuration.dylib'
1611current-version: 1385.0.71612current-version: 1385.40.9
1612parent-umbrella:1613parent-umbrella:
1613 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1614 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1614 arm64e-macos, arm64e-maccatalyst ]1615 arm64e-macos, arm64e-maccatalyst ]
...@@ -1643,8 +1644,8 @@ exports:...@@ -1643,8 +1644,8 @@ exports:
1643 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1644 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1644 arm64e-macos, arm64e-maccatalyst ]1645 arm64e-macos, arm64e-maccatalyst ]
1645 symbols: [ _CMCONTAINERSEAM_DEFAULT, _CMDISPATCHSEAM_DEFAULT, _CMFSSEAM_DEFAULT, 1646 symbols: [ _CMCONTAINERSEAM_DEFAULT, _CMDISPATCHSEAM_DEFAULT, _CMFSSEAM_DEFAULT,
1646 _CMNOTIFYSEAM_DEFAULT, _CMPWDSEAM_DEFAULT, _CMSANDBOXSEAM_DEFAULT, 1647 _CMNOTIFYSEAM_DEFAULT, _CMPWDSEAM_DEFAULT, _CMQUARANTINESEAM_DEFAULT,
1647 _CONTAINER_CLASS_NAMES, _CONTAINER_NOTIFY_GENERATION_INITIAL, 1648 _CMSANDBOXSEAM_DEFAULT, _CONTAINER_CLASS_NAMES, _CONTAINER_NOTIFY_GENERATION_INITIAL,
1648 _CONTAINER_NOTIFY_GENERATION_INVALID, _CONTAINER_NOTIFY_USER_INVALIDATED, 1649 _CONTAINER_NOTIFY_GENERATION_INVALID, _CONTAINER_NOTIFY_USER_INVALIDATED,
1649 _CONTAINER_PERSONA_CURRENT, _CONTAINER_PERSONA_PRIMARY, __container_init, 1650 _CONTAINER_PERSONA_CURRENT, _CONTAINER_PERSONA_PRIMARY, __container_init,
1650 __container_notify_copy_notify_name, __container_query_get_next_result_sync, 1651 __container_notify_copy_notify_name, __container_query_get_next_result_sync,
...@@ -1658,17 +1659,17 @@ exports:...@@ -1658,17 +1659,17 @@ exports:
1658 _container_acquire_sandbox_extension, _container_audit_token_copy_codesign_hash, 1659 _container_acquire_sandbox_extension, _container_audit_token_copy_codesign_hash,
1659 _container_audit_token_copy_codesign_identifier, _container_audit_token_copy_codesign_team_identifier, 1660 _container_audit_token_copy_codesign_identifier, _container_audit_token_copy_codesign_team_identifier,
1660 _container_audit_token_copy_entitlement, _container_audit_token_copy_executable_name, 1661 _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_copy_executable_name_with_pid, _container_audit_token_for_pid,
1662 _container_audit_token_get_egid, _container_audit_token_get_euid, 1663 _container_audit_token_get_codesign_status, _container_audit_token_get_egid,
1663 _container_audit_token_get_pid, _container_audit_token_get_platform, 1664 _container_audit_token_get_euid, _container_audit_token_get_pid,
1664 _container_audit_token_is_valid, _container_authorize, _container_authorize_container, 1665 _container_audit_token_get_platform, _container_audit_token_is_valid,
1665 _container_authorize_container_for_self, _container_authorize_get_result_description, 1666 _container_authorize, _container_authorize_container, _container_authorize_container_for_self,
1666 _container_base64_decode, _container_base64_decode_string, 1667 _container_authorize_get_result_description, _container_base64_decode,
1667 _container_base64_encode, _container_base64_encode_string, 1668 _container_base64_decode_string, _container_base64_encode,
1668 _container_bundle_copy_data_container, _container_bundle_copy_data_container_path, 1669 _container_base64_encode_string, _container_bundle_copy_data_container,
1669 _container_class_for_each_normalized_class, _container_class_normalized, 1670 _container_bundle_copy_data_container_path, _container_class_for_each_normalized_class,
1670 _container_class_supports_data_subdirectory, _container_class_supports_randomized_path, 1671 _container_class_normalized, _container_class_supports_data_subdirectory,
1671 _container_class_supports_randomized_path_on_current_platform, 1672 _container_class_supports_randomized_path, _container_class_supports_randomized_path_on_current_platform,
1672 _container_client_copy_decoded_from_xpc_object, _container_client_copy_encoded_xpc_object, 1673 _container_client_copy_decoded_from_xpc_object, _container_client_copy_encoded_xpc_object,
1673 _container_client_copy_entitlement, _container_client_create_from_audit_token, 1674 _container_client_copy_entitlement, _container_client_create_from_audit_token,
1674 _container_client_get_audit_token, _container_client_get_codesign_identifier, 1675 _container_client_get_audit_token, _container_client_get_codesign_identifier,
...@@ -1680,7 +1681,7 @@ exports:...@@ -1680,7 +1681,7 @@ exports:
1680 _container_client_is_signature_valid, _container_client_is_signed, 1681 _container_client_is_signature_valid, _container_client_is_signed,
1681 _container_client_is_test_client, _container_codesign_copy_cdhash, 1682 _container_client_is_test_client, _container_codesign_copy_cdhash,
1682 _container_codesign_copy_cs_identity, _container_codesign_copy_cs_team_identifier, 1683 _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,
1684 _container_codesign_get_status, _container_copy_client, _container_copy_code_signing_info_for_identifier, 1685 _container_codesign_get_status, _container_copy_client, _container_copy_code_signing_info_for_identifier,
1685 _container_copy_from_path, _container_copy_info, _container_copy_info_value_for_key, 1686 _container_copy_from_path, _container_copy_info, _container_copy_info_value_for_key,
1686 _container_copy_object, _container_copy_path, _container_copy_persona_unique_strings, 1687 _container_copy_object, _container_copy_path, _container_copy_persona_unique_strings,
...@@ -1794,7 +1795,8 @@ exports:...@@ -1794,7 +1795,8 @@ exports:
1794 _container_seam_dispatch_set_common, _container_seam_fs_ensure_lazy_loaded, 1795 _container_seam_dispatch_set_common, _container_seam_fs_ensure_lazy_loaded,
1795 _container_seam_fs_reset, _container_seam_fs_set_common, _container_seam_notify_reset, 1796 _container_seam_fs_reset, _container_seam_fs_set_common, _container_seam_notify_reset,
1796 _container_seam_notify_set_common, _container_seam_pwd_reset, 1797 _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,
1798 _container_seam_sandbox_set_common, _container_serialize_copy_deserialized_reference, 1800 _container_seam_sandbox_set_common, _container_serialize_copy_deserialized_reference,
1799 _container_serialize_copy_serialized_reference, _container_set_code_signing_info_for_identifier, 1801 _container_serialize_copy_serialized_reference, _container_set_code_signing_info_for_identifier,
1800 _container_set_data_protection_for_current_user, _container_set_info_value, 1802 _container_set_data_protection_for_current_user, _container_set_info_value,
...@@ -1831,7 +1833,7 @@ exports:...@@ -1831,7 +1833,7 @@ exports:
1831 _container_xpc_set_outgoing_message_send_block, _container_xpc_set_use_shared_connection, 1833 _container_xpc_set_outgoing_message_send_block, _container_xpc_set_use_shared_connection,
1832 _container_xpc_shared_copy_connection, _gCMContainerSeam, 1834 _container_xpc_shared_copy_connection, _gCMContainerSeam,
1833 _gCMDispatchSeam, _gCMFSSeam, _gCMNotifySeam, _gCMPWDSeam, 1835 _gCMDispatchSeam, _gCMFSSeam, _gCMNotifySeam, _gCMPWDSeam,
1834 _gCMSandboxSeam ]1836 _gCMQuarantineSeam, _gCMSandboxSeam ]
1835 - targets: [ x86_64-maccatalyst, arm64-maccatalyst, arm64e-maccatalyst ]1837 - targets: [ x86_64-maccatalyst, arm64-maccatalyst, arm64e-maccatalyst ]
1836 symbols: [ _CONTAINER_CURRENT_MOBILE_UID, _CONTAINER_INSTALLATION_UID, 1838 symbols: [ _CONTAINER_CURRENT_MOBILE_UID, _CONTAINER_INSTALLATION_UID,
1837 _CONTAINER_SYSTEM_UID, _container_create_or_lookup, _container_create_or_lookup_app_group_paths, 1839 _CONTAINER_SYSTEM_UID, _container_create_or_lookup, _container_create_or_lookup_app_group_paths,
...@@ -1925,7 +1927,7 @@ tbd-version: 4...@@ -1925,7 +1927,7 @@ tbd-version: 4
1925targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1927targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1926 arm64e-macos, arm64e-maccatalyst ]1928 arm64e-macos, arm64e-maccatalyst ]
1927install-name: '/usr/lib/system/libsystem_dnssd.dylib'1929install-name: '/usr/lib/system/libsystem_dnssd.dylib'
1928current-version: 2881.0.251930current-version: 2881.40.18
1929parent-umbrella:1931parent-umbrella:
1930 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 1932 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
1931 arm64e-macos, arm64e-maccatalyst ]1933 arm64e-macos, arm64e-maccatalyst ]
...@@ -1962,7 +1964,7 @@ exports:...@@ -1962,7 +1964,7 @@ exports:
1962tbd-version: 41964tbd-version: 4
1963targets: [ x86_64-macos, arm64-macos, arm64e-macos ]1965targets: [ x86_64-macos, arm64-macos, arm64e-macos ]
1964install-name: '/usr/lib/system/libsystem_eligibility.dylib'1966install-name: '/usr/lib/system/libsystem_eligibility.dylib'
1965current-version: 2861967current-version: 286.40.9
1966parent-umbrella:1968parent-umbrella:
1967 - targets: [ x86_64-macos, arm64-macos, arm64e-macos ]1969 - targets: [ x86_64-macos, arm64-macos, arm64e-macos ]
1968 umbrella: System1970 umbrella: System
...@@ -2118,7 +2120,7 @@ tbd-version: 4...@@ -2118,7 +2120,7 @@ tbd-version: 4
2118targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 2120targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
2119 arm64e-macos, arm64e-maccatalyst ]2121 arm64e-macos, arm64e-maccatalyst ]
2120install-name: '/usr/lib/system/libsystem_kernel.dylib'2122install-name: '/usr/lib/system/libsystem_kernel.dylib'
2121current-version: 12377.1.92123current-version: 12377.41.6
2122parent-umbrella:2124parent-umbrella:
2123 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 2125 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
2124 arm64e-macos, arm64e-maccatalyst ]2126 arm64e-macos, arm64e-maccatalyst ]
...@@ -2254,7 +2256,7 @@ exports:...@@ -2254,7 +2256,7 @@ exports:
2254 _clock_alarm, _clock_alarm_reply, _clock_get_attributes, _clock_get_time, 2256 _clock_alarm, _clock_alarm_reply, _clock_get_attributes, _clock_get_time,
2255 _clock_set_attributes, _clock_set_time, _clock_sleep, _clock_sleep_trap, 2257 _clock_set_attributes, _clock_set_time, _clock_sleep, _clock_sleep_trap,
2256 _clonefile, _clonefileat, _close, '_close$NOCANCEL', _coalition_create, 2258 _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,
2258 _coalition_info_set_efficiency, _coalition_info_set_name, 2260 _coalition_info_set_efficiency, _coalition_info_set_name,
2259 _coalition_ledger_set_logical_writes_limit, _coalition_policy_get, 2261 _coalition_ledger_set_logical_writes_limit, _coalition_policy_get,
2260 _coalition_policy_set, _coalition_reap, _coalition_terminate, 2262 _coalition_policy_set, _coalition_reap, _coalition_terminate,
...@@ -2636,7 +2638,7 @@ tbd-version: 4...@@ -2636,7 +2638,7 @@ tbd-version: 4
2636targets: [ x86_64-macos, x86_64-maccatalyst, x86_64h-macos, x86_64h-maccatalyst, 2638targets: [ x86_64-macos, x86_64-maccatalyst, x86_64h-macos, x86_64h-maccatalyst,
2637 arm64-macos, arm64-maccatalyst, arm64e-macos, arm64e-maccatalyst ]2639 arm64-macos, arm64-maccatalyst, arm64e-macos, arm64e-maccatalyst ]
2638install-name: '/usr/lib/system/libsystem_m.dylib'2640install-name: '/usr/lib/system/libsystem_m.dylib'
2639current-version: 3307.0.12641current-version: 3309
2640parent-umbrella:2642parent-umbrella:
2641 - targets: [ x86_64-macos, x86_64-maccatalyst, x86_64h-macos, x86_64h-maccatalyst, 2643 - targets: [ x86_64-macos, x86_64-maccatalyst, x86_64h-macos, x86_64h-maccatalyst,
2642 arm64-macos, arm64-maccatalyst, arm64e-macos, arm64e-maccatalyst ]2644 arm64-macos, arm64-maccatalyst, arm64e-macos, arm64e-maccatalyst ]
...@@ -2858,7 +2860,7 @@ tbd-version: 4...@@ -2858,7 +2860,7 @@ tbd-version: 4
2858targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 2860targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
2859 arm64e-macos, arm64e-maccatalyst ]2861 arm64e-macos, arm64e-maccatalyst ]
2860install-name: '/usr/lib/system/libsystem_malloc.dylib'2862install-name: '/usr/lib/system/libsystem_malloc.dylib'
2861current-version: 792.1.12863current-version: 792.41.1
2862parent-umbrella:2864parent-umbrella:
2863 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 2865 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
2864 arm64e-macos, arm64e-maccatalyst ]2866 arm64e-macos, arm64e-maccatalyst ]
...@@ -2983,11 +2985,12 @@ exports:...@@ -2983,11 +2985,12 @@ exports:
2983 _ne_session_status_to_string, _ne_session_stop, _ne_session_stop_all_with_plugin_type, 2985 _ne_session_status_to_string, _ne_session_stop, _ne_session_stop_all_with_plugin_type,
2984 _ne_session_stop_reason_to_string, _ne_session_type_to_string, 2986 _ne_session_stop_reason_to_string, _ne_session_type_to_string,
2985 _ne_session_urlfilter_configs_present, _ne_session_use_as_system_vpn, 2987 _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, 2988 _ne_session_vod_evaluate_connection_present, _ne_session_vpn_configs_present,
2987 _ne_socket_set_attribution, _ne_socket_set_domains, _ne_socket_set_is_app_initiated, 2989 _ne_session_vpn_include_all_networks_configs_present, _ne_socket_set_attribution,
2988 _ne_socket_set_website_attribution, _ne_tracker_build_cache, 2990 _ne_socket_set_domains, _ne_socket_set_is_app_initiated, _ne_socket_set_website_attribution,
2989 _ne_tracker_build_trie, _ne_tracker_check_info_changed, _ne_tracker_check_is_hostname_blocked, 2991 _ne_tracker_build_cache, _ne_tracker_build_trie, _ne_tracker_check_info_changed,
2990 _ne_tracker_check_tcc, _ne_tracker_clear_cache, _ne_tracker_context_can_block_request, 2992 _ne_tracker_check_is_hostname_blocked, _ne_tracker_check_tcc,
2993 _ne_tracker_clear_cache, _ne_tracker_context_can_block_request,
2991 _ne_tracker_context_get_domain, _ne_tracker_context_get_domain_owner, 2994 _ne_tracker_context_get_domain, _ne_tracker_context_get_domain_owner,
2992 _ne_tracker_context_is_from_app_list, _ne_tracker_context_is_from_web_list, 2995 _ne_tracker_context_is_from_app_list, _ne_tracker_context_is_from_web_list,
2993 _ne_tracker_copy_current_stacktrace, _ne_tracker_create_xcode_issue, 2996 _ne_tracker_copy_current_stacktrace, _ne_tracker_create_xcode_issue,
...@@ -3024,7 +3027,7 @@ tbd-version: 4...@@ -3024,7 +3027,7 @@ tbd-version: 4
3024targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 3027targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
3025 arm64e-macos, arm64e-maccatalyst ]3028 arm64e-macos, arm64e-maccatalyst ]
3026install-name: '/usr/lib/system/libsystem_platform.dylib'3029install-name: '/usr/lib/system/libsystem_platform.dylib'
3027current-version: 359.1.23030current-version: 359.40.3
3028parent-umbrella:3031parent-umbrella:
3029 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 3032 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
3030 arm64e-macos, arm64e-maccatalyst ]3033 arm64e-macos, arm64e-maccatalyst ]
...@@ -3200,7 +3203,7 @@ tbd-version: 4...@@ -3200,7 +3203,7 @@ tbd-version: 4
3200targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 3203targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
3201 arm64e-macos, arm64e-maccatalyst ]3204 arm64e-macos, arm64e-maccatalyst ]
3202install-name: '/usr/lib/system/libsystem_sandbox.dylib'3205install-name: '/usr/lib/system/libsystem_sandbox.dylib'
3203current-version: 2680.0.503206current-version: 2680.41.1
3204parent-umbrella:3207parent-umbrella:
3205 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 3208 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
3206 arm64e-macos, arm64e-maccatalyst ]3209 arm64e-macos, arm64e-maccatalyst ]
...@@ -3321,7 +3324,7 @@ tbd-version: 4...@@ -3321,7 +3324,7 @@ tbd-version: 4
3321targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 3324targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
3322 arm64e-macos, arm64e-maccatalyst ]3325 arm64e-macos, arm64e-maccatalyst ]
3323install-name: '/usr/lib/system/libsystem_secinit.dylib'3326install-name: '/usr/lib/system/libsystem_secinit.dylib'
3324current-version: 168.0.33327current-version: 168.40.2
3325parent-umbrella:3328parent-umbrella:
3326 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 3329 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
3327 arm64e-macos, arm64e-maccatalyst ]3330 arm64e-macos, arm64e-maccatalyst ]
...@@ -3354,7 +3357,7 @@ tbd-version: 4...@@ -3354,7 +3357,7 @@ tbd-version: 4
3354targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 3357targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
3355 arm64e-macos, arm64e-maccatalyst ]3358 arm64e-macos, arm64e-maccatalyst ]
3356install-name: '/usr/lib/system/libsystem_trace.dylib'3359install-name: '/usr/lib/system/libsystem_trace.dylib'
3357current-version: 1815.0.163360current-version: 1815.40.20
3358parent-umbrella:3361parent-umbrella:
3359 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 3362 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
3360 arm64e-macos, arm64e-maccatalyst ]3363 arm64e-macos, arm64e-maccatalyst ]
...@@ -3441,7 +3444,7 @@ exports:...@@ -3441,7 +3444,7 @@ exports:
3441tbd-version: 43444tbd-version: 4
3442targets: [ x86_64-macos, arm64-macos, arm64e-macos ]3445targets: [ x86_64-macos, arm64-macos, arm64e-macos ]
3443install-name: '/usr/lib/system/libsystem_trial.dylib'3446install-name: '/usr/lib/system/libsystem_trial.dylib'
3444current-version: 4743447current-version: 474.3
3445parent-umbrella:3448parent-umbrella:
3446 - targets: [ x86_64-macos, arm64-macos, arm64e-macos ]3449 - targets: [ x86_64-macos, arm64-macos, arm64e-macos ]
3447 umbrella: System3450 umbrella: System
...@@ -3484,7 +3487,7 @@ tbd-version: 4...@@ -3484,7 +3487,7 @@ tbd-version: 4
3484targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 3487targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
3485 arm64e-macos, arm64e-maccatalyst ]3488 arm64e-macos, arm64e-maccatalyst ]
3486install-name: '/usr/lib/system/libxpc.dylib'3489install-name: '/usr/lib/system/libxpc.dylib'
3487current-version: 3089.0.113490current-version: 3089.41.2
3488parent-umbrella:3491parent-umbrella:
3489 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst, 3492 - targets: [ x86_64-macos, x86_64-maccatalyst, arm64-macos, arm64-maccatalyst,
3490 arm64e-macos, arm64e-maccatalyst ]3493 arm64e-macos, arm64e-maccatalyst ]
...@@ -3670,10 +3673,10 @@ exports:...@@ -3670,10 +3673,10 @@ exports:
3670 _xpc_binprefs_equal, _xpc_binprefs_init, _xpc_binprefs_is_noop, 3673 _xpc_binprefs_equal, _xpc_binprefs_init, _xpc_binprefs_is_noop,
3671 _xpc_binprefs_set_psattr, _xpc_bool_create, _xpc_bool_get_value, 3674 _xpc_binprefs_set_psattr, _xpc_bool_create, _xpc_bool_get_value,
3672 _xpc_bs_main, _xpc_bundle_copy_info_dictionary, _xpc_bundle_copy_normalized_cryptex_path, 3675 _xpc_bs_main, _xpc_bundle_copy_info_dictionary, _xpc_bundle_copy_normalized_cryptex_path,
3673 _xpc_bundle_copy_resource_path, _xpc_bundle_copy_services, 3676 _xpc_bundle_copy_services, _xpc_bundle_create, _xpc_bundle_create_from_origin,
3674 _xpc_bundle_create, _xpc_bundle_create_from_origin, _xpc_bundle_create_from_origin_with_string_cache, 3677 _xpc_bundle_create_from_origin_with_string_cache, _xpc_bundle_create_main,
3675 _xpc_bundle_create_main, _xpc_bundle_create_with_string_cache, 3678 _xpc_bundle_create_with_string_cache, _xpc_bundle_get_error,
3676 _xpc_bundle_get_error, _xpc_bundle_get_executable_path, _xpc_bundle_get_info_dictionary, 3679 _xpc_bundle_get_executable_path, _xpc_bundle_get_info_dictionary,
3677 _xpc_bundle_get_path, _xpc_bundle_get_property, _xpc_bundle_get_xpcservice_dictionary, 3680 _xpc_bundle_get_path, _xpc_bundle_get_property, _xpc_bundle_get_xpcservice_dictionary,
3678 _xpc_bundle_populate, _xpc_bundle_resolve, _xpc_bundle_resolve_on_queue, 3681 _xpc_bundle_populate, _xpc_bundle_resolve, _xpc_bundle_resolve_on_queue,
3679 _xpc_bundle_resolve_sync, _xpc_coalition_copy_info, _xpc_coalition_history_pipe_async, 3682 _xpc_bundle_resolve_sync, _xpc_coalition_copy_info, _xpc_coalition_history_pipe_async,
...@@ -3752,15 +3755,15 @@ exports:...@@ -3752,15 +3755,15 @@ exports:
3752 _xpc_event_publisher_set_error_handler, _xpc_event_publisher_set_event, 3755 _xpc_event_publisher_set_error_handler, _xpc_event_publisher_set_event,
3753 _xpc_event_publisher_set_handler, _xpc_event_publisher_set_initial_load_completed_handler_4remoted, 3756 _xpc_event_publisher_set_handler, _xpc_event_publisher_set_initial_load_completed_handler_4remoted,
3754 _xpc_event_publisher_set_subscriber_keepalive, _xpc_event_publisher_set_throttling, 3757 _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, 3758 _xpc_exit_reason_get_label, _xpc_extension_type_init, _xpc_fd_create,
3756 _xpc_extension_type_init, _xpc_fd_create, _xpc_fd_dup, _xpc_file_transfer_cancel, 3759 _xpc_fd_dup, _xpc_file_transfer_cancel, _xpc_file_transfer_copy_io,
3757 _xpc_file_transfer_copy_io, _xpc_file_transfer_create_with_fd, 3760 _xpc_file_transfer_create_with_fd, _xpc_file_transfer_create_with_path,
3758 _xpc_file_transfer_create_with_path, _xpc_file_transfer_get_size, 3761 _xpc_file_transfer_get_size, _xpc_file_transfer_get_transfer_id,
3759 _xpc_file_transfer_get_transfer_id, _xpc_file_transfer_send_finished, 3762 _xpc_file_transfer_send_finished, _xpc_file_transfer_set_transport_writing_callbacks,
3760 _xpc_file_transfer_set_transport_writing_callbacks, _xpc_file_transfer_write_finished, 3763 _xpc_file_transfer_write_finished, _xpc_file_transfer_write_to_fd,
3761 _xpc_file_transfer_write_to_fd, _xpc_file_transfer_write_to_path, 3764 _xpc_file_transfer_write_to_path, _xpc_generate_audit_token,
3762 _xpc_generate_audit_token, _xpc_get_attachment_endpoint, _xpc_get_class4NSXPC, 3765 _xpc_get_attachment_endpoint, _xpc_get_class4NSXPC, _xpc_get_event_name,
3763 _xpc_get_event_name, _xpc_get_instance, _xpc_get_service_identifier_for_token, 3766 _xpc_get_instance, _xpc_get_service_identifier_for_token,
3764 _xpc_get_service_name_from_pid, _xpc_get_service_uid_for_token, 3767 _xpc_get_service_name_from_pid, _xpc_get_service_uid_for_token,
3765 _xpc_get_type, _xpc_handle_service, _xpc_handle_subservice, 3768 _xpc_get_type, _xpc_handle_service, _xpc_handle_subservice,
3766 _xpc_hash, _xpc_impersonate_user, _xpc_init_services, _xpc_inspect_copy_description, 3769 _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 @@...@@ -37,11 +37,11 @@
37 #if __has_builtin(__is_target_os)37 #if __has_builtin(__is_target_os)
38 #if __is_target_os(macos)38 #if __is_target_os(macos)
39 #define __MAC_OS_X_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__39 #define __MAC_OS_X_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
40 #define __MAC_OS_X_VERSION_MAX_ALLOWED __MAC_26_040 #define __MAC_OS_X_VERSION_MAX_ALLOWED __MAC_26_1
41 #endif41 #endif
42 #elif __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ 42 #elif __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
43 #define __MAC_OS_X_VERSION_MIN_REQUIRED __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__43 #define __MAC_OS_X_VERSION_MIN_REQUIRED __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
44 #define __MAC_OS_X_VERSION_MAX_ALLOWED __MAC_26_044 #define __MAC_OS_X_VERSION_MAX_ALLOWED __MAC_26_1
45 #endif /* __has_builtin(__is_target_os) */45 #endif /* __has_builtin(__is_target_os) */
46 #endif /* defined(__has_builtin) */46 #endif /* defined(__has_builtin) */
47#endif /* __MAC_OS_X_VERSION_MIN_REQUIRED */47#endif /* __MAC_OS_X_VERSION_MIN_REQUIRED */
...@@ -51,11 +51,11 @@...@@ -51,11 +51,11 @@
51 #if __has_builtin(__is_target_os)51 #if __has_builtin(__is_target_os)
52 #if __is_target_os(ios)52 #if __is_target_os(ios)
53 #define __IPHONE_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__53 #define __IPHONE_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
54 #define __IPHONE_OS_VERSION_MAX_ALLOWED __IPHONE_26_054 #define __IPHONE_OS_VERSION_MAX_ALLOWED __IPHONE_26_1
55 #endif55 #endif
56 #elif __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ 56 #elif __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__
57 #define __IPHONE_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__57 #define __IPHONE_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__
58 #define __IPHONE_OS_VERSION_MAX_ALLOWED __IPHONE_26_058 #define __IPHONE_OS_VERSION_MAX_ALLOWED __IPHONE_26_1
59 #endif /* __has_builtin(__is_target_os) */59 #endif /* __has_builtin(__is_target_os) */
60 #endif /* defined(__has_builtin) */60 #endif /* defined(__has_builtin) */
61#endif /* __IPHONE_OS_VERSION_MIN_REQUIRED */61#endif /* __IPHONE_OS_VERSION_MIN_REQUIRED */
...@@ -65,13 +65,13 @@...@@ -65,13 +65,13 @@
65 #if __has_builtin(__is_target_os)65 #if __has_builtin(__is_target_os)
66 #if __is_target_os(watchos)66 #if __is_target_os(watchos)
67 #define __WATCH_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__67 #define __WATCH_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
68 #define __WATCH_OS_VERSION_MAX_ALLOWED __WATCHOS_26_068 #define __WATCH_OS_VERSION_MAX_ALLOWED __WATCHOS_26_1
69 /* for compatibility with existing code. New code should use platform specific checks */69 /* for compatibility with existing code. New code should use platform specific checks */
70 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_070 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_0
71 #endif71 #endif
72 #elif __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__ 72 #elif __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__
73 #define __WATCH_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__73 #define __WATCH_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__
74 #define __WATCH_OS_VERSION_MAX_ALLOWED __WATCHOS_26_074 #define __WATCH_OS_VERSION_MAX_ALLOWED __WATCHOS_26_1
75 /* for compatibility with existing code. New code should use platform specific checks */75 /* for compatibility with existing code. New code should use platform specific checks */
76 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_076 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_0
77 #endif /* __has_builtin(__is_target_os) */77 #endif /* __has_builtin(__is_target_os) */
...@@ -83,13 +83,13 @@...@@ -83,13 +83,13 @@
83 #if __has_builtin(__is_target_os)83 #if __has_builtin(__is_target_os)
84 #if __is_target_os(tvos)84 #if __is_target_os(tvos)
85 #define __TV_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__85 #define __TV_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
86 #define __TV_OS_VERSION_MAX_ALLOWED __TVOS_26_086 #define __TV_OS_VERSION_MAX_ALLOWED __TVOS_26_1
87 /* for compatibility with existing code. New code should use platform specific checks */87 /* for compatibility with existing code. New code should use platform specific checks */
88 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_088 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_0
89 #endif89 #endif
90 #elif __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__ 90 #elif __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__
91 #define __TV_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__91 #define __TV_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__
92 #define __TV_OS_VERSION_MAX_ALLOWED __TVOS_26_092 #define __TV_OS_VERSION_MAX_ALLOWED __TVOS_26_1
93 /* for compatibility with existing code. New code should use platform specific checks */93 /* for compatibility with existing code. New code should use platform specific checks */
94 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_094 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_9_0
95 #endif /* __has_builtin(__is_target_os) */95 #endif /* __has_builtin(__is_target_os) */
...@@ -103,7 +103,7 @@...@@ -103,7 +103,7 @@
103 #if __has_builtin(__is_target_os)103 #if __has_builtin(__is_target_os)
104 #if __is_target_os(driverkit)104 #if __is_target_os(driverkit)
105 #define __DRIVERKIT_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__105 #define __DRIVERKIT_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
106 #define __DRIVERKIT_VERSION_MAX_ALLOWED __DRIVERKIT_25_0106 #define __DRIVERKIT_VERSION_MAX_ALLOWED __DRIVERKIT_25_1
107 #endif107 #endif
108 #endif /* __has_builtin(__is_target_os) */108 #endif /* __has_builtin(__is_target_os) */
109 #endif /* defined(__has_builtin) */109 #endif /* defined(__has_builtin) */
...@@ -114,7 +114,7 @@...@@ -114,7 +114,7 @@
114 #if __has_builtin(__is_target_os)114 #if __has_builtin(__is_target_os)
115 #if __is_target_os(visionos)115 #if __is_target_os(visionos)
116 #define __VISION_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__116 #define __VISION_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
117 #define __VISION_OS_VERSION_MAX_ALLOWED __VISIONOS_26_0117 #define __VISION_OS_VERSION_MAX_ALLOWED __VISIONOS_26_1
118 /* for compatibility with existing code. New code should use platform specific checks */118 /* for compatibility with existing code. New code should use platform specific checks */
119 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_17_1119 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_17_1
120 #endif120 #endif
lib/libc/include/any-macos-any/AvailabilityVersions.h+8
...@@ -97,6 +97,7 @@...@@ -97,6 +97,7 @@
97#define __MAC_15_6 15060097#define __MAC_15_6 150600
98#define __MAC_16_0 16000098#define __MAC_16_0 160000
99#define __MAC_26_0 26000099#define __MAC_26_0 260000
100#define __MAC_26_1 260100
100/* __MAC__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */101/* __MAC__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
101102
102#define __IPHONE_2_0 20000103#define __IPHONE_2_0 20000
...@@ -188,6 +189,7 @@...@@ -188,6 +189,7 @@
188#define __IPHONE_18_6 180600189#define __IPHONE_18_6 180600
189#define __IPHONE_19_0 190000190#define __IPHONE_19_0 190000
190#define __IPHONE_26_0 260000191#define __IPHONE_26_0 260000
192#define __IPHONE_26_1 260100
191/* __IPHONE__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */193/* __IPHONE__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
192194
193#define __WATCHOS_1_0 10000195#define __WATCHOS_1_0 10000
...@@ -248,6 +250,7 @@...@@ -248,6 +250,7 @@
248#define __WATCHOS_11_6 110600250#define __WATCHOS_11_6 110600
249#define __WATCHOS_12_0 120000251#define __WATCHOS_12_0 120000
250#define __WATCHOS_26_0 260000252#define __WATCHOS_26_0 260000
253#define __WATCHOS_26_1 260100
251/* __WATCHOS__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */254/* __WATCHOS__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
252255
253#define __TVOS_9_0 90000256#define __TVOS_9_0 90000
...@@ -308,6 +311,7 @@...@@ -308,6 +311,7 @@
308#define __TVOS_18_6 180600311#define __TVOS_18_6 180600
309#define __TVOS_19_0 190000312#define __TVOS_19_0 190000
310#define __TVOS_26_0 260000313#define __TVOS_26_0 260000
314#define __TVOS_26_1 260100
311/* __TVOS__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */315/* __TVOS__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
312316
313#define __BRIDGEOS_2_0 20000317#define __BRIDGEOS_2_0 20000
...@@ -345,6 +349,7 @@...@@ -345,6 +349,7 @@
345#define __BRIDGEOS_9_5 90500349#define __BRIDGEOS_9_5 90500
346#define __BRIDGEOS_9_6 90600350#define __BRIDGEOS_9_6 90600
347#define __BRIDGEOS_10_0 100000351#define __BRIDGEOS_10_0 100000
352#define __BRIDGEOS_10_1 100100
348353
349354
350#define __DRIVERKIT_19_0 190000355#define __DRIVERKIT_19_0 190000
...@@ -369,6 +374,7 @@...@@ -369,6 +374,7 @@
369#define __DRIVERKIT_24_5 240500374#define __DRIVERKIT_24_5 240500
370#define __DRIVERKIT_24_6 240600375#define __DRIVERKIT_24_6 240600
371#define __DRIVERKIT_25_0 250000376#define __DRIVERKIT_25_0 250000
377#define __DRIVERKIT_25_1 250100
372/* __DRIVERKIT__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */378/* __DRIVERKIT__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */
373379
374#define __VISIONOS_1_0 10000380#define __VISIONOS_1_0 10000
...@@ -384,6 +390,7 @@...@@ -384,6 +390,7 @@
384#define __VISIONOS_2_6 20600390#define __VISIONOS_2_6 20600
385#define __VISIONOS_3_0 30000391#define __VISIONOS_3_0 30000
386#define __VISIONOS_26_0 260000392#define __VISIONOS_26_0 260000
393#define __VISIONOS_26_1 260100
387/* __VISIONOS__NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable */394/* __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 @@...@@ -474,6 +481,7 @@
474#define MAC_OS_VERSION_15_6 __MAC_15_6481#define MAC_OS_VERSION_15_6 __MAC_15_6
475#define MAC_OS_VERSION_16_0 __MAC_16_0482#define MAC_OS_VERSION_16_0 __MAC_16_0
476#define MAC_OS_VERSION_26_0 __MAC_26_0483#define MAC_OS_VERSION_26_0 __MAC_26_0
484#define MAC_OS_VERSION_26_1 __MAC_26_1
477485
478#endif /* #if (!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || defined(_DARWIN_C_SOURCE) */486#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 @@...@@ -72,6 +72,8 @@
72#define EXC_ARM_SWP 0x104 /* SWP instruction */72#define EXC_ARM_SWP 0x104 /* SWP instruction */
73#define EXC_ARM_PAC_FAIL 0x105 /* PAC authentication failure */73#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
76/*78/*
77 * EXC_BREAKPOINT79 * EXC_BREAKPOINT
lib/libc/include/any-macos-any/mach/machine.h+1
...@@ -409,6 +409,7 @@ typedef integer_t cpu_threadtype_t;...@@ -409,6 +409,7 @@ typedef integer_t cpu_threadtype_t;
409#define CPUFAMILY_ARM_BRAVA 0x17d5b93a409#define CPUFAMILY_ARM_BRAVA 0x17d5b93a
410#define CPUFAMILY_ARM_TAHITI 0x75d4acb9410#define CPUFAMILY_ARM_TAHITI 0x75d4acb9
411#define CPUFAMILY_ARM_TUPAI 0x204526d0411#define CPUFAMILY_ARM_TUPAI 0x204526d0
412#define CPUFAMILY_ARM_HIDRA 0x1d5a87e8
412#define CPUFAMILY_ARM_THERA 0xab345f09413#define CPUFAMILY_ARM_THERA 0xab345f09
413#define CPUFAMILY_ARM_TILOS 0x01d7a72b414#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 {...@@ -487,7 +487,7 @@ enum mach_port_guard_exception_codes {
487 kGUARD_EXC_MOVE_PROVISIONAL_REPLY_PORT = 0x00100004,487 kGUARD_EXC_MOVE_PROVISIONAL_REPLY_PORT = 0x00100004,
488 kGUARD_EXC_REPLY_PORT_SINGLE_SO_RIGHT = 0x00100005,488 kGUARD_EXC_REPLY_PORT_SINGLE_SO_RIGHT = 0x00100005,
489 kGUARD_EXC_MOD_REFS_NON_FATAL = 1u << 21,489 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*/
491};491};
492492
493#define MAX_FATAL_kGUARD_EXC_CODE kGUARD_EXC_MSG_FILTERED493#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;...@@ -100,13 +100,6 @@ typedef int vm_prot_t;
100100
101#define VM_PROT_ALL (VM_PROT_READ|VM_PROT_WRITE|VM_PROT_EXECUTE)101#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
110/*103/*
111 * An invalid protection value.104 * An invalid protection value.
112 * Used only by memory_object_lock_request to indicate no change105 * 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;...@@ -283,6 +283,7 @@ typedef struct vm_purgeable_info *vm_purgeable_info_t;
283#define VM_FLAGS_RESILIENT_MEDIA 0x00000040283#define VM_FLAGS_RESILIENT_MEDIA 0x00000040
284#define VM_FLAGS_PERMANENT 0x00000080284#define VM_FLAGS_PERMANENT 0x00000080
285#define VM_FLAGS_TPRO 0x00001000285#define VM_FLAGS_TPRO 0x00001000
286#define VM_FLAGS_MTE 0x00002000
286#define VM_FLAGS_OVERWRITE 0x00004000 /* delete any existing mappings first */287#define VM_FLAGS_OVERWRITE 0x00004000 /* delete any existing mappings first */
287/*288/*
288 * VM_FLAGS_SUPERPAGE_MASK289 * VM_FLAGS_SUPERPAGE_MASK
...@@ -299,7 +300,7 @@ typedef struct vm_purgeable_info *vm_purgeable_info_t;...@@ -299,7 +300,7 @@ typedef struct vm_purgeable_info *vm_purgeable_info_t;
299 (flags) = (((flags) & ~VM_FLAGS_ALIAS_MASK) | \300 (flags) = (((flags) & ~VM_FLAGS_ALIAS_MASK) | \
300 (((alias) & ~VM_FLAGS_ALIAS_MASK) << 24))301 (((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
304/* These are the flags that we accept from user-space */305/* These are the flags that we accept from user-space */
305#define VM_FLAGS_USER_ALLOCATE (VM_FLAGS_FIXED | \306#define VM_FLAGS_USER_ALLOCATE (VM_FLAGS_FIXED | \
...@@ -358,8 +359,13 @@ __enum_decl(virtual_memory_guard_exception_code_t, uint32_t, {...@@ -358,8 +359,13 @@ __enum_decl(virtual_memory_guard_exception_code_t, uint32_t, {
358 kGUARD_EXC_SEC_COPY_DENIED = 100,359 kGUARD_EXC_SEC_COPY_DENIED = 100,
359 kGUARD_EXC_SEC_SHARING_DENIED = 101,360 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
361});366});
362367
368#define kGUARD_EXC_MTE_SOFT_MODE 0x100000
363369
364370
365#pragma mark Ledger Tags371#pragma mark Ledger Tags
lib/libc/include/any-macos-any/mach/vm_types.h+6
...@@ -71,6 +71,12 @@ typedef uint32_t reg64_t;...@@ -71,6 +71,12 @@ typedef uint32_t reg64_t;
71typedef uint32_t ppnum_t __kernel_ptr_semantics; /* Physical page number */71typedef uint32_t ppnum_t __kernel_ptr_semantics; /* Physical page number */
72#define PPNUM_MAX UINT32_MAX72#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
75typedef mach_port_t vm_map_t, vm_map_read_t, vm_map_inspect_t;81typedef mach_port_t vm_map_t, vm_map_read_t, vm_map_inspect_t;
76typedef mach_port_t upl_t;82typedef 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...@@ -110,6 +110,10 @@ __API_AVAILABLE(macos(26.0), ios(26.0), tvos(26.0), watchos(26.0), visionos(26.0
110void * __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);110void * __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);
111#endif /* __LP64__ */111#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
113// The remainder of these functions are declared in malloc/_malloc_type.h, and117// The remainder of these functions are declared in malloc/_malloc_type.h, and
114// the backdeployment variant definitions are at the bottom of this file.118// 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...@@ -409,13 +413,16 @@ extern void * __sized_by_or_null(size) malloc_zone_malloc(malloc_zone_t *zone, s
409 * parameter may be NULL, in which case the default zone will be used.413 * parameter may be NULL, in which case the default zone will be used.
410 *414 *
411 * @param align415 * @param align
412 * The minimum alignment of the requested allocation. This parameter must be416 * The minimum alignment of the requested allocation. This non-zero parameter
413 * MALLOC_ZONE_MALLOC_DEFAULT_ALIGN to request default alignment, or a power417 * must be MALLOC_ZONE_MALLOC_DEFAULT_ALIGN to request default alignment, or a
414 * of 2 >= sizeof(void *).418 * power of 2 > sizeof(void *).
415 *419 *
416 * @param size420 * @param size
417 * The size, in bytes, of the requested allocation. Must be an integral421 * The size, in bytes, of the requested allocation, which must be an integral
418 * multiple of align if align is non-zero.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.
419 *426 *
420 * @param options427 * @param options
421 * A bitmask of options defining how the memory should be allocated. See the428 * 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...@@ -698,6 +705,15 @@ static void * __sized_by_or_null(size) __attribute__((always_inline)) malloc_typ
698 return func(zone, size);705 return func(zone, size);
699}706}
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
701static 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) {717static 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) {
702 __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);718 __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);
703 __auto_type func = malloc_zone_calloc;719 __auto_type func = malloc_zone_calloc;
lib/libc/include/any-macos-any/sys/_symbol_aliasing.h+12
...@@ -563,6 +563,12 @@...@@ -563,6 +563,12 @@
563#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_26_0(x)563#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_26_0(x)
564#endif564#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
566#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1000572#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1000
567#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_0(x) x573#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_0(x) x
568#else574#else
...@@ -1001,3 +1007,9 @@...@@ -1001,3 +1007,9 @@
1001#define __DARWIN_ALIAS_STARTING_MAC___MAC_26_0(x)1007#define __DARWIN_ALIAS_STARTING_MAC___MAC_26_0(x)
1002#endif1008#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 @@...@@ -184,6 +184,7 @@
184#define AT_SYMLINK_NOFOLLOW_ANY 0x0800 /* Path should not contain any symlinks */184#define AT_SYMLINK_NOFOLLOW_ANY 0x0800 /* Path should not contain any symlinks */
185#define AT_RESOLVE_BENEATH 0x2000 /* Path must reside in the hierarchy beneath the starting directory */185#define AT_RESOLVE_BENEATH 0x2000 /* Path must reside in the hierarchy beneath the starting directory */
186#define AT_NODELETEBUSY 0x4000 /* Don't delete busy files */186#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 */
187#endif188#endif
188#endif189#endif
189190
lib/libc/include/any-macos-any/sys/mount.h+4-2
...@@ -419,8 +419,9 @@ OS_ENUM(graftdmg_type, uint32_t,...@@ -419,8 +419,9 @@ OS_ENUM(graftdmg_type, uint32_t,
419 GRAFTDMG_CRYPTEX_PDI_NONCE = 6,419 GRAFTDMG_CRYPTEX_PDI_NONCE = 6,
420 GRAFTDMG_CRYPTEX_EFFECTIVE_AP = 7,420 GRAFTDMG_CRYPTEX_EFFECTIVE_AP = 7,
421 GRAFTDMG_CRYPTEX_MOBILE_ASSET = 8,421 GRAFTDMG_CRYPTEX_MOBILE_ASSET = 8,
422 GRAFTDMG_CRYPTEX_MOBILE_ASSET_WITH_CODE = 9,
422 // Update this when a new type is added423 // Update this when a new type is added
423 GRAFTDMG_CRYPTEX_MAX = 8);424 GRAFTDMG_CRYPTEX_MAX = 9);
424425
425OS_ENUM(cryptex_auth_type, uint32_t,426OS_ENUM(cryptex_auth_type, uint32_t,
426 // Reserved: GRAFTDMG_CRYPTEX_BOOT = 1,427 // Reserved: GRAFTDMG_CRYPTEX_BOOT = 1,
...@@ -431,8 +432,9 @@ OS_ENUM(cryptex_auth_type, uint32_t,...@@ -431,8 +432,9 @@ OS_ENUM(cryptex_auth_type, uint32_t,
431 CRYPTEX_AUTH_PDI_NONCE = 6,432 CRYPTEX_AUTH_PDI_NONCE = 6,
432 // Reserved: GRAFTDMG_CRYPTEX_EFFECTIVE_AP = 7,433 // Reserved: GRAFTDMG_CRYPTEX_EFFECTIVE_AP = 7,
433 CRYPTEX_AUTH_MOBILE_ASSET = 8,434 CRYPTEX_AUTH_MOBILE_ASSET = 8,
435 CRYPTEX_AUTH_MOBILE_ASSET_WITH_CODE = 9,
434 // Update this when a new type is added436 // Update this when a new type is added
435 CRYPTEX_AUTH_MAX = 8);437 CRYPTEX_AUTH_MAX = 9);
436438
437439
438__BEGIN_DECLS440__BEGIN_DECLS
lib/libc/include/any-macos-any/sys/resource.h+3
...@@ -539,6 +539,9 @@ struct proc_rlimit_control_wakeupmon {...@@ -539,6 +539,9 @@ struct proc_rlimit_control_wakeupmon {
539#define IOPOL_MATERIALIZE_DATALESS_FILES_DEFAULT 0539#define IOPOL_MATERIALIZE_DATALESS_FILES_DEFAULT 0
540#define IOPOL_MATERIALIZE_DATALESS_FILES_OFF 1540#define IOPOL_MATERIALIZE_DATALESS_FILES_OFF 1
541#define IOPOL_MATERIALIZE_DATALESS_FILES_ON 2541#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
543#define IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT 0546#define IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT 0
544#define IOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME 1547#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);...@@ -135,7 +135,7 @@ typedef void (*xpc_finalizer_t)(void * _Nullable value);
135 *135 *
136 * If NULL, an anonymous listener connection will be created. You can embed the136 * If NULL, an anonymous listener connection will be created. You can embed the
137 * ability to create new peer connections in an endpoint, which can be inserted137 * 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.
139 *139 *
140 * @param targetq140 * @param targetq
141 * The GCD queue to which the event handler block will be submitted. This141 * 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,...@@ -301,7 +301,7 @@ xpc_connection_set_target_queue(xpc_connection_t connection,
301 * A connection may receive different events depending upon whether it is a301 * A connection may receive different events depending upon whether it is a
302 * listener or not. Any connection may receive an error in its event handler.302 * listener or not. Any connection may receive an error in its event handler.
303 * But while normal connections may receive messages in addition to errors,303 * 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.
305 *305 *
306 * Connections received by listeners are equivalent to those returned by306 * Connections received by listeners are equivalent to those returned by
307 * xpc_connection_create() with a non-NULL name argument and a NULL targetq307 * 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,...@@ -310,6 +310,17 @@ xpc_connection_set_target_queue(xpc_connection_t connection,
310 * to accept the connection, you may simply call xpc_connection_cancel() on it310 * to accept the connection, you may simply call xpc_connection_cancel() on it
311 * and return. The runtime will dispose of it for you.311 * and return. The runtime will dispose of it for you.
312 *312 *
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 *
313 * If there is an error in the connection, this handler will be invoked with the324 * If there is an error in the connection, this handler will be invoked with the
314 * error dictionary as its argument. This dictionary will be one of the well-325 * error dictionary as its argument. This dictionary will be one of the well-
315 * known XPC_ERROR_* dictionaries.326 * known XPC_ERROR_* dictionaries.
...@@ -586,10 +597,11 @@ xpc_connection_send_message_with_reply_sync(xpc_connection_t connection,...@@ -586,10 +597,11 @@ xpc_connection_send_message_with_reply_sync(xpc_connection_t connection,
586 * Cancellation is asynchronous and non-preemptive and therefore this method597 * Cancellation is asynchronous and non-preemptive and therefore this method
587 * will not interrupt the execution of an already-running event handler block.598 * will not interrupt the execution of an already-running event handler block.
588 * If the event handler is executing at the time of this call, it will finish,599 * 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 the600 * and then the connection will be canceled.
590 * event handler to be scheduled with the XPC_ERROR_CONNECTION_INVALID error.601 *
591 * After that invocation, there will be no further invocations of the event602 * Canceling the connection will cause a final invocation of the event handler
592 * 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.
593 *605 *
594 * The XPC runtime guarantees this non-preemptiveness even for concurrent target606 * The XPC runtime guarantees this non-preemptiveness even for concurrent target
595 * queues.607 * queues.
...@@ -601,7 +613,7 @@ xpc_connection_cancel(xpc_connection_t connection);...@@ -601,7 +613,7 @@ xpc_connection_cancel(xpc_connection_t connection);
601613
602/*!614/*!
603 * @function xpc_connection_get_name615 * @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.
605 *617 *
606 * @param connection618 * @param connection
607 * The connection object which is to be examined.619 * The connection object which is to be examined.
...@@ -690,7 +702,7 @@ xpc_connection_get_asid(xpc_connection_t connection);...@@ -690,7 +702,7 @@ xpc_connection_get_asid(xpc_connection_t connection);
690702
691/*!703/*!
692 * @function xpc_connection_set_context704 * @function xpc_connection_set_context
693 * Sets context on an connection.705 * Sets context on a connection.
694 *706 *
695 * @param connection707 * @param connection
696 * The connection which is to be manipulated.708 * The connection which is to be manipulated.
...@@ -764,8 +776,8 @@ xpc_connection_set_finalizer_f(xpc_connection_t connection,...@@ -764,8 +776,8 @@ xpc_connection_set_finalizer_f(xpc_connection_t connection,
764 * The connection object which is to be modified.776 * The connection object which is to be modified.
765 *777 *
766 * @param requirement778 * @param requirement
767 * The code signing requirement to be satisfied by the peer779 * 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`780 * It is safe to deallocate the requirement string after calling `xpc_connection_set_peer_code_signing_requirement`.
769 *781 *
770 * @result782 * @result
771 * 0 on success, non-zero on error783 * 0 on success, non-zero on error
...@@ -780,7 +792,7 @@ xpc_connection_set_finalizer_f(xpc_connection_t connection,...@@ -780,7 +792,7 @@ xpc_connection_set_finalizer_f(xpc_connection_t connection,
780 * are dropped. When a reply is expected on the connection and the peer does not satisfy the requirement792 * are dropped. When a reply is expected on the connection and the peer does not satisfy the requirement
781 * `XPC_ERROR_PEER_CODE_SIGNING_REQUIREMENT` will be delivered instead of the reply.793 * `XPC_ERROR_PEER_CODE_SIGNING_REQUIREMENT` will be delivered instead of the reply.
782 *794 *
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.
784 *796 *
785 * @see https://developer.apple.com/documentation/technotes/tn3127-inside-code-signing-requirements797 * @see https://developer.apple.com/documentation/technotes/tn3127-inside-code-signing-requirements
786 */798 */
...@@ -792,14 +804,14 @@ xpc_connection_set_peer_code_signing_requirement(xpc_connection_t connection, co...@@ -792,14 +804,14 @@ xpc_connection_set_peer_code_signing_requirement(xpc_connection_t connection, co
792804
793/*!805/*!
794 * @function xpc_connection_set_peer_entitlement_exists_requirement806 * @function xpc_connection_set_peer_entitlement_exists_requirement
795 * Requires that the connection peer has the specified entitlement807 * Requires that the connection peer has the specified entitlement.
796 *808 *
797 * @param connection809 * @param connection
798 * The connection object which is to be modified810 * The connection object which is to be modified.
799 *811 *
800 * @param entitlement812 * @param entitlement
801 * The entitlement the peer must have813 * The entitlement the peer must have.
802 * It is safe to deallocate the entitlement string after calling `xpc_connection_set_peer_entitlement_exists_requirement`814 * It is safe to deallocate the entitlement string after calling `xpc_connection_set_peer_entitlement_exists_requirement`.
803 *815 *
804 * @result816 * @result
805 * 0 on success, non-zero on error817 * 0 on success, non-zero on error
...@@ -824,17 +836,17 @@ xpc_connection_set_peer_entitlement_exists_requirement(xpc_connection_t connecti...@@ -824,17 +836,17 @@ xpc_connection_set_peer_entitlement_exists_requirement(xpc_connection_t connecti
824836
825/*!837/*!
826 * @function xpc_connection_set_peer_entitlement_matches_value_requirement838 * @function xpc_connection_set_peer_entitlement_matches_value_requirement
827 * Requires that the connection peer has the specified entitlement with the matching value839 * Requires that the connection peer has the specified entitlement with the matching value.
828 *840 *
829 * @param connection841 * @param connection
830 * The connection object which is to be modified842 * The connection object which is to be modified.
831 *843 *
832 * @param entitlement844 * @param entitlement
833 * The entitlement the peer must have845 * 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`846 * It is safe to deallocate the entitlement string after calling `xpc_connection_set_peer_entitlement_matches_value_requirement`.
835 *847 *
836 * @param value848 * @param value
837 * The value that the entitlement must match849 * The value that the entitlement must match.
838 * It is safe to deallocate the value object after calling850 * It is safe to deallocate the value object after calling
839 * `xpc_connection_set_peer_entitlement_matches_value_requirement`.851 * `xpc_connection_set_peer_entitlement_matches_value_requirement`.
840 * Valid xpc types for this object are `XPC_TYPE_BOOL`, `XPC_TYPE_STRING` and `XPC_TYPE_INT64`.852 * 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...@@ -863,14 +875,14 @@ xpc_connection_set_peer_entitlement_matches_value_requirement(xpc_connection_t c
863/*!875/*!
864 * @function xpc_connection_set_peer_team_identity_requirement876 * @function xpc_connection_set_peer_team_identity_requirement
865 * Requires that the connection peer has the specified identity and is signed with the same team identifier877 * Requires that the connection peer has the specified identity and is signed with the same team identifier
866 * as the current process878 * as the current process.
867 *879 *
868 * @param connection880 * @param connection
869 * The connection object which is to be modified881 * The connection object which is to be modified.
870 *882 *
871 * @param signing_identifier883 * @param signing_identifier
872 * The optional signing identifier the peer must have884 * 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`885 * It is safe to deallocate the signing identifier string after calling `xpc_connection_set_peer_identity_requirement`.
874 *886 *
875 * @result887 * @result
876 * 0 on success, non-zero on error888 * 0 on success, non-zero on error
...@@ -879,7 +891,7 @@ xpc_connection_set_peer_entitlement_matches_value_requirement(xpc_connection_t c...@@ -879,7 +891,7 @@ xpc_connection_set_peer_entitlement_matches_value_requirement(xpc_connection_t c
879 * This function will return an error promptly if the identity requirement is invalid.891 * This function will return an error promptly if the identity requirement is invalid.
880 *892 *
881 * The peer process must be signed as either a Testflight app or an App store app,893 * 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 distributed894 * or be signed by an Apple-issued development certificate, an enterprise distributed
883 * certificate (embedded only), or a Developer ID certificate (macOS only)895 * certificate (embedded only), or a Developer ID certificate (macOS only)
884 *896 *
885 * It is a programming error to call multiple of the `xpc_connection_set_peer_*_requirement` family of functions on the same897 * 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...@@ -899,14 +911,14 @@ xpc_connection_set_peer_team_identity_requirement(xpc_connection_t connection, c
899911
900/*!912/*!
901 * @function xpc_connection_set_peer_platform_identity_requirement913 * @function xpc_connection_set_peer_platform_identity_requirement
902 * Requires that the connection peer has the specified identity and is signed by Apple914 * Requires that the connection peer has the specified identity and is signed by Apple.
903 *915 *
904 * @param connection916 * @param connection
905 * The connection object which is to be modified917 * The connection object which is to be modified.
906 *918 *
907 * @param signing_identifier919 * @param signing_identifier
908 * The optional signing identifier the peer must have. If not specified, this function ensures that the peer is signed by Apple920 * 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`921 * It is safe to deallocate the signing identifier string after calling `xpc_connection_set_peer_identity_requirement`.
910 *922 *
911 * @result923 * @result
912 * 0 on success, non-zero on error924 * 0 on success, non-zero on error
...@@ -934,14 +946,14 @@ xpc_connection_set_peer_platform_identity_requirement(xpc_connection_t connectio...@@ -934,14 +946,14 @@ xpc_connection_set_peer_platform_identity_requirement(xpc_connection_t connectio
934946
935/*!947/*!
936 * @function xpc_connection_set_peer_lightweight_code_requirement948 * @function xpc_connection_set_peer_lightweight_code_requirement
937 * Requires that the connection peer has the specified lightweight code requirement949 * Requires that the connection peer has the specified lightweight code requirement.
938 *950 *
939 * @param connection951 * @param connection
940 * The connection object which is to be modified952 * The connection object which is to be modified.
941 *953 *
942 * @param lwcr954 * @param lwcr
943 * The lightweight code requirement the peer must have955 * 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`956 * It is safe to deallocate the lightweight code requirement object after calling `xpc_connection_set_peer_lightweight_code_requirement`.
945 *957 *
946 * @result958 * @result
947 * 0 on success, non-zero on error959 * 0 on success, non-zero on error
...@@ -982,14 +994,14 @@ xpc_connection_set_peer_lightweight_code_requirement(xpc_connection_t connection...@@ -982,14 +994,14 @@ xpc_connection_set_peer_lightweight_code_requirement(xpc_connection_t connection
982994
983/*!995/*!
984 * @function xpc_connection_set_peer_requirement996 * @function xpc_connection_set_peer_requirement
985 * Requires that the connection peer has the specified requirement997 * Requires that the connection peer has the specified requirement.
986 *998 *
987 * @param connection999 * @param connection
988 * The connection object which is to be modified1000 * The connection object which is to be modified.
989 *1001 *
990 * @param peer_requirement1002 * @param peer_requirement
991 * The requirement the peer must have1003 * The requirement the peer must have.
992 * It is safe to deallocate the peer requirement after calling `xpc_connection_set_peer_requirement`1004 * It is safe to deallocate the peer requirement after calling `xpc_connection_set_peer_requirement`.
993 *1005 *
994 * @discussion1006 * @discussion
995 * It is a programming error to call multiple of the `xpc_connection_set_peer_*_requirement` family of functions on the same1007 * 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,...@@ -1012,10 +1024,10 @@ xpc_connection_set_peer_requirement(xpc_connection_t connection,
1012 * Returns a description of why the connection was invalidated.1024 * Returns a description of why the connection was invalidated.
1013 *1025 *
1014 * @param connection1026 * @param connection
1015 * The connection object to inspect1027 * The connection object to inspect.
1016 *1028 *
1017 * @result1029 * @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.
1019 */1031 */
1020API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), watchos(8.0))1032API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), watchos(8.0))
1021XPC_EXPORT XPC_NONNULL1 XPC_WARN_RESULT1033XPC_EXPORT XPC_NONNULL1 XPC_WARN_RESULT
lib/libc/include/any-macos-any/xpc/listener.h+17-9
...@@ -21,7 +21,7 @@ __BEGIN_DECLS...@@ -21,7 +21,7 @@ __BEGIN_DECLS
21 * Listeners represent the server side variant of an XPC Session.21 * Listeners represent the server side variant of an XPC Session.
22 *22 *
23 * Listeners are activated and then begin receiving `xpc_session_t` from peers attempting to23 * Listeners are activated and then begin receiving `xpc_session_t` from peers attempting to
24 * connect to the server24 * connect to the server.
25 *25 *
26 */26 */
27OS_OBJECT_DECL_SENDABLE_CLASS(xpc_listener);27OS_OBJECT_DECL_SENDABLE_CLASS(xpc_listener);
...@@ -38,10 +38,10 @@ OS_OBJECT_DECL_SENDABLE_CLASS(xpc_listener);...@@ -38,10 +38,10 @@ OS_OBJECT_DECL_SENDABLE_CLASS(xpc_listener);
38 * {@link xpc_listener_activate} before it can be used.38 * {@link xpc_listener_activate} before it can be used.
39 *39 *
40 * @const XPC_LISTENER_CREATE_FORCE_MACH40 * @const XPC_LISTENER_CREATE_FORCE_MACH
41 * Optional key to indicate to the runtime that this listener is for a Mach Service41 * Optional key to indicate to the runtime that this listener is for a Mach Service.
42 *42 *
43 * @const XPC_LISTENER_CREATE_FORCE_XPCSERVICE43 * @const XPC_LISTENER_CREATE_FORCE_XPCSERVICE
44 * Optional key to indicate to the runtime that this listener is for a XPCService endpoint44 * Optional key to indicate to the runtime that this listener is for a XPCService endpoint.
45 */45 */
46XPC_SWIFT_NOEXPORT46XPC_SWIFT_NOEXPORT
47XPC_FLAGS_ENUM(xpc_listener_create_flags, uint64_t,47XPC_FLAGS_ENUM(xpc_listener_create_flags, uint64_t,
...@@ -76,7 +76,7 @@ xpc_listener_copy_description(xpc_listener_t listener);...@@ -76,7 +76,7 @@ xpc_listener_copy_description(xpc_listener_t listener);
76#pragma mark Server Session Creation76#pragma mark Server Session Creation
77/*!77/*!
78 * @function xpc_listener_create78 * @function xpc_listener_create
79 * Creates a listener with the service defined by the provided name79 * Creates a listener with the service defined by the provided name.
80 *80 *
81 * @param service81 * @param service
82 * The Mach service or XPC Service name to create the listener with.82 * The Mach service or XPC Service name to create the listener with.
...@@ -91,9 +91,14 @@ xpc_listener_copy_description(xpc_listener_t listener);...@@ -91,9 +91,14 @@ xpc_listener_copy_description(xpc_listener_t listener);
91 * Additional attributes to create the listener.91 * Additional attributes to create the listener.
92 *92 *
93 * @param incoming_session_handler93 * @param incoming_session_handler
94 * The handler block to be called when a peer is attempting to establish a94 * The handler block to be called when a peer is attempting to establish a
95 * connection with this listener. The incoming session handler is mandatory.95 * connection with this listener. The incoming session handler is mandatory.
96 *96 *
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 *
97 * @param error_out102 * @param error_out
98 * An out-parameter that, if set and in the event of an error, will point to an103 * An out-parameter that, if set and in the event of an error, will point to an
99 * {@link xpc_rich_error_t} describing the details of any errors that occurred.104 * {@link xpc_rich_error_t} describing the details of any errors that occurred.
...@@ -176,17 +181,20 @@ xpc_listener_cancel(xpc_listener_t listener);...@@ -176,17 +181,20 @@ xpc_listener_cancel(xpc_listener_t listener);
176181
177/*!182/*!
178 * @function xpc_listener_reject_peer183 * @function xpc_listener_reject_peer
179 * Rejects the incoming peer session184 * Rejects the incoming peer session.
180 *185 *
181 * @param peer186 * @param peer
182 * The peer session object to reject. This must be a session that was an argument187 * The peer session object to reject. This must be a session that was an argument
183 * from an incoming session handler block188 * from an incoming session handler block.
184 *189 *
185 * @param reason190 * @param reason
186 * The reason that the peer was rejected191 * The reason that the peer was rejected.
187 *192 *
188 * @discussion193 * @discussion
189 * The peer session will be cancelled and cannot be used after it has been rejected194 * 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.
190 */198 */
191API_AVAILABLE(macos(14.0), macCatalyst(17.0))199API_AVAILABLE(macos(14.0), macCatalyst(17.0))
192API_UNAVAILABLE(ios, tvos, watchos)200API_UNAVAILABLE(ios, tvos, watchos)
lib/libc/include/any-macos-any/xpc/xpc.h+55-40
...@@ -221,7 +221,7 @@ XPC_TYPE(_xpc_type_date);...@@ -221,7 +221,7 @@ XPC_TYPE(_xpc_type_date);
221221
222/*!222/*!
223 * @define XPC_TYPE_DATA223 * @define XPC_TYPE_DATA
224 * A type representing a an arbitrary buffer of bytes.224 * A type representing an arbitrary buffer of bytes.
225 */225 */
226#define XPC_TYPE_DATA (&_xpc_type_data)226#define XPC_TYPE_DATA (&_xpc_type_data)
227__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)227__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
...@@ -239,7 +239,7 @@ XPC_TYPE(_xpc_type_string);...@@ -239,7 +239,7 @@ XPC_TYPE(_xpc_type_string);
239239
240/*!240/*!
241 * @define XPC_TYPE_UUID241 * @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).
243 */243 */
244#define XPC_TYPE_UUID (&_xpc_type_uuid)244#define XPC_TYPE_UUID (&_xpc_type_uuid)
245__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)245__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
...@@ -487,7 +487,7 @@ xpc_copy(xpc_object_t object);...@@ -487,7 +487,7 @@ xpc_copy(xpc_object_t object);
487 * Returns true if the objects are equal, otherwise false. Two objects must be487 * Returns true if the objects are equal, otherwise false. Two objects must be
488 * of the same type in order to be equal.488 * of the same type in order to be equal.
489 *489 *
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
491 * same indexes. For two dictionaries to be equal, they must contain the same491 * same indexes. For two dictionaries to be equal, they must contain the same
492 * values for the same keys.492 * values for the same keys.
493 *493 *
...@@ -513,8 +513,8 @@ xpc_equal(xpc_object_t object1, xpc_object_t object2);...@@ -513,8 +513,8 @@ xpc_equal(xpc_object_t object1, xpc_object_t object2);
513 * The calculated hash value.513 * The calculated hash value.
514 *514 *
515 * @discussion515 * @discussion
516 * Note that the computed hash values for any particular type and value of an 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 be517 * object can change across releases and platforms and should not be
518 * assumed to be constant across all time and space or stored persistently.518 * assumed to be constant across all time and space or stored persistently.
519 */519 */
520__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)520__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
...@@ -567,7 +567,7 @@ xpc_null_create(void);...@@ -567,7 +567,7 @@ xpc_null_create(void);
567 * The Boolean primitive value which is to be boxed.567 * The Boolean primitive value which is to be boxed.
568 *568 *
569 * @result569 * @result
570 * A new Boolean object. 570 * A new Boolean object.
571 */571 */
572__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)572__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
573XPC_EXPORT XPC_RETURNS_RETAINED XPC_WARN_RESULT573XPC_EXPORT XPC_RETURNS_RETAINED XPC_WARN_RESULT
...@@ -710,7 +710,8 @@ xpc_double_get_value(xpc_object_t xdouble);...@@ -710,7 +710,8 @@ xpc_double_get_value(xpc_object_t xdouble);
710 * @param interval710 * @param interval
711 * The date interval which is to be boxed. Negative values indicate the number711 * The date interval which is to be boxed. Negative values indicate the number
712 * of nanoseconds before the epoch. Positive values indicate the number of712 * 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.
714 *715 *
715 * @result716 * @result
716 * A new date object.717 * A new date object.
...@@ -745,7 +746,8 @@ xpc_date_create_from_current(void);...@@ -745,7 +746,8 @@ xpc_date_create_from_current(void);
745 *746 *
746 * @result747 * @result
747 * The underlying date interval or 0 if the given object was not an XPC date748 * 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.
749 */751 */
750__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)752__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
751XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1753XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1
...@@ -768,7 +770,7 @@ xpc_date_get_value(xpc_object_t xdate);...@@ -768,7 +770,7 @@ xpc_date_get_value(xpc_object_t xdate);
768 * The number of bytes which are to be boxed.770 * The number of bytes which are to be boxed.
769 *771 *
770 * @result772 * @result
771 * A new data object. 773 * A new data object.
772 *774 *
773 * @discussion775 * @discussion
774 * This method will copy the buffer given into internal storage. After calling776 * 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)...@@ -791,7 +793,7 @@ xpc_data_create(const void * _Nullable XPC_SIZEDBY(length) bytes, size_t length)
791 * is retained by the data object.793 * is retained by the data object.
792 *794 *
793 * @result795 * @result
794 * A new data object. 796 * A new data object.
795 *797 *
796 * @discussion798 * @discussion
797 * The object returned by this method will refer to the buffer returned by799 * 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);...@@ -843,7 +845,7 @@ xpc_data_get_bytes_ptr(xpc_object_t xdata);
843 * @function xpc_data_get_bytes845 * @function xpc_data_get_bytes
844 *846 *
845 * @abstract847 * @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.
847 *849 *
848 * @param xdata850 * @param xdata
849 * The data object which is to be examined.851 * The data object which is to be examined.
...@@ -852,7 +854,7 @@ xpc_data_get_bytes_ptr(xpc_object_t xdata);...@@ -852,7 +854,7 @@ xpc_data_get_bytes_ptr(xpc_object_t xdata);
852 * The buffer in which to copy the data object's bytes.854 * The buffer in which to copy the data object's bytes.
853 *855 *
854 * @param off856 * @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
856 * length of the data element, nothing is copied. Pass 0 to start the copy858 * length of the data element, nothing is copied. Pass 0 to start the copy
857 * at the beginning of the buffer.859 * at the beginning of the buffer.
858 *860 *
...@@ -880,7 +882,7 @@ xpc_data_get_bytes(xpc_object_t xdata,...@@ -880,7 +882,7 @@ xpc_data_get_bytes(xpc_object_t xdata,
880 * The C-string which is to be boxed.882 * The C-string which is to be boxed.
881 *883 *
882 * @result884 * @result
883 * A new string object. 885 * A new string object.
884 */886 */
885__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)887__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
886XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1888XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1
...@@ -902,7 +904,7 @@ xpc_string_create(const char *string);...@@ -902,7 +904,7 @@ xpc_string_create(const char *string);
902 * The arguments which correspond to those specified in the format string.904 * The arguments which correspond to those specified in the format string.
903 *905 *
904 * @result906 * @result
905 * A new string object. 907 * A new string object.
906 */908 */
907__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)909__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
908XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1910XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1
...@@ -926,7 +928,7 @@ xpc_string_create_with_format(const char *fmt, ...);...@@ -926,7 +928,7 @@ xpc_string_create_with_format(const char *fmt, ...);
926 * string.928 * string.
927 *929 *
928 * @result930 * @result
929 * A new string object. 931 * A new string object.
930 */932 */
931__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)933__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
932XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1934XPC_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);...@@ -944,7 +946,7 @@ xpc_string_create_with_format_and_arguments(const char *fmt, va_list ap);
944 * The string object which is to be examined.946 * The string object which is to be examined.
945 *947 *
946 * @result948 * @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
948 * if the given object was not an XPC string object.950 * if the given object was not an XPC string object.
949 */951 */
950__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)952__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
...@@ -982,7 +984,7 @@ xpc_string_get_string_ptr(xpc_object_t xstring);...@@ -982,7 +984,7 @@ xpc_string_get_string_ptr(xpc_object_t xstring);
982 * The UUID which is to be boxed.984 * The UUID which is to be boxed.
983 *985 *
984 * @result986 * @result
985 * A new UUID object. 987 * A new UUID object.
986 */988 */
987__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)989__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
988XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1990XPC_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);...@@ -1444,9 +1446,11 @@ xpc_array_set_double(xpc_object_t xarray, size_t index, double value);
1444 * undefined.1446 * undefined.
1445 *1447 *
1446 * @param value1448 * @param value
1447 * The date value to insert, represented as an <code>int64_t</code>. After 1449 * The date value to insert, represented as an <code>int64_t</code>. The
1448 * calling this method, the XPC object corresponding to the primitive value 1450 * interval is with respect to the Unix epoch. XPC dates are in Unix time and
1449 * inserted may be safely retrieved with {@link xpc_array_get_value()}.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()}.
1450 */1454 */
1451__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)1455__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
1452XPC_EXPORT XPC_NONNULL11456XPC_EXPORT XPC_NONNULL1
...@@ -1624,7 +1628,7 @@ xpc_array_get_bool(xpc_object_t xarray, size_t index);...@@ -1624,7 +1628,7 @@ xpc_array_get_bool(xpc_object_t xarray, size_t index);
1624 *1628 *
1625 * @result1629 * @result
1626 * The underlying <code>int64_t</code> value at the specified index. 0 if the1630 * 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.
1628 */1632 */
1629__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)1633__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
1630XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL11634XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1
...@@ -1692,8 +1696,10 @@ xpc_array_get_double(xpc_object_t xarray, size_t index);...@@ -1692,8 +1696,10 @@ xpc_array_get_double(xpc_object_t xarray, size_t index);
1692 * index is outside that range, the behavior is undefined.1696 * index is outside that range, the behavior is undefined.
1693 *1697 *
1694 * @result1698 * @result
1695 * The underlying date interval at the specified index. 0 if the value at the1699 * The underlying date interval at the specified index. The interval is with
1696 * specified index is not a date value.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.
1697 */1703 */
1698__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)1704__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
1699XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL11705XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1
...@@ -1715,7 +1721,7 @@ xpc_array_get_date(xpc_object_t xarray, size_t index);...@@ -1715,7 +1721,7 @@ xpc_array_get_date(xpc_object_t xarray, size_t index);
1715 * index is outside that range, the behavior is undefined.1721 * index is outside that range, the behavior is undefined.
1716 *1722 *
1717 * @param length1723 * @param length
1718 * Upon return output, will contain the length of the data corresponding to the1724 * Upon return, will contain the length of the data corresponding to the
1719 * specified key.1725 * specified key.
1720 *1726 *
1721 * @result1727 * @result
...@@ -1842,7 +1848,7 @@ xpc_array_create_connection(xpc_object_t xarray, size_t index);...@@ -1842,7 +1848,7 @@ xpc_array_create_connection(xpc_object_t xarray, size_t index);
1842 * 1848 *
1843 * @result1849 * @result
1844 * The object at the specified index within the array or NULL if the given1850 * 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 was1851 * object was not an XPC array or if the value at the specified index was
1846 * not a dictionary.1852 * not a dictionary.
1847 *1853 *
1848 * @discussion1854 * @discussion
...@@ -1869,7 +1875,7 @@ xpc_array_get_dictionary(xpc_object_t xarray, size_t index);...@@ -1869,7 +1875,7 @@ xpc_array_get_dictionary(xpc_object_t xarray, size_t index);
1869 * 1875 *
1870 * @result1876 * @result
1871 * The object at the specified index within the array or NULL if the given1877 * 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 was1878 * object was not an XPC array or if the value at the specified index was
1873 * not an array.1879 * not an array.
1874 *1880 *
1875 * @discussion1881 * @discussion
...@@ -1922,7 +1928,7 @@ typedef bool (^xpc_dictionary_applier_t)(const char * _Nonnull key,...@@ -1922,7 +1928,7 @@ typedef bool (^xpc_dictionary_applier_t)(const char * _Nonnull key,
1922 * the actual count of values, only that many key/value pairs will be inserted1928 * the actual count of values, only that many key/value pairs will be inserted
1923 * into the dictionary.1929 * into the dictionary.
1924 *1930 *
1925 * If the count is more than the the actual count of key/value pairs, the1931 * If the count is more than the actual count of key/value pairs, the
1926 * behavior is undefined. If one array is NULL and the other is not, the 1932 * behavior is undefined. If one array is NULL and the other is not, the
1927 * behavior is undefined. If both arrays are NULL and the count is non-0, the1933 * behavior is undefined. If both arrays are NULL and the count is non-0, the
1928 * behavior is undefined.1934 * behavior is undefined.
...@@ -2040,7 +2046,7 @@ xpc_dictionary_get_value(xpc_object_t xdict, const char *key);...@@ -2040,7 +2046,7 @@ xpc_dictionary_get_value(xpc_object_t xdict, const char *key);
2040 * The dictionary object which is to be examined.2046 * The dictionary object which is to be examined.
2041 *2047 *
2042 * @result2048 * @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
2044 * not an XPC dictionary. Calling xpc_dictionary_set_value() with a non-NULL2050 * not an XPC dictionary. Calling xpc_dictionary_set_value() with a non-NULL
2045 * value will increment the count. Calling xpc_dictionary_set_value() with a 2051 * value will increment the count. Calling xpc_dictionary_set_value() with a
2046 * NULL value will decrement the count.2052 * NULL value will decrement the count.
...@@ -2192,18 +2198,20 @@ xpc_dictionary_set_double(xpc_object_t xdict, const char *key, double value);...@@ -2192,18 +2198,20 @@ xpc_dictionary_set_double(xpc_object_t xdict, const char *key, double value);
2192 * @function xpc_dictionary_set_date2198 * @function xpc_dictionary_set_date
2193 *2199 *
2194 * @abstract2200 * @abstract
2195 * Inserts a date (primitive) value into a dictionary.2201 * Inserts a date value into a dictionary.
2196 *2202 *
2197 * @param xdict2203 * @param xdict
2198 * The dictionary which is to be manipulated.2204 * The dictionary which is to be manipulated.
2199 *2205 *
2200 * @param key2206 * @param key
2201 * The key for which the primitive value shall be set.2207 * The key for which the value shall be set.
2202 *2208 *
2203 * @param value2209 * @param value
2204 * The date value to insert. After calling this method, the XPC object2210 * The date value to insert, represented as an <code>int64_t</code>. The
2205 * corresponding to the primitive value inserted may be safely retrieved with2211 * interval is with respect to the Unix epoch. XPC dates are in Unix time and
2206 * {@link xpc_dictionary_get_value()}.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()}.
2207 */2215 */
2208__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)2216__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
2209XPC_EXPORT XPC_NONNULL1 XPC_NONNULL22217XPC_EXPORT XPC_NONNULL1 XPC_NONNULL2
...@@ -2263,7 +2271,7 @@ xpc_dictionary_set_string(xpc_object_t xdict, const char *key,...@@ -2263,7 +2271,7 @@ xpc_dictionary_set_string(xpc_object_t xdict, const char *key,
2263 * @function xpc_dictionary_set_uuid2271 * @function xpc_dictionary_set_uuid
2264 *2272 *
2265 * @abstract2273 * @abstract
2266 * Inserts a uuid (primitive) value into an array.2274 * Inserts a UUID (primitive) value into a dictionary.
2267 *2275 *
2268 * @param xdict2276 * @param xdict
2269 * The dictionary which is to be manipulated.2277 * The dictionary which is to be manipulated.
...@@ -2381,7 +2389,7 @@ xpc_dictionary_get_bool(xpc_object_t xdict, const char *key);...@@ -2381,7 +2389,7 @@ xpc_dictionary_get_bool(xpc_object_t xdict, const char *key);
2381 * @function xpc_dictionary_get_int642389 * @function xpc_dictionary_get_int64
2382 *2390 *
2383 * @abstract2391 * @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.
2385 *2393 *
2386 * @param xdict2394 * @param xdict
2387 * The dictionary object which is to be examined.2395 * The dictionary object which is to be examined.
...@@ -2403,7 +2411,7 @@ xpc_dictionary_get_int64(xpc_object_t xdict, const char *key);...@@ -2403,7 +2411,7 @@ xpc_dictionary_get_int64(xpc_object_t xdict, const char *key);
2403 * @function xpc_dictionary_get_uint642411 * @function xpc_dictionary_get_uint64
2404 *2412 *
2405 * @abstract2413 * @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.
2407 *2415 *
2408 * @param xdict2416 * @param xdict
2409 * The dictionary object which is to be examined.2417 * The dictionary object which is to be examined.
...@@ -2456,9 +2464,10 @@ xpc_dictionary_get_double(xpc_object_t xdict, const char *key);...@@ -2456,9 +2464,10 @@ xpc_dictionary_get_double(xpc_object_t xdict, const char *key);
2456 * The key whose value is to be obtained.2464 * The key whose value is to be obtained.
2457 *2465 *
2458 * @result2466 * @result
2459 * The underlying date interval for the specified key. 0 if the value for the2467 * The underlying date interval for the specified key. The interval is with
2460 * specified key is not a date value or if there is no value for the specified2468 * respect to the Unix epoch. XPC dates are in Unix time and are thus unaware
2461 * key.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.
2462 */2471 */
2463__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)2472__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
2464XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL_ALL2473XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL_ALL
...@@ -2674,7 +2683,13 @@ xpc_dictionary_copy_mach_send(xpc_object_t xdict, const char *key);...@@ -2674,7 +2683,13 @@ xpc_dictionary_copy_mach_send(xpc_object_t xdict, const char *key);
2674 * bundle's Info.plist under the XPCService dictionary.2683 * bundle's Info.plist under the XPCService dictionary.
2675 *2684 *
2676 * @param handler2685 * @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.
2678 */2693 */
2679API_AVAILABLE(macos(10.7), macCatalyst(5.0))2694API_AVAILABLE(macos(10.7), macCatalyst(5.0))
2680API_UNAVAILABLE(ios)2695API_UNAVAILABLE(ios)