allow apps access to the keystore, dhcp/pptp fixes, wifi fixes and isolated_app access

- allow all apps to connect to the keystore over unix socket
- dhcp runs scripts in /system/etc/dhcpcd/dhcpcd-hooks and creates/removes lease files
- mtp connects to dnsproxyd when a pptp vpn connection is established
- allow appdomain to also open qtaguid_proc and release_app to read qtaguid_device
- WifiWatchDog uses packet_socket when wifi comes up
- apps interact with isolated_apps when an app uses an isolated service and uses sockets for that interaction
- for apps with levelFromUid=true to interact with isolated_app, isolated_app must be an mlstrustedsubject

Change-Id: I09ff676267ab588ad4c73f04d8f23dba863c5949
Signed-off-by: Joshua Brindle <jbrindle@tresys.com>
diff --git a/dhcp.te b/dhcp.te
index b596479..1cf7af5 100644
--- a/dhcp.te
+++ b/dhcp.te
@@ -11,6 +11,7 @@
 allow dhcp self:netlink_route_socket { write nlmsg_write read create bind };
 allow dhcp self:udp_socket { create ioctl };
 allow dhcp shell_exec:file { read open execute };
+allow dhcp system_file:file execute_no_trans;
 allow dhcp proc:file write;
 allow dhcp property_socket:sock_file write ;
 allow dhcp system_prop:property_service set ;
@@ -19,4 +20,5 @@
 unix_socket_connect(dhcp, property, init)
 
 type_transition dhcp system_data_file:{ dir file } dhcp_data_file;
-allow dhcp dhcp_data_file:dir { write add_name search };
+allow dhcp dhcp_data_file:dir create_dir_perms;
+allow dhcp dhcp_data_file:file create_file_perms;