Skip to content
Snippets Groups Projects
  1. Feb 06, 2017
    • Alex Klyubin's avatar
      Move bluetoothdomain policy to private · 661430e0
      Alex Klyubin authored
      This leaves only the existence of bluetoothdomain attribute as public
      API. All other rules are implementation details of this attribute's
      policy and are thus now private.
      
      Test: No change to policy according to sesearch, except for
            disappearance of all allow bluetoothdomain bluetooth_current
            rule (as expected).
      Bug: 31364497
      
      Change-Id: I0edfc30d98e1cd9fb4f41a2900954d9cdbb4db14
      661430e0
    • Alex Klyubin's avatar
      Move bluetooth policy to private · 801b5ec4
      Alex Klyubin authored
      This leaves only the existence of bluetooth domain as public API.
      All other rules are implementation details of this domain's policy
      and are thus now private.
      
      Test: No change to policy according to sesearch, except for
            disappearance of all allow rules to do with bluetooth_current
            except those created by other domains' allow rules referencing
            bluetooth domain from public and vendor policy.
      Bug: 31364497
      
      Change-Id: I3521b74a1a9f6c5a5766b358e944dc5444e3c536
      801b5ec4
    • Alex Klyubin's avatar
      Move mdnsd policy to private · d833f6ba
      Alex Klyubin authored
      This leaves only the existence of mdnsd domain as public API. All
      other rules are implementation details of this domains's policy and
      are thus now private.
      
      Test: No change to policy according to sesearch, except for
            disappearance of all allow rules to do with mdnsd_current (as
            expected).
      Bug: 31364497
      
      Change-Id: Ia4f01d91e7d593401e8cde2d796a0f1023f6dae4
      d833f6ba
    • Alex Klyubin's avatar
      Move netdomain policy to private · 372dc67f
      Alex Klyubin authored
      This leaves only the existence of netdomain attribute as public API.
      All other rules are implementation details of this attribute's policy
      and are thus now private.
      
      Test: No change to policy according to sesearch, except for
            disappearance of all allow rules to do with netdomain_current
            and *_current attributes targeted when netdomain rules reference
            public types.
      Bug: 31364497
      Change-Id: I102e649374681ce1dd9e1e5ccbaaa5cb754e00a0
      372dc67f
    • Chia-I Wu's avatar
      Allow HWC to be binderized · 1b95d88c
      Chia-I Wu authored
      Test: manual
      Bug: 32021609
      Change-Id: I6793794f3b1fb95b8dd9336f75362447de618274
      1b95d88c
    • Stephen Smalley's avatar
      Remove obsolete netlink_firewall_socket and netlink_ip6fw_socket classes. · 4921085d
      Stephen Smalley authored
      
      The implementation for NETLINK_FIREWALL and NETLINK_IP6_FW protocols
      was removed from the kernel in commit
      d16cf20e2f2f13411eece7f7fb72c17d141c4a84 ("netfilter: remove ip_queue
      support") circa Linux 3.5.  Unless we need to retain compatibility
      for kernels < 3.5, we can drop these classes from the policy altogether.
      
      Possibly the neverallow rule in app.te should be augmented to include
      the newer netlink security classes, similar to webview_zygote, but
      that can be a separate change.
      
      Test: policy builds
      
      Change-Id: Iab9389eb59c96772e5fa87c71d0afc86fe99bb6b
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      4921085d
    • Stephen Smalley's avatar
      Define extended_socket_class policy capability and socket classes · 431bdd9f
      Stephen Smalley authored
      
      Add a definition for the extended_socket_class policy capability used
      to enable the use of separate socket security classes for all network
      address families rather than the generic socket class.  The capability
      also enables the use of separate security classes for ICMP and SCTP
      sockets, which were previously mapped to rawip_socket class.  Add
      definitions for the new socket classes and access vectors enabled by
      this capability.  Add the new socket classes to the socket_class_set
      macro, and exclude them from webview_zygote domain as with other socket
      classes.
      
      Allowing access by specific domains to the new socket security
      classes is left to future commits.  Domains previously allowed
      permissions to the 'socket' class will require permission to the
      more specific socket class when running on kernels with this support.
      
      The kernel support will be included upstream in Linux 4.11.  The
      relevant kernel commits are da69a5306ab92e07224da54aafee8b1dccf024f6
      ("selinux: support distinctions among all network address families"),
      ef37979a2cfa3905adbf0c2a681ce16c0aaea92d ("selinux: handle ICMPv6
      consistently with ICMP"), and b4ba35c75a0671a06b978b6386b54148efddf39f
      ("selinux: drop unused socket security classes").
      
      This change requires selinux userspace commit
      d479baa82d67c9ac56c1a6fa041abfb9168aa4b3 ("libsepol: Define
      extended_socket_class policy capability") in order to build the
      policy with this capability enabled.  This commit is already in
      AOSP master.
      
      Test: policy builds
      
      Change-Id: I788b4be9f0ec0bf2356c0bbef101cd42a1af49bb
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      431bdd9f
    • Stephen Smalley's avatar
      Define the user namespace capability classes and access vectors. · 8a003607
      Stephen Smalley authored
      
      Kernel commit 8e4ff6f228e4722cac74db716e308d1da33d744f
      (selinux: distinguish non-init user namespace capability checks)
      introduced support for distinguishing capability
      checks against a target associated with the init user namespace
      versus capability checks against a target associated with a non-init
      user namespace by defining and using separate security classes for the
      latter.  This support is needed on Linux to support e.g. Chrome usage of
      user namespaces for the Chrome sandbox without needing to allow Chrome to
      also exercise capabilities on targets in the init user namespace.
      
      Define the new security classes and access vectors for the Android policy.
      Refactor the original capability and capability2 access vector definitions
      as common declarations to allow reuse by the new cap_userns and cap2_userns
      classes.
      
      This change does not allow use of the new classes by any domain; that
      is deferred to future changes as needed if/when Android enables user
      namespaces and the Android version of Chrome starts using them.
      
      The kernel support went upstream in Linux 4.7.
      
      Based on the corresponding refpolicy patch by Chris PeBenito, but
      reworked for the Android policy.
      
      Test: policy builds
      
      Change-Id: I71103d39e93ee0e8c24816fca762944d047c2235
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      8a003607
    • Chad Brubaker's avatar
      Move neverallows from untrusted_app.te to app_neverallows.te · 46e5a060
      Chad Brubaker authored
      The neverallows in untrusted_app will all apply equally to ephemeral app
      and any other untrusted app domains we may add, so this moves them to a
      dedicated separate file.
      
      This also removes the duplicate rules from isolated_app.te and ensures
      that all the untrusted_app neverallows also apply to isolated_app.
      
      Test: builds
      Change-Id: Ib38e136216ccbe5c94daab732b7ee6acfad25d0b
      46e5a060
    • Chad Brubaker's avatar
      Merge ephemeral data and apk files into app · 4c40d734
      Chad Brubaker authored
      The rules for the two types were the same and /data/app-ephemeral is
      being removed. Remove these types.
      
      Test: Builds
      Change-Id: I520c026395551ad1362dd2ced53c601d9e6f9b28
      4c40d734
  2. Feb 04, 2017
  3. Feb 02, 2017
    • Jiyong Park's avatar
      configstore: add selinux policy for configstore@1.0 hal · ebec1aa2
      Jiyong Park authored
      This change adds selinux policy for configstore@1.0 hal. Currently, only
      surfaceflinger has access to the HAL, but need to be widen.
      
      Bug: 34314793
      Test: build & run
      
      Merged-In: I40e65032e9898ab5f412bfdb7745b43136d8e964
      Change-Id: I40e65032e9898ab5f412bfdb7745b43136d8e964
      (cherry picked from commit 5ff0f178)
      ebec1aa2
  4. Feb 01, 2017
  5. Jan 31, 2017
    • Calin Juravle's avatar
      Remove SElinux audit to libart_file · 01ee59a7
      Calin Juravle authored
      Since it was introduced it caused quite a few issues and it spams the
      SElinux logs unnecessary.
      
      The end goal of the audit was to whitelist the access to the
      interpreter. However that's unfeasible for now given the complexity.
      
      Test: devices boots and everything works as expected
            no more auditallow logs
      
      Bug: 29795519
      Bug: 32871170
      Change-Id: I9a7a65835e1e1d3f81be635bed2a3acf75a264f6
      01ee59a7
    • Mark Salyzyn's avatar
      logd: add getEventTag command and service · 384ce662
      Mark Salyzyn authored
      The event log tag service uses /dev/event-log-tags, pstore and
      /data/misc/logd/event-log-tags as sticky storage for the invented
      log tags.
      
      Test: gTest liblog-unit-tests, logd-unit-tests & logcat-unit-tests
      Bug: 31456426
      Change-Id: Iacc8f36f4a716d4da8dca78a4a54600ad2a288dd
      384ce662
    • Mark Salyzyn's avatar
      logd: restrict access to /dev/event-log-tags · d33a9a19
      Mark Salyzyn authored
      Create an event_log_tags_file label and use it for
      /dev/event-log-tags.  Only trusted system log readers are allowed
      direct read access to this file, no write access.  Untrusted domain
      requests lack direct access, and are thus checked for credentials via
      the "plan b" long path socket to the event log tag service.
      
      Test: gTest logd-unit-tests, liblog-unit-tests and logcat-unit-tests
      Bug: 31456426
      Bug: 30566487
      Change-Id: Ib9b71ca225d4436d764c9bc340ff7b1c9c252a9e
      d33a9a19
  6. Jan 29, 2017
  7. Jan 27, 2017
    • Janis Danisevskis's avatar
      Preliminary policy for hal_keymaster (TREBLE) · e8acd769
      Janis Danisevskis authored
      This adds the premissions required for
      android.hardware.keymaster@2.0-service to access the keymaster TA
      as well as for keystore and vold to lookup and use
      android.hardware.keymaster@2.0-service.
      
      IT DOES NOT remove the privileges from keystore and vold to access
      the keymaster TA directly.
      
      Test: Run keystore CTS tests
      Bug: 32020919
      
      (cherry picked from commit 5090d6f3)
      
      Change-Id: Ib02682da26e2dbcabd81bc23169f9bd0e832eb19
      e8acd769
    • Alex Klyubin's avatar
      Move webview_zygote policy to private · a7653ee2
      Alex Klyubin authored
      This leaves only the existence of webview_zygote domain and its
      executable's webview_zygote_exec file label as public API. All other
      rules are implementation details of this domain's policy and are thus
      now private.
      
      Test: Device boots, with Multiproces WebView developer setting
            enabled, apps with WebView work fine. No new denials.
      Bug: 31364497
      
      Change-Id: I179476c43a50863ee3b327fc5155847d992a040d
      a7653ee2
    • Badhri Jagan Sridharan's avatar
      sepolicy for usb hal · ae206f16
      Badhri Jagan Sridharan authored
      Bug: 31015010
      
      cherry-pick from b6e4d4bd
      
      Test: checked for selinux denial msgs in the dmesg logs.
      Change-Id: I8285ea05162ea0d75459e873e5c2bad2dbc7e5ba
      ae206f16
  8. Jan 26, 2017
    • Alex Klyubin's avatar
      Move zygote policy to private · 966efede
      Alex Klyubin authored
      This leaves only the existence of zygote domain and its
      executable's zygote_exec file label as public API. All other rules are
      implementation details of this domain's policy and are thus now
      private.
      
      Test: Device boot, apps (untrusted_app, system_app, platform_app,
            priv_app) work fine. No new denials.
      Bug: 31364497
      Change-Id: Ie37128531be841b89ecd602992d83d77e26533bc
      966efede
    • Alex Klyubin's avatar
      Move appdomain policy to private · 8429a331
      Alex Klyubin authored
      This leaves only the existence of appdomain attribute as public API.
      All other rules are implementation details of this attribute's policy
      and are thus now private.
      
      Test: Device boot, apps (untrusted_app, system_app, platform_app,
            priv_app) work fine. No new denials.
      Bug: 31364497
      
      Change-Id: Ie22e35bad3307bb9918318c3d034f1433d51677f
      8429a331
    • Steven Moreland's avatar
      property: add persist.hal.binderization · cd597cd5
      Steven Moreland authored
      - Added set_prop to shell so that you can set it from shell.
      - Added set_prop to sytem_app so that it can be updated in settings.
      
      Bug: 34256441
      Test: can update prop from Settings and shell. nfc and lights work with
      ag/1833821 with persist.hal.binderization set to on and off. There are
      no additional selinux denials.
      Change-Id: I883ca489093c1d56b2efa725c58e6e3f3b81c3aa
      cd597cd5
    • William Roberts's avatar
      te_macros: introduce add_service() macro · 606d2fd6
      William Roberts authored
      
      Introduce the add_service() macro which wraps up add/find
      permissions for the source domain with a neverallow preventing
      others from adding it. Only a particular domain should
      add a particular service.
      
      Use the add_service() macro to automatically add a neverallow
      that prevents other domains from adding the service.
      
      mediadrmserver was adding services labeled mediaserver_service.
      Drop the add permission as it should just need the find
      permission.
      
      Additionally, the macro adds the { add find } permission which
      causes some existing neverallow's to assert. Adjust those
      neverallow's so "self" can always find.
      
      Test: compile and run on hikey and emulator. No new denials were
      found, and all services, where applicable, seem to be running OK.
      
      Change-Id: Ibbd2a5304edd5f8b877bc86852b0694732be993c
      Signed-off-by: default avatarWilliam Roberts <william.c.roberts@intel.com>
      606d2fd6
  9. Jan 25, 2017
    • Jeff Tinker's avatar
      Add sepolicy for drm HALs · c86f42b9
      Jeff Tinker authored
      bug:32815560
      Change-Id: I494141b47fcd2e7e0cc02aa58d8df9a222060b3f
      c86f42b9
    • Ray Essick's avatar
      rename mediaanalytics->mediametrics, wider access · 39185400
      Ray Essick authored
      reflect the change from "mediaanalytics" to "mediametrics"
      
      Also incorporates a broader access to the service -- e.g. anyone.
      This reflects that a number of metrics submissions come from application
      space and not only from our controlled, trusted media related processes.
      The metrics service (in another commit) checks on the source of any
      incoming metrics data and limits what is allowed from unprivileged
      clients.
      
      Bug: 34615027
      Test: clean build, service running and accessible
      Change-Id: I657c343ea1faed536c3ee1940f1e7a178e813a42
      39185400
    • Steven Moreland's avatar
      haldomain: search for passthrough hals · 18d7f8c1
      Steven Moreland authored
      Bug: 34366227
      Test: passthrough services successfully found
      Change-Id: If2cad09edc42f01cc5a444229758ecdfe2017cf2
      18d7f8c1
  10. Jan 24, 2017
    • Calin Juravle's avatar
      SElinux policies for compiling secondary dex files · e5a1f64a
      Calin Juravle authored
      This CLs adds SElinux policies necessary to compile secondary dex files.
      
      When an app loads secondary dex files via the base class loader the
      files will get reported to PM. During maintance mode PM will compile the
      secondary dex files which were used via the standard installd model
      (fork, exec, change uid and lower capabilities).
      
      What is needed:
      dexoptanalyzer - needs to read the dex file and the boot image in order
      to decide if we need to actually comppile.
      dex2oat - needs to be able to create *.oat files next to the secondary
      dex files.
      
      Test: devices boots
            compilation of secondary dex files works without selinux denials
            cmd package compile --secondary-dex -f -m speed
      com.google.android.gms
      
      Bug: 32871170
      Change-Id: I038955b5bc9a72d49f6c24c1cb76276e0f53dc45
      e5a1f64a
    • Nick Kralevich's avatar
      priv_app: allow reading /cache symlink · 21cb045b
      Nick Kralevich authored
      Addresses the following denial:
      
        avc: denied { read } for name="cache" dev="dm-0" ino=2755
        scontext=u:r:priv_app:s0:c512,c768 tcontext=u:object_r:cache_file:s0
        tclass=lnk_file permissive=0
      
      which occurs when a priv-app attempts to follow the /cache symlink. This
      symlink occurs on devices which don't have a /cache partition, but
      rather symlink /cache to /data/cache.
      
      Bug: 34644911
      Test: Policy compiles.
      Change-Id: I9e052aeb0c98bac74fa9225b9253b1537ffa5adc
      21cb045b
  11. Jan 23, 2017
    • Clara Bayarri's avatar
      Declare new Fonts service · b69af83b
      Clara Bayarri authored
      Merged-In: Id2b849d7fa22989225066ebe487fc98d319743ea
      Bug: 34190490
      Test: CTS in internal master
      Change-Id: I27ab62469f3a405c59eda1a2a249899e845bed56
      b69af83b
  12. Jan 21, 2017
    • Jin Qian's avatar
      storaged: allow reading packages.list · 8ad57ef6
      Jin Qian authored
      Delete rule for permission_service since we use packages.list instead.
      
      Test: adb shell storaged -u
      Bug: 34198239
      Change-Id: Ic69d0fe185e627a932bbf8e85fc13163077bbe6b
      8ad57ef6
  13. Jan 20, 2017
    • Paul Lawrence's avatar
      tracefs not debugfs · ef2a1709
      Paul Lawrence authored
      Test:   Device boots
              Can take photos
              Run "adb shell atrace -c -b 16000 -t 5 gfx" without root and check produces
              output
              Run "python systrace.py view gfx freq sched am wm dalvik
              binder_driver" from external/chromium-trace after adb root and
              check populated
      Bug: 31856701
      Change-Id: Ic319f8a0a3e395efa7ee8ba33a868ac55cb44fe4
      ef2a1709
    • Alex Klyubin's avatar
      Sort hal_* declarations alphabetically · e1ff7e88
      Alex Klyubin authored
      Test: No change to SELinux policy
      Change-Id: I45d6d6ab0538b9d4768b922cfdc2c972272d0b18
      e1ff7e88
    • Steven Moreland's avatar
      hal_light: add permission to sys/class/leds. · 62aee3b4
      Steven Moreland authored
      /sys/class/leds is the standard location for linux files dealing with
      leds, however the exact contents of this directory is non-standard
      (hence the need for a hal).
      
      Bug: 32022100
      Test: compiles and works for the subset of common files
      Change-Id: I7571d7267d5ed531c4cf95599d5f2acc22287ef4
      62aee3b4
  14. Jan 19, 2017
    • Chad Brubaker's avatar
      Allow ephemeral apps to read/write external storage · 3d348fd6
      Chad Brubaker authored
      Ephemeral apps cannot open files from external storage, but can be given
      access to files via the file picker.
      
      Test: ACTION_OPEN_DOCUMENTS from an ephemeral app returns a readable fd.
      Change-Id: Ie21b64a9633eff258be254b9cd86f282db1509e8
      3d348fd6
    • Chad Brubaker's avatar
      Move ephemeral_app to appdomain · 5c566d1a
      Chad Brubaker authored
      Ephemeral apps are still apps with very similar capabilities, it makes
      more sense to have them under appdomain and benefit from the shared
      state (and all the neverallow rules) than to try and dupplicate them and
      keep them in sync.
      
      This is an initial move, there are parts of ephemeral_app that still
      need to be locked down further and some parts of appdomain that should
      be pushed down into the various app domains.
      
      Test: Builds, ephemeral apps work without denials.
      Change-Id: I1526b2c2aa783a91fbf6543ac7f6d0d9906d70af
      5c566d1a
    • Josh Gao's avatar
      crash_dump: temporarily make permissive. · 9cfe34b5
      Josh Gao authored
      Test: policy compiles.
      Bug: http://b/34450704
      Change-Id: I1381f9de8e4c8cdde4920be423ab32adc2f7a8a2
      9cfe34b5
  15. Jan 18, 2017
    • mukesh agrawal's avatar
      allow init and system_server access to tracing · 3a6bc68e
      mukesh agrawal authored
      Revise policy, to allow init and system_server to configure,
      clear, and read kernel trace events. This will enable us to
      debug certain WiFi failures.
      
      Note that system_server is restricted to only accessing
      a wifi-specific trace instance. (Hence, system_server is
      not allowed to interfere with atrace.) Moreover, even for
      the wifi trace instance, system_server is granted limited
      permissions. (system_server can not, e.g., change which
      events are traced.)
      
      Note also that init and system_server are only granted these
      powers on userdebug or eng builds.
      
      The init.te and system_server.te changes resolve the
      following denials:
      
      // Denials when wifi-events.rc configures tracing
      { write } for pid=1 comm="init" name="instances" dev="debugfs" ino=755 scontext=u:r:init:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1
      { add_name } for pid=1 comm="init" name="wifi" scontext=u:r:init:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1
      { create } for pid=1 comm="init" name="wifi" scontext=u:r:init:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1
      { write } for pid=1 comm="init" name="tracing_on" dev="debugfs" ino=18067 scontext=u:r:init:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { write } for pid=1 comm="init" name="buffer_size_kb" dev="debugfs" ino=18061 scontext=u:r:init:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=file permissive=1
      
      // Denials when system_server sets up fail-safe
      // (auto-terminate tracing if system_server dies)
      { search } for pid=882 comm="system_server" name="instances" dev="debugfs" ino=755 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1
      { read } for pid=882 comm="system_server" name="free_buffer" dev="debugfs" ino=18063 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { open } for pid=882 comm="system_server" path="/sys/kernel/debug/tracing/instances/wifi/free_buffer" dev="debugfs" ino=18063 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { getattr } for pid=882 comm="system_server" path="/sys/kernel/debug/tracing/instances/wifi/free_buffer" dev="debugfs" ino=18063 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      
      // Denials when system_server toggles tracing on or off
      // (WifiStateMachine is a thread in system_server)
      { search } for pid=989 comm="WifiStateMachin" name="instances" dev="debugfs" ino=755 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1
      { write } for pid=989 comm="WifiStateMachin" name="tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { open } for pid=989 comm="WifiStateMachin" path="/sys/kernel/debug/tracing/instances/wifi/tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { getattr } for pid=989 comm="WifiStateMachin" path="/sys/kernel/debug/tracing/instances/wifi/tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { write } for pid=989 comm="WifiStateMachin" name="tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { open } for pid=989 comm="WifiStateMachin" path="/sys/kernel/debug/tracing/instances/wifi/tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { getattr } for pid=989 comm="WifiStateMachin" path="/sys/kernel/debug/tracing/instances/wifi/tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      
      // Denials when system_server reads the event trace
      // (This happens in response to a dumpsys request)
      { search } for pid=3537 comm="Binder:882_B" name="instances" dev="debugfs" ino=755 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1
      { read } for pid=3537 comm="Binder:882_B" name="trace" dev="debugfs" ino=18059 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { open } for pid=3537 comm="Binder:882_B" path="/sys/kernel/debug/tracing/instances/wifi/trace" dev="debugfs" ino=18059 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { getattr } for pid=3537 comm="Binder:882_B" path="/sys/kernel/debug/tracing/instances/wifi/trace" dev="debugfs" ino=18059 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      { write } for pid=3537 comm="Binder:882_B" name="trace" dev="debugfs" ino=18059 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1
      
      Bug: 27254565
      Test: manual
      Manual test:
      - Build this CL along with CL:322337
      - Verify that system boots, and that we can connect to GoogleGuest.
        (Testing of actual trace functionality with require some more
        patches in frameworks/opt/net/wifi.)
      $ adb root && adb shell dmesg | egrep 'avc: denied.+debugfs'
      
      Change-Id: Ib6eb4116549277f85bd510d25fb30200f1752f4d
      3a6bc68e
    • Josh Gao's avatar
      Introduce crash_dump debugging helper. · cb3eb4ee
      Josh Gao authored
      Replace the global debuggerd with a per-process debugging helper that
      gets exec'ed by the process that crashed.
      
      Bug: http://b/30705528
      Test: crasher/crasher64, `debuggerd <pid>`, `kill -ABRT <pid>`
      Change-Id: Iad1b7478f7a4e2690720db4b066417d8b66834ed
      cb3eb4ee
    • Eino-Ville Talvala's avatar
      DO NOT MERGE: Camera: Add initial Treble camera HAL sepolicy · 9c43a3ff
      Eino-Ville Talvala authored
      - Allow cameraservice to talk to hwbinder, hwservicemanager
      - Allow hal_camera to talk to the same interfaces as cameraservice
      
      Test: Compiles, confirmed that cameraservice can call hwservicemanager
      Bug: 32991422
      Change-Id: Ied0a3f5f7149e29c468a13887510c78d555dcb2a
      9c43a3ff
Loading