diff --git a/dauntless/Android.bp b/dauntless/Android.bp new file mode 100644 index 0000000..50a9133 --- /dev/null +++ b/dauntless/Android.bp @@ -0,0 +1,6 @@ +sh_binary { + name: "dump_gsc.sh", + src: "dump_gsc.sh", + vendor: true, + sub_dir: "dump", +} diff --git a/dauntless/dump_gsc.sh b/dauntless/dump_gsc.sh new file mode 100644 index 0000000..7966d1b --- /dev/null +++ b/dauntless/dump_gsc.sh @@ -0,0 +1,7 @@ +#!/vendor/bin/sh +echo "Citadel VERSION\n" +vendor/bin/hw/citadel_updater -lv +echo "Citadel STATS\n" +vendor/bin/hw/citadel_updater --stats +echo "GSC DEBUG DUMP\n" +vendor/bin/hw/citadel_updater -D diff --git a/dauntless/gsc.mk b/dauntless/gsc.mk new file mode 100644 index 0000000..fd3e3bc --- /dev/null +++ b/dauntless/gsc.mk @@ -0,0 +1,2 @@ +PRODUCT_PACKAGES += dump_gsc.sh +BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/dauntless/sepolicy diff --git a/dauntless/sepolicy/dump_gsc.te b/dauntless/sepolicy/dump_gsc.te new file mode 100644 index 0000000..1df8b58 --- /dev/null +++ b/dauntless/sepolicy/dump_gsc.te @@ -0,0 +1,11 @@ +type dump_gsc, domain; +type dump_gsc_exec, exec_type, vendor_file_type, file_type; +domain_auto_trans(hal_dumpstate_default, dump_gsc_exec, dump_gsc) +hal_client_domain(dump_gsc, hal_dumpstate) + +allow dump_gsc dumpstate:fd use; +allow dump_gsc shell_data_file:file { write getattr }; +allow dump_gsc citadel_updater:file execute_no_trans; +allow dump_gsc citadeld_service:service_manager find; +binder_call(dump_gsc, citadeld) +vndbinder_use(dump_gsc) diff --git a/dauntless/sepolicy/file_contexts b/dauntless/sepolicy/file_contexts new file mode 100644 index 0000000..8a03c79 --- /dev/null +++ b/dauntless/sepolicy/file_contexts @@ -0,0 +1 @@ +/vendor/bin/dump/dump_gsc\.sh u:object_r:dump_gsc_exec:s0