Home | History | Annotate | Download | only in sepolicy
      1 # Grant access to Qualcomm MSM Interface (QMI) radio sockets
      2 qmux_socket(rild)
      3 
      4 allow rild per_mgr_service:service_manager find;
      5 
      6 hwbinder_use(rild)
      7 add_hwservice(rild, vnd_qcril_audio_hwservice)
      8 
      9 vndbinder_use(rild)
     10 binder_call(rild, per_mgr)
     11 
     12 # callback into telephony app
     13 binder_call(rild, platform_app);
     14 
     15 allow rild netmgrd_socket:dir search;
     16 unix_socket_connect(rild, netmgrd, netmgrd)
     17 
     18 r_dir_file(rild, sysfs_type)
     19 
     20 allow rild time:unix_stream_socket connectto;
     21 # smlog_dump
     22 allow rild smlog_dump_exec:file rx_file_perms;
     23 
     24 allowxperm rild self:udp_socket ioctl priv_sock_ioctls;
     25 allow rild self:socket ioctl;
     26 allowxperm rild self:socket ioctl msm_sock_ipc_ioctls;
     27 userdebug_or_eng(`
     28   allow rild diag_device:chr_file rw_file_perms;
     29 ')
     30 userbuild(`
     31   dontaudit rild diag_device:chr_file rw_file_perms;
     32 ')
     33 
     34 # rild needs 'lock' for /vendor/qcril.db
     35 allow rild vendor_file:file { lock };
     36 
     37 # allow rild to access radio data file
     38 allow rild radio_data_file:dir rw_dir_perms;
     39 allow rild radio_data_file:file create_file_perms;
     40 
     41 # In order to be able to use system()
     42 allow rild vendor_shell_exec:file rx_file_perms;
     43 
     44 # TODO(b/36613472): Remove this once system_server,  mediaserver, bluetooth, and radio no longer
     45 # communicate with rild over sockets.
     46 typeattribute rild socket_between_core_and_vendor_violators;
     47