Home | History | Annotate | Download | only in public
      1 # Any toolbox command run by init.
      2 # At present, the only known usage is for running mkswap via fs_mgr.
      3 # Do NOT use this domain for toolbox when run by any other domain.
      4 type toolbox, domain;
      5 type toolbox_exec, exec_type, file_type;
      6 
      7 # /dev/__null__ created by init prior to policy load,
      8 # open fd inherited by fsck.
      9 allow toolbox tmpfs:chr_file { read write ioctl };
     10 
     11 # Inherit and use pty created by android_fork_execvp_ext().
     12 allow toolbox devpts:chr_file { read write getattr ioctl };
     13 
     14 # mkswap-specific.
     15 # Read/write block devices used for swap partitions.
     16 # Assign swap_block_device type any such partition in your
     17 # device/<vendor>/<product>/sepolicy/file_contexts file.
     18 allow toolbox block_device:dir search;
     19 allow toolbox swap_block_device:blk_file rw_file_perms;
     20 
     21 # Only allow entry from init via the toolbox binary.
     22 neverallow { domain -init } toolbox:process transition;
     23 neverallow * toolbox:process dyntransition;
     24 neverallow toolbox { file_type fs_type -toolbox_exec}:file entrypoint;
     25