⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 286032 in webkit


Ignore:
Timestamp:
Nov 18, 2021, 3:01:57 PM (5 years ago)
Author:
pvollan@apple.com
Message:

Add syscall telemetry in the Networking process
https://bugs.webkit.org/show_bug.cgi?id=233203
<rdar://problem/85504351>

Reviewed by Brent Fulgham.

Add syscall telemetry in the Networking process on macOS and iOS.

  • NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
  • Scripts/process-entitlements.sh:
Location:
trunk/Source/WebKit
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r286031 r286032  
     12021-11-18  Per Arne Vollan  <pvollan@apple.com>
     2
     3        Add syscall telemetry in the Networking process
     4        https://bugs.webkit.org/show_bug.cgi?id=233203
     5        <rdar://problem/85504351>
     6
     7        Reviewed by Brent Fulgham.
     8
     9        Add syscall telemetry in the Networking process on macOS and iOS.
     10
     11        * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
     12        * Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
     13        * Scripts/process-entitlements.sh:
     14
    1152021-11-18  Per Arne  <pvollan@apple.com>
    216
  • trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in

    r286010 r286032  
    570570        SYS_ulock_wake
    571571        SYS_workq_kernreturn)))
     572
     573#if HAVE(SANDBOX_MESSAGE_FILTERING)
     574(when (and (equal? (param "ENABLE_SANDBOX_MESSAGE_FILTER") "YES") (defined? 'mach-kernel-endpoint))
     575    (allow mach-kernel-endpoint
     576        (apply-message-filter
     577            (allow mach-message-send (with telemetry)))))
     578           
     579(when (and (equal? (param "ENABLE_SANDBOX_MESSAGE_FILTER") "YES") (defined? 'syscall-mach))
     580    (allow syscall-mach (with report) (with telemetry))
     581    (allow syscall-mach
     582        (machtrap-number
     583            MSC__kernelrpc_mach_port_allocate_trap
     584            MSC__kernelrpc_mach_port_construct_trap
     585            MSC__kernelrpc_mach_port_deallocate_trap
     586            MSC__kernelrpc_mach_port_destruct_trap
     587            MSC__kernelrpc_mach_port_extract_member_trap
     588            MSC__kernelrpc_mach_port_guard_trap
     589            MSC__kernelrpc_mach_port_insert_member_trap
     590            MSC__kernelrpc_mach_port_mod_refs_trap
     591            MSC__kernelrpc_mach_port_request_notification_trap
     592            MSC__kernelrpc_mach_port_type_trap
     593            MSC__kernelrpc_mach_port_unguard_trap
     594            MSC__kernelrpc_mach_vm_allocate_trap
     595            MSC__kernelrpc_mach_vm_deallocate_trap
     596            MSC__kernelrpc_mach_vm_map_trap
     597            MSC__kernelrpc_mach_vm_protect_trap
     598            MSC__kernelrpc_mach_vm_purgable_control_trap
     599            MSC_host_create_mach_voucher_trap
     600            MSC_host_self_trap
     601            MSC_mach_generate_activity_id
     602            MSC_mach_msg_trap
     603            MSC_mach_reply_port
     604            MSC_mach_voucher_extract_attr_recipe_trap
     605            MSC_mk_timer_arm
     606            MSC_mk_timer_cancel
     607            MSC_mk_timer_create
     608            MSC_semaphore_signal_trap
     609            MSC_semaphore_wait_trap
     610            MSC_swtch_pri
     611            MSC_syscall_thread_switch
     612            MSC_task_self_trap
     613            MSC_thread_get_special_reply_port)))
     614#endif // HAVE(SANDBOX_MESSAGE_FILTERING)
  • trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb

    r286022 r286032  
    737737        SYS_write_nocancel
    738738        SYS_writev)))
     739
     740(when (defined? 'syscall-mach)
     741    (allow syscall-mach (with report) (with telemetry))
     742    (allow syscall-mach
     743        (machtrap-number
     744            MSC__kernelrpc_mach_port_allocate_trap
     745            MSC__kernelrpc_mach_port_construct_trap
     746            MSC__kernelrpc_mach_port_deallocate_trap
     747            MSC__kernelrpc_mach_port_destruct_trap
     748            MSC__kernelrpc_mach_port_extract_member_trap
     749            MSC__kernelrpc_mach_port_guard_trap
     750            MSC__kernelrpc_mach_port_insert_member_trap
     751            MSC__kernelrpc_mach_port_insert_right_trap
     752            MSC__kernelrpc_mach_port_mod_refs_trap
     753            MSC__kernelrpc_mach_port_request_notification_trap
     754            MSC__kernelrpc_mach_port_type_trap
     755            MSC__kernelrpc_mach_port_unguard_trap
     756            MSC__kernelrpc_mach_vm_allocate_trap
     757            MSC__kernelrpc_mach_vm_deallocate_trap
     758            MSC__kernelrpc_mach_vm_map_trap
     759            MSC__kernelrpc_mach_vm_protect_trap
     760            MSC__kernelrpc_mach_vm_purgable_control_trap
     761            MSC_host_create_mach_voucher_trap
     762            MSC_host_self_trap
     763            MSC_mach_generate_activity_id
     764            MSC_mach_msg_trap
     765            MSC_mach_reply_port
     766            MSC_mach_timebase_info_trap
     767            MSC_mach_voucher_extract_attr_recipe_trap
     768            MSC_mk_timer_arm
     769            MSC_mk_timer_cancel
     770            MSC_mk_timer_create
     771            MSC_mk_timer_destroy
     772            MSC_semaphore_signal_trap
     773            MSC_semaphore_wait_trap
     774            MSC_syscall_thread_switch
     775            MSC_task_self_trap
     776            MSC_thread_get_special_reply_port)))
     777
     778(when (defined? 'mach-kernel-endpoint)
     779    (allow mach-kernel-endpoint
     780        (apply-message-filter
     781            (allow mach-message-send (with report) (with telemetry)))))
  • trunk/Source/WebKit/Scripts/process-entitlements.sh

    r285886 r286032  
    115115        if (( "${TARGET_MAC_OS_X_VERSION_MAJOR}" >= 110000 ))
    116116        then
     117            plistbuddy Add :com.apple.private.security.message-filter bool YES
    117118            plistbuddy Add :com.apple.private.tcc.manager.check-by-audit-token array
    118119            plistbuddy Add :com.apple.private.tcc.manager.check-by-audit-token:0 string kTCCServiceWebKitIntelligentTrackingPrevention
     
    326327    plistbuddy Add :com.apple.private.memory.ownership_transfer bool YES
    327328    plistbuddy Add :com.apple.private.network.socket-delegate bool YES
     329    plistbuddy Add :com.apple.private.security.message-filter bool YES
    328330    plistbuddy Add :com.apple.private.webkit.use-xpc-endpoint bool YES
    329331    plistbuddy Add :com.apple.runningboard.assertions.webkit bool YES
     
    407409    plistbuddy Add :com.apple.private.network.socket-delegate bool YES
    408410    plistbuddy Add :com.apple.private.webkit.use-xpc-endpoint bool YES
     411    plistbuddy Add :com.apple.private.security.message-filter bool YES
    409412    plistbuddy Add :com.apple.runningboard.assertions.webkit bool YES
    410413
Note: See TracChangeset for help on using the changeset viewer.