Commit Graph

152 Commits

Author SHA1 Message Date
Richard Haines
227fa5d597 Merge "goldfish_setup: grant ifconfig priv_sock_ioctls" am: 4a0f550cc7 am: f80ed9f08e
am: d1cb2ac13a

Change-Id: Ic908915602bfdade8e3d5fadf0197f02839ea790
2016-10-20 18:03:58 +00:00
Richard Haines
f80ed9f08e Merge "goldfish_setup: grant ifconfig priv_sock_ioctls"
am: 4a0f550cc7

Change-Id: Ie7cfadf3dd2b8e0687bcfcb8f14c5234854dc727
2016-10-20 17:47:57 +00:00
Treehugger Robot
4a0f550cc7 Merge "goldfish_setup: grant ifconfig priv_sock_ioctls" 2016-10-20 17:37:43 +00:00
Richard Haines
8a09cc2297 goldfish_setup: grant ifconfig priv_sock_ioctls
The goldfish_setup shell script needs the ability to set the interface
address via ifconfig. This requires SIOCSIFADDR plus other ioctl
permissions, therefore allow the set of priv_sock_ioctls permissions.

Addresses the following denial that stops internet access via browser:
avc: denied { ioctl } for pid=712 comm="ifconfig" path="socket:[1825]"
dev="sockfs" ino=1825 ioctlcmd=8916 scontext=u:r:goldfish_setup:s0
tcontext=u:r:goldfish_setup:s0 tclass=udp_socket permissive=0

Test: With update can access internet via browser.

Change-Id: I77a52c0b72bb0ebe9451f45c346a399c1f61672d
Signed-off-by: Richard Haines <richard_c_haines@btinternet.com>
2016-10-20 16:46:22 +01:00
Dan Willemsen
8134339d26 Merge "For emulator builds preopt system apps even if doing eng build" am: 6dfd788fda am: cb3991d670
am: 178d8647e1

Change-Id: I3a0938d14708568f21cdc3eb7eeb6d741b24e570
2016-10-19 18:18:06 +00:00
Dan Willemsen
cb3991d670 Merge "For emulator builds preopt system apps even if doing eng build"
am: 6dfd788fda

Change-Id: I5556244da69ca46583a63cfa83a321efa14b2381
2016-10-19 18:04:34 +00:00
Nikola Veljkovic
dcef8d3470 For emulator builds preopt system apps even if doing eng build
Following change disabled preopt for system apps when doing eng build:
    4df565786a

    Build: Only preopt boot images in eng builds

    As a middle way between full preopt/high performance/long builds,
    and no preopt/low performance/fast turnaround, preopt only the
    boot image in eng builds.

    I4a2692f3ce84823cd40c6b7d672fd73257739ef8

This works well for devices, but first boot on emulator takes 10+mins.
Bypass the change by forcing preopt inside the BoardConfig.

Change-Id: I58d100cd65d2a09b644a90d91261102aab31fcbb
2016-09-27 16:07:32 +00:00
Dan Stoza
8b0d255331 Remove DispSync default value/docs am: ae5e550f81 am: 92df306bd9
am: cddda45883

Change-Id: I3073c1f3b7d4de885519a9f0a9120069687a37d3
2016-09-12 18:03:38 +00:00
Dan Stoza
cddda45883 Remove DispSync default value/docs am: ae5e550f81
am: 92df306bd9

Change-Id: I0b21afde084512b622f74983456491749aa7c5a7
2016-09-12 17:51:17 +00:00
Dan Stoza
ae5e550f81 Remove DispSync default value/docs
Moves DispSync phase offset default values and documentation to
frameworks/native/services/surfaceflinger/Android.mk.

Bug: 30801895
Change-Id: I44a4355b2d112561b94ccfc6e9c3365885c205ad
2016-09-09 13:53:52 -07:00
Roozbeh Pournader
8e9eddba35 Remove last mention of EXTENDED_FONT_FOOTPRINT.
Setting EXTENDED_FONT_FOOTPRINT has been a no-op for a while, since
no one reads it anymore. Also do the same for naver-fonts, which had
also become a no-op.

