Skip to content
Snippets Groups Projects
Commit 6c9c5888 authored by Nick Kralevich's avatar Nick Kralevich
Browse files

runas: allow pipe communication from the shell

run-as won't communicate with shell via pipes. Allow it.

  nnk@nnk:~$ adb shell "cat /dev/zero | run-as com.google.foo sh -c 'cat'"
  /system/bin/sh: cat: <stdout>: Broken pipe

  <4>[ 1485.483517] type=1400 audit(1402623577.085:25): avc: denied { read } for pid=6026 comm="run-as" path="pipe:[29823]" dev="pipefs" ino=29823 scontext=u:r:runas:s0 tcontext=u:r:shell:s0 tclass=fifo_file

read is definitely needed. Not sure about write, but adding it just
in case.

Change-Id: Ifdf838b0df79a5f1e9559af57c2d1fdb8c41a201
parent b32448c9
No related branches found
No related tags found
No related merge requests found
...@@ -4,7 +4,8 @@ type runas_exec, exec_type, file_type; ...@@ -4,7 +4,8 @@ type runas_exec, exec_type, file_type;
# ndk-gdb invokes adb shell run-as. # ndk-gdb invokes adb shell run-as.
domain_auto_trans(shell, runas_exec, runas) domain_auto_trans(shell, runas_exec, runas)
allow runas adbd:process sigchld; allow runas adbd:process sigchld;
allow runas shell:fd use; allow runas shell:fd use;
allow runas shell:fifo_file { read write };
allow runas devpts:chr_file { read write ioctl }; allow runas devpts:chr_file { read write ioctl };
# run-as reads package information. # run-as reads package information.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment