Stephen Smalley | 2dd4e51 | 2012-01-04 12:33:27 -0500 | [diff] [blame] | 1 | # Input selectors: |
| 2 | # isSystemServer (boolean) |
| 3 | # user (string) |
| 4 | # seinfo (string) |
| 5 | # name (string) |
Stephen Smalley | dd31ddf | 2012-07-27 17:08:21 -0400 | [diff] [blame] | 6 | # sebool (string) |
Stephen Smalley | 2dd4e51 | 2012-01-04 12:33:27 -0500 | [diff] [blame] | 7 | # isSystemServer=true can only be used once. |
Stephen Smalley | dd31ddf | 2012-07-27 17:08:21 -0400 | [diff] [blame] | 8 | # An unspecified isSystemServer defaults to false. |
Stephen Smalley | 2dd4e51 | 2012-01-04 12:33:27 -0500 | [diff] [blame] | 9 | # An unspecified string selector will match any value. |
| 10 | # A user string selector that ends in * will perform a prefix match. |
Stephen Smalley | 3ac1d26 | 2012-09-24 10:16:03 -0400 | [diff] [blame] | 11 | # user=_app will match any regular app UID. |
| 12 | # user=_isolated will match any isolated service UID. |
Stephen Smalley | 2dd4e51 | 2012-01-04 12:33:27 -0500 | [diff] [blame] | 13 | # All specified input selectors in an entry must match (i.e. logical AND). |
| 14 | # Matching is case-insensitive. |
| 15 | # Precedence rules: |
| 16 | # (1) isSystemServer=true before isSystemServer=false. |
| 17 | # (2) Specified user= string before unspecified user= string. |
| 18 | # (3) Fixed user= string before user= prefix (i.e. ending in *). |
| 19 | # (4) Longer user= prefix before shorter user= prefix. |
| 20 | # (5) Specified seinfo= string before unspecified seinfo= string. |
| 21 | # (6) Specified name= string before unspecified name= string. |
Stephen Smalley | dd31ddf | 2012-07-27 17:08:21 -0400 | [diff] [blame] | 22 | # (7) Specified sebool= string before unspecified sebool= string. |
Stephen Smalley | 2dd4e51 | 2012-01-04 12:33:27 -0500 | [diff] [blame] | 23 | # |
| 24 | # Outputs: |
| 25 | # domain (string) |
| 26 | # type (string) |
Stephen Smalley | 3808414 | 2012-11-28 10:46:18 -0500 | [diff] [blame] | 27 | # levelFrom (string; one of none, all, app, or user) |
Stephen Smalley | 2dd4e51 | 2012-01-04 12:33:27 -0500 | [diff] [blame] | 28 | # level (string) |
| 29 | # Only entries that specify domain= will be used for app process labeling. |
| 30 | # Only entries that specify type= will be used for app directory labeling. |
Stephen Smalley | 3808414 | 2012-11-28 10:46:18 -0500 | [diff] [blame] | 31 | # levelFrom=user is only supported for _app or _isolated UIDs. |
| 32 | # levelFrom=app or levelFrom=all is only supported for _app UIDs. |
Stephen Smalley | 2dd4e51 | 2012-01-04 12:33:27 -0500 | [diff] [blame] | 33 | # level may be used to specify a fixed level for any UID. |
| 34 | # |
| 35 | isSystemServer=true domain=system |
| 36 | user=system domain=system_app type=system_data_file |
Stephen Smalley | 61c80d5 | 2012-11-16 09:06:47 -0500 | [diff] [blame] | 37 | user=bluetooth domain=bluetooth type=bluetooth_data_file |
Stephen Smalley | 2dd4e51 | 2012-01-04 12:33:27 -0500 | [diff] [blame] | 38 | user=nfc domain=nfc type=nfc_data_file |
| 39 | user=radio domain=radio type=radio_data_file |
Geremy Condra | 8abf01a | 2013-03-27 15:14:48 -0700 | [diff] [blame^] | 40 | user=_app domain=untrusted_app type=app_data_file levelFrom=none |
Stephen Smalley | 3ac1d26 | 2012-09-24 10:16:03 -0400 | [diff] [blame] | 41 | user=_app seinfo=platform domain=platform_app type=platform_app_data_file |
| 42 | user=_app seinfo=shared domain=shared_app type=platform_app_data_file |
| 43 | user=_app seinfo=media domain=media_app type=platform_app_data_file |
| 44 | user=_app seinfo=release domain=release_app type=platform_app_data_file |
Joshua Brindle | f26d813 | 2012-09-25 18:52:54 -0400 | [diff] [blame] | 45 | user=_isolated domain=isolated_app |