Bug: 21785576
Change-Id: I3818adcbba11398024b82c2f22fe2d545b55418d
2016-06-09 17:51:16 -07:00
Nick Kralevich
80099408c9 goldfish_setup: grant /system/bin/sh exec access am: 501c88c029
am: 477ff93b14

* commit '477ff93b14ff46bef46fe7ca5242329b14328d8e':
  goldfish_setup: grant /system/bin/sh exec access

Change-Id: I0e4222bb838715423225337745537432ac57f1a0
2016-05-25 05:20:24 +00:00
Nick Kralevich
ce2e90308e goldfish_setup: grant /system/bin/sh exec access
am: 501c88c029

* commit '501c88c0290eb2308c110398f106411260863bb8':
  goldfish_setup: grant /system/bin/sh exec access

Change-Id: I9cf86d98f355342416a584ca74ac189f1873c6d7
2016-05-25 05:17:42 +00:00
Nick Kralevich
501c88c029 goldfish_setup: grant /system/bin/sh exec access
The goldfish_setup shell script needs the ability to execute
the shell script interpreter. Allow it.

Addresses the following denial:

avc: denied { getattr } for pid=1220 comm="init.goldfish.s"
path="/system/bin/sh" dev="vda" ino=442 scontext=u:r:goldfish_setup:s0
tcontext=u:object_r:shell_exec:s0 tclass=file permissive=0

Bug: 28941573
Change-Id: I22d26e90f107c8d801229354a5e0513c37e6c31d
2016-05-24 17:40:53 -07:00
Bo Hu
030f257836 Merge "Fix emulator specific SELinux denials related to qemu.gles" into nyc-dev am: 94f576d
am: 525a720

* commit '525a720a628ca425d434eec2339fa6ccfa8215a1':
  Fix emulator specific SELinux denials related to qemu.gles

Change-Id: I1944ea9d249024f477f548dce4cba5beb86218bd
2016-04-20 21:04:37 +00:00
bohu
d7f734024f Merge "Fix emulator specific SELinux denials related to qemu.gles" into nyc-dev
am: 94f576d

* commit '94f576d18cb61e672bcc849a324eab244dd4f3f8':
  Fix emulator specific SELinux denials related to qemu.gles

Change-Id: Iba1c077238ec1c41434c87e8ac96467a081383fc
2016-04-20 21:04:31 +00:00
Bo Hu
94f576d18c Merge "Fix emulator specific SELinux denials related to qemu.gles" into nyc-dev 2016-04-20 18:46:38 +00:00
bohu
bf863dbffc Fix emulator specific SELinux denials related to qemu.gles
init: avc:  denied  { set } for property=qemu.gles pid=108 uid=1003 gid=1003 scontext=u:r:bootanim:s0 tcontext=u:object_r:qemu_prop:s0 tclass=property_service permissive=1
init: avc:  denied  { set } for property=qemu.gles pid=75 uid=0 gid=0 scontext=u:r:zygote:s0 tcontext=u:object_r:qemu_prop:s0 tclass=property_service permissive=1

bug: 28221393
Change-Id: Icb0ee7fbf9a7b985f66fac087a48d9b5789e2b67
2016-04-19 15:04:58 -07:00
Nick Kralevich
6910622a70 Merge "Move sysfs_writable to emulator specific policy" am: 821e3fd
am: ef77794259

* commit 'ef77794259155f5a8bd3f5be56dcd49463d3ad65':
  Move sysfs_writable to emulator specific policy

Change-Id: Idb7c6a37c5da58450e6332ccafca83ad6754f701
2016-04-19 00:28:42 +00:00
Nick Kralevich
db411cf903 Move sysfs_writable to emulator specific policy
This type is never used in core policy, only by emulators.
Move the definition of this type to where it's used.

Bug: 28221393
Change-Id: I38dbc12dbe9813f323d4bcd5f07679db57b2fd4a
2016-04-18 15:18:09 -07:00
Nick Kralevich
1eb14d0d61 Address emulator specific SELinux denials
(cherrypicked from commit 841f6d870d)

Fix the following denials:

  avc: denied { search } for pid=222 comm="system_server"
  name="qemu_trace" dev="sysfs" ino=45 scontext=u:r:system_server:s0
  tcontext=u:object_r:sysfs_writable:s0 tclass=dir permissive=1

  avc: denied { open } for pid=222 comm="system_server"
  name="u:object_r:opengles_prop:s0" dev="tmpfs" ino=1429
  scontext=u:r:system_server:s0 tcontext=u:object_r:opengles_prop:s0
  tclass=file permissive=1

  avc: denied { read } for pid=222 comm="system_server"
  name="u:object_r:radio_noril_prop:s0" dev="tmpfs" ino=1430
  scontext=u:r:system_server:s0 tcontext=u:object_r:radio_noril_prop:s0
  tclass=file permissive=1

  avc: denied { open } for pid=222 comm="system_server"
  name="u:object_r:radio_noril_prop:s0" dev="tmpfs" ino=1430
  scontext=u:r:system_server:s0 tcontext=u:object_r:radio_noril_prop:s0
  tclass=file permissive=1

  avc: denied { getattr } for pid=222 comm="system_server"
  path="/dev/__properties__/u:object_r:radio_noril_prop:s0" dev="tmpfs"
  ino=1430 scontext=u:r:system_server:s0
  tcontext=u:object_r:radio_noril_prop:s0 tclass=file permissive=1

  avc: denied { search } for pid=424 comm="putmethod.latin"
  name="qemu_trace" dev="sysfs" ino=45
  scontext=u:r:untrusted_app:s0:c512,c768
  tcontext=u:object_r:sysfs_writable:s0 tclass=dir permissive=1

Bug: 28221393
Change-Id: I6fce1127d9d9e8bc0119bace3f142d51382401c0
2016-04-18 14:57:24 -07:00
Nick Kralevich
841f6d870d Address emulator specific SELinux denials
Fix the following denials:

  avc: denied { search } for pid=222 comm="system_server"
  name="qemu_trace" dev="sysfs" ino=45 scontext=u:r:system_server:s0
  tcontext=u:object_r:sysfs_writable:s0 tclass=dir permissive=1

  avc: denied { open } for pid=222 comm="system_server"
  name="u:object_r:opengles_prop:s0" dev="tmpfs" ino=1429
  scontext=u:r:system_server:s0 tcontext=u:object_r:opengles_prop:s0
  tclass=file permissive=1

  avc: denied { read } for pid=222 comm="system_server"
  name="u:object_r:radio_noril_prop:s0" dev="tmpfs" ino=1430
  scontext=u:r:system_server:s0 tcontext=u:object_r:radio_noril_prop:s0
  tclass=file permissive=1

  avc: denied { open } for pid=222 comm="system_server"
  name="u:object_r:radio_noril_prop:s0" dev="tmpfs" ino=1430
  scontext=u:r:system_server:s0 tcontext=u:object_r:radio_noril_prop:s0
  tclass=file permissive=1

  avc: denied { getattr } for pid=222 comm="system_server"
  path="/dev/__properties__/u:object_r:radio_noril_prop:s0" dev="tmpfs"
  ino=1430 scontext=u:r:system_server:s0
  tcontext=u:object_r:radio_noril_prop:s0 tclass=file permissive=1

  avc: denied { search } for pid=424 comm="putmethod.latin"
  name="qemu_trace" dev="sysfs" ino=45
  scontext=u:r:untrusted_app:s0:c512,c768
  tcontext=u:object_r:sysfs_writable:s0 tclass=dir permissive=1

Bug: 28221393
Change-Id: I6fce1127d9d9e8bc0119bace3f142d51382401c0
2016-04-18 13:28:04 -07:00
Prathmesh Prabhu
316654fc23 Emulator: Bump arm(64) system image partition size to 1.75 GB
Change-Id: If9ce0346ed4ca7ceab3fda217e5c9de6d89b6c94
2016-03-14 18:07:31 +00:00
bohu
37f5b608e1 emulator: allows surfaceflinger to change qemu.gles value
This is to allow surfaceflinger to always load vendor provided
egl libraries first and fall back to software renderer, and then
set the qemu.gles to correct value reflecting what libraries
are actually used.

bug: 27273457

Change-Id: Ifaca31aa2e562f50baa41fd228df9836bc3b1667
2016-02-20 01:39:27 +00:00
dcashman
cb1fb3156c Label ranchu block devices.
Address the following denials:
avc:  denied  { getattr } for  pid=1166 comm="e2fsck" path="/dev/block/vdc" dev="tmpfs" ino=2880 scontext=u:r:fsck:s0 tcontext=u:object_r:block_device:s0 tclass=blk_file permissive=0
avc:  denied  { read write } for  pid=1166 comm="e2fsck" name="vdc" dev="tmpfs" ino=2880 scontext=u:r:fsck:s0 tcontext=u:object_r:block_device:s0 tclass=blk_file permissive=0

Bug: 27224003
Change-Id: I4792420822d238e6ad1bf757634c924b95150515
2016-02-19 05:32:02 +00:00
Chih-Hung Hsieh
6dc7147fb0 Remove USE_CLANG_PLATFORM_BUILD in BoardConfig.mk
Use global default USE_CLANG_PLATFORM_BUILD set in core/envsetup.mk,
or user provided environment variable USE_CLANG_PLATFORM_BUILD.

BUG: 26102335
Change-Id: I7e12219a60f36bb44797bb028b4a5873a67c9210
2016-02-04 10:55:56 -08:00
Tom Cherry
69035cd4aa Remove special case handling of "ro." properties
Currently, properties that begin with "ro." are special cased to skip
over the "ro." part of the prefix before matching with entries in
property_contexts.  A change to init is removing this special case and
therefore, the "ro." prefixes must be explicitly added to
property_contexts.

Bug 26425619

Change-Id: I735eb9fc208eeec284cda8d778db946eeec24192
2016-01-11 13:16:45 -08:00
Miroslav Tisma
36a76ec098 sepolicy: Fix 'avc denied' issues for the emulators
This commit fixes the avc denied issues in the emulators:
- goldfish_setup is granted for network access
- netd dontaudit for sys_module
- qemu_prop is granted domain for get_prop

Critical issue was that SELinux denied reading the lcd_density property
by SurfaceFlinger via qemu_prop and this commit fixes it.

Change-Id: I633d96f4d2ee6659f18482a53e21f816abde2a5f
Signed-off-by: Miroslav Tisma <miroslav.tisma@imgtec.com>
2015-12-11 16:21:00 +01:00
Mike Frysinger
db4883ca93 sepolicy: drop -- marker
It's not needed and is a bit confusing.

BUG=26018537

Change-Id: Ibb1c3995de97a442c95d5eea823523b5f0f26393
2015-12-10 18:18:27 +00:00
Griff Hazen
0517540e8d Let qemu_props service set system properties in ro.emu and ro.emulator
These boot properties are used by android wear emulator to configure
round and chin shaped devices.

Bug: 23324757
Change-Id: I812da02d771bba0ffc63b14459c7de7cbdeed142
2015-11-07 16:53:59 -08:00
Jeff Vander Stoep
7890fc4d2e selinux: Grant all processes the domain_deprecated attribute
Bug: 25433265
Change-Id: Iafad5abd6e75c5a46f844ef3e744adf1c904b362
2015-11-04 08:49:07 -08:00
Chih-Hung Hsieh
557fa2f3cd Move arm target to clang by default.
Bug: 23163853
Change-Id: I4cb95ed652ca697461e2fb22811779aa2df8d262
2015-10-27 13:42:34 -07:00
Nick Kralevich
ce1062629f allow qemu_props to set opengles.version
Addresses the following denial:

  init: avc:  denied  { set } for property=opengles.version scontext=u:r:qemu_props:s0 tcontext=u:object_r:default_prop:s0 tclass=property_service

Bug: 25148690
Change-Id: I4b197eeabfe37e794104e4e686e9e388b5bc3e0c
2015-10-21 10:55:21 -07:00
Nick Kralevich
64e4d8a211 am 35a075db: am 36d91b53: Merge "Only allow toolbox exec where /system exec was already allowed."
* commit '35a075db60bc5553b57ef3311b9643d3b04ea7da':
  Only allow toolbox exec where /system exec was already allowed.
2015-08-25 22:53:03 +00:00
Stephen Smalley
75770de701 Only allow toolbox exec where /system exec was already allowed.
When the toolbox domain was introduced, we allowed all domains to exec it
to avoid breakage.  However, only domains that were previously allowed the
ability to exec /system files would have been able to do this prior to the
introduction of the toolbox domain.  Remove the rule from domain.te and add
rules to all domains that are already allowed execute_no_trans to system_file.
Requires coordination with device-specific policy changes with the same Change-Id.

Change-Id: Ie46209f0412f9914857dc3d7c6b0917b7031aae5
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2015-08-25 11:46:12 -04:00
Ian Pedowitz
c3bc0b112c resolved conflicts for merge of e5a63158 to mnc-dev-plus-aosp
Change-Id: Ifcbf55d0f4a158602867c01546f4c0f7e668697f
2015-08-11 15:06:29 -07:00
Ian Pedowitz
4e0d34c7c7 Increasing arm(64)? emulator partition sizes to 1.5GB
Bug: 23093319
Change-Id: I5e493ef4715cee96ae6ab40d6415f5330075fad6
2015-08-11 12:53:39 -07:00
Nick Kralevich
385457dc31 am 4a5f5a7b: am a972891f: Merge "file_contexts: Label /dev/ttyS2 as console_device"
* commit '4a5f5a7b15e27ed159e2398c77de1de7f9fd4da9':
  file_contexts: Label /dev/ttyS2 as console_device
2015-07-16 19:19:20 +00:00
Miodrag Dinic
df2620ada4 file_contexts: Label /dev/ttyS2 as console_device
This fixes the issue with the emulator "-shell" option.
Init tries to open the console which is passed through
the kernel androidboot.console property, but fails to
open it because "avc" denies it. Init only has permissions
to open console_device in rw mode. This ensures that
/dev/ttyS2 is properly labeled as console_device.

Replaced tabs with spaces.

Change-Id: I9ef94576799bb724fc22f6be54f12de10ed56768
2015-07-16 20:36:07 +02:00
dcashman
19eeccdaf2 Allow init to create /mnt/sdcard symlink.
Addresses the following denial:
avc:  denied  { create } for  pid=1 comm="init" name="sdcard" scontext=u:r:init:s0 tcontext=u:object_r:tmpfs:s0 tclass=lnk_file permissive=0

Bug: 22084499
Change-Id: Icffef8330d07b00f36fda11374e39e0df7181ca3
2015-07-01 09:14:18 -07:00
Mark Salyzyn
9f8e1e1c7d goldfish: rename goldfish_logcat.te to logd.te
(cherrypicked from commit fd8c30177c)

Bug: 19608716
Change-Id: I5c76648a4bcbbb15a033465e8af66b12af6e0a18
2015-06-03 10:48:35 -07:00
Mark Salyzyn
94871b94ef goldfish: logcat -Q in logd domain
Deal with a build failure in conflict with cl/152105

(cherrypicked from commit 1cc7735ffa)

Bug: 19608716
Change-Id: I1078046db3b159c1baf0a22435c3e777424453a1
2015-06-03 10:47:34 -07:00
Mark Salyzyn
fd8c30177c goldfish: rename goldfish_logcat.te to logd.te
Bug: 19608716
Change-Id: I5c76648a4bcbbb15a033465e8af66b12af6e0a18
2015-06-03 09:00:14 -07:00
Mark Salyzyn
1cc7735ffa goldfish: logcat -Q in logd domain
Deal with a build failure in conflict with cl/152105

Bug: 19608716
Change-Id: I1078046db3b159c1baf0a22435c3e777424453a1
2015-06-03 07:52:21 -07:00
Yu Ning
0f54ada1cd Allow goldfish-setup to put the emulator in WiFi-only mode
The goldfish-setup service (essentially /system/etc/init.goldfish.sh)
executes the following commands when certain conditions are met:

 setprop ro.radio.noril yes
 stop ril-daemon

so as to stop the RIL daemon and emulate a WiFi-only device. Both would
fail, though, because goldfish-setup does not have the permissions to
set relevant properties.

This CL modifies the emulator's SELinux policy to grant the necessary
permissions. It is a step towards fixing the ril-daemon-keeps-getting-
killed-and-restarted problem with the new ("ranchu") emulator, which
does not support telephony emulation yet. (The other step is to have
init start goldfish-setup, which will be done in a seperate CL.)

(cherrypicked from commit 33dca8090f)

Change-Id: Ice7e7898804b7353ac4a8c49d871b1b2571d7a5f
Signed-off-by: Yu Ning <yu.ning@intel.com>
2015-05-18 19:46:18 -07:00
William Roberts
c434f71bd8 Update device to use set_prop() macro
(cherrypicked from commit cccc901639)

Change-Id: I630ba0178439c935d08062892990d43a3cc1239e
Signed-off-by: William Roberts <william.c.roberts@linux.intel.com>
2015-05-18 19:20:03 -07:00
Yu Ning
33dca8090f Allow goldfish-setup to put the emulator in WiFi-only mode
The goldfish-setup service (essentially /system/etc/init.goldfish.sh)
executes the following commands when certain conditions are met:

 setprop ro.radio.noril yes
 stop ril-daemon

so as to stop the RIL daemon and emulate a WiFi-only device. Both would
fail, though, because goldfish-setup does not have the permissions to
set relevant properties.

This CL modifies the emulator's SELinux policy to grant the necessary
permissions. It is a step towards fixing the ril-daemon-keeps-getting-
killed-and-restarted problem with the new ("ranchu") emulator, which
does not support telephony emulation yet. (The other step is to have
init start goldfish-setup, which will be done in a seperate CL.)

Change-Id: Ice7e7898804b7353ac4a8c49d871b1b2571d7a5f
Signed-off-by: Yu Ning <yu.ning@intel.com>
2015-05-19 08:22:41 +08:00
Yu Ning
e9ec053e99 Label /dev/ttyGF* as serial_device
In goldfish kernel 3.10, the goldfish_tty device instantiates virtual
serial ports as /dev/ttyGF* (e.g. /dev/ttyGF0), not as /dev/ttyS* as in
goldfish kernel 3.4. However, in the emulator's SELinux security policy,
there is no specific security context assigned to /dev/ttyGF*, and the
one inherited from /dev (u:object_r:device:s0) prevents services such as
qemud and goldfish-logcat from reading and writing ttyGF*. Consequently,
qemud terminates abnormally on the classic x86_64 emulator:

 init: Service 'qemud' (pid XXX) exited with status 1

Fix this issue by assigning /dev/ttyGF* the same security context as
/dev/ttyS*.

(cherrypicked from commit 4783467922)

Change-Id: Ia7394dc217bd82f566c4d1b7eda3cc8ce3ac612f
Signed-off-by: Yu Ning <yu.ning@intel.com>
2015-05-18 09:55:07 -07:00
Yu Ning
4783467922 Label /dev/ttyGF* as serial_device
In goldfish kernel 3.10, the goldfish_tty device instantiates virtual
serial ports as /dev/ttyGF* (e.g. /dev/ttyGF0), not as /dev/ttyS* as in
goldfish kernel 3.4. However, in the emulator's SELinux security policy,
there is no specific security context assigned to /dev/ttyGF*, and the
one inherited from /dev (u:object_r:device:s0) prevents services such as
qemud and goldfish-logcat from reading and writing ttyGF*. Consequently,
qemud terminates abnormally on the classic x86_64 emulator:

 init: Service 'qemud' (pid XXX) exited with status 1

Fix this issue by assigning /dev/ttyGF* the same security context as
/dev/ttyS*.

Change-Id: Ia7394dc217bd82f566c4d1b7eda3cc8ce3ac612f
Signed-off-by: Yu Ning <yu.ning@intel.com>
2015-05-18 17:19:08 +08:00
Nick Kralevich
e89b6f5df1 Merge "Update device to use set_prop() macro" 2015-05-15 19:26:56 +00:00