Loading apex/Android.bp +0 −1 Original line number Diff line number Diff line Loading @@ -36,7 +36,6 @@ apex { apex { name: "com.android.media.swcodec", compile_multilib: "32", manifest: "manifest_codec.json", native_shared_libs: [ "libmedia_codecserviceregistrant", Loading services/mediacodec/Android.mk +9 −12 Original line number Diff line number Diff line Loading @@ -70,8 +70,11 @@ include $(CLEAR_VARS) # seccomp is not required for coverage build. ifneq ($(NATIVE_COVERAGE),true) LOCAL_REQUIRED_MODULES_arm := crash_dump.policy mediaswcodec.policy LOCAL_REQUIRED_MODULES_arm64 := crash_dump.policy mediaswcodec.policy LOCAL_REQUIRED_MODULES_x86 := crash_dump.policy mediaswcodec.policy LOCAL_REQUIRED_MODULES_x86_64 := crash_dump.policy mediaswcodec.policy endif LOCAL_SRC_FILES := \ main_swcodecservice.cpp \ MediaCodecUpdateService.cpp \ Loading Loading @@ -107,8 +110,12 @@ LOCAL_SHARED_LIBRARIES := \ LOCAL_MODULE := mediaswcodec LOCAL_INIT_RC := mediaswcodec.rc LOCAL_32_BIT_ONLY := true LOCAL_SANITIZE := scudo ifeq ($(TARGET_ARCH), $(filter $(TARGET_ARCH), x86_64 arm64)) LOCAL_MULTILIB := both LOCAL_MODULE_STEM_32 := $(LOCAL_MODULE)32 LOCAL_MODULE_STEM_64 := $(LOCAL_MODULE) endif sanitizer_runtime_libraries := llndk_libraries := Loading Loading @@ -145,17 +152,7 @@ include $(CLEAR_VARS) LOCAL_MODULE := mediaswcodec.policy LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_PATH := $(TARGET_OUT)/etc/seccomp_policy # mediaswcodec runs in 32-bit combatibility mode. For 64 bit architectures, # use the 32 bit policy ifdef TARGET_2ND_ARCH ifneq ($(TARGET_TRANSLATE_2ND_ARCH),true) LOCAL_SRC_FILES := seccomp_policy/mediaswcodec-$(TARGET_2ND_ARCH).policy else LOCAL_SRC_FILES := seccomp_policy/mediaswcodec-$(TARGET_ARCH).policy endif else LOCAL_SRC_FILES := seccomp_policy/mediaswcodec-$(TARGET_ARCH).policy endif include $(BUILD_PREBUILT) endif Loading services/mediacodec/main_swcodecservice.cpp +4 −1 Original line number Diff line number Diff line Loading @@ -45,8 +45,11 @@ int main(int argc __unused, char** /*argv*/) ::android::hardware::configureRpcThreadpool(64, false); // codec libs are currently 32-bit only #ifdef __LP64__ loadFromApex("/apex/com.android.media.swcodec/lib64"); #else loadFromApex("/apex/com.android.media.swcodec/lib"); #endif ::android::hardware::joinRpcThreadpool(); } services/mediacodec/registrant/Android.bp +0 −2 Original line number Diff line number Diff line Loading @@ -49,7 +49,5 @@ cc_library_shared { "libcodec2_soft_gsmdec", "libcodec2_soft_xaacdec", ], compile_multilib: "32", } services/mediacodec/seccomp_policy/mediaswcodec-arm64.policy 0 → 100644 +61 −0 Original line number Diff line number Diff line # Copyright (C) 2019 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. futex: 1 # ioctl calls are filtered via the selinux policy. ioctl: 1 sched_yield: 1 close: 1 dup: 1 ppoll: 1 mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE mmap: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE getuid: 1 getrlimit: 1 fstat: 1 newfstatat: 1 fstatfs: 1 # mremap: Ensure |flags| are (MREMAP_MAYMOVE | MREMAP_FIXED) TODO: Once minijail # parser support for '<' is in this needs to be modified to also prevent # |old_address| and |new_address| from touching the exception vector page, which # on ARM is statically loaded at 0xffff 0000. See # http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0211h/Babfeega.html # for more details. mremap: arg3 == 3 munmap: 1 prctl: 1 writev: 1 sigaltstack: 1 clone: 1 exit: 1 lseek: 1 rt_sigprocmask: 1 openat: 1 write: 1 nanosleep: 1 setpriority: 1 set_tid_address: 1 getdents64: 1 readlinkat: 1 read: 1 pread64: 1 gettimeofday: 1 faccessat: 1 exit_group: 1 restart_syscall: 1 rt_sigreturn: 1 getrandom: 1 madvise: 1 Loading
apex/Android.bp +0 −1 Original line number Diff line number Diff line Loading @@ -36,7 +36,6 @@ apex { apex { name: "com.android.media.swcodec", compile_multilib: "32", manifest: "manifest_codec.json", native_shared_libs: [ "libmedia_codecserviceregistrant", Loading
services/mediacodec/Android.mk +9 −12 Original line number Diff line number Diff line Loading @@ -70,8 +70,11 @@ include $(CLEAR_VARS) # seccomp is not required for coverage build. ifneq ($(NATIVE_COVERAGE),true) LOCAL_REQUIRED_MODULES_arm := crash_dump.policy mediaswcodec.policy LOCAL_REQUIRED_MODULES_arm64 := crash_dump.policy mediaswcodec.policy LOCAL_REQUIRED_MODULES_x86 := crash_dump.policy mediaswcodec.policy LOCAL_REQUIRED_MODULES_x86_64 := crash_dump.policy mediaswcodec.policy endif LOCAL_SRC_FILES := \ main_swcodecservice.cpp \ MediaCodecUpdateService.cpp \ Loading Loading @@ -107,8 +110,12 @@ LOCAL_SHARED_LIBRARIES := \ LOCAL_MODULE := mediaswcodec LOCAL_INIT_RC := mediaswcodec.rc LOCAL_32_BIT_ONLY := true LOCAL_SANITIZE := scudo ifeq ($(TARGET_ARCH), $(filter $(TARGET_ARCH), x86_64 arm64)) LOCAL_MULTILIB := both LOCAL_MODULE_STEM_32 := $(LOCAL_MODULE)32 LOCAL_MODULE_STEM_64 := $(LOCAL_MODULE) endif sanitizer_runtime_libraries := llndk_libraries := Loading Loading @@ -145,17 +152,7 @@ include $(CLEAR_VARS) LOCAL_MODULE := mediaswcodec.policy LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_PATH := $(TARGET_OUT)/etc/seccomp_policy # mediaswcodec runs in 32-bit combatibility mode. For 64 bit architectures, # use the 32 bit policy ifdef TARGET_2ND_ARCH ifneq ($(TARGET_TRANSLATE_2ND_ARCH),true) LOCAL_SRC_FILES := seccomp_policy/mediaswcodec-$(TARGET_2ND_ARCH).policy else LOCAL_SRC_FILES := seccomp_policy/mediaswcodec-$(TARGET_ARCH).policy endif else LOCAL_SRC_FILES := seccomp_policy/mediaswcodec-$(TARGET_ARCH).policy endif include $(BUILD_PREBUILT) endif Loading
services/mediacodec/main_swcodecservice.cpp +4 −1 Original line number Diff line number Diff line Loading @@ -45,8 +45,11 @@ int main(int argc __unused, char** /*argv*/) ::android::hardware::configureRpcThreadpool(64, false); // codec libs are currently 32-bit only #ifdef __LP64__ loadFromApex("/apex/com.android.media.swcodec/lib64"); #else loadFromApex("/apex/com.android.media.swcodec/lib"); #endif ::android::hardware::joinRpcThreadpool(); }
services/mediacodec/registrant/Android.bp +0 −2 Original line number Diff line number Diff line Loading @@ -49,7 +49,5 @@ cc_library_shared { "libcodec2_soft_gsmdec", "libcodec2_soft_xaacdec", ], compile_multilib: "32", }
services/mediacodec/seccomp_policy/mediaswcodec-arm64.policy 0 → 100644 +61 −0 Original line number Diff line number Diff line # Copyright (C) 2019 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. futex: 1 # ioctl calls are filtered via the selinux policy. ioctl: 1 sched_yield: 1 close: 1 dup: 1 ppoll: 1 mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE mmap: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE getuid: 1 getrlimit: 1 fstat: 1 newfstatat: 1 fstatfs: 1 # mremap: Ensure |flags| are (MREMAP_MAYMOVE | MREMAP_FIXED) TODO: Once minijail # parser support for '<' is in this needs to be modified to also prevent # |old_address| and |new_address| from touching the exception vector page, which # on ARM is statically loaded at 0xffff 0000. See # http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0211h/Babfeega.html # for more details. mremap: arg3 == 3 munmap: 1 prctl: 1 writev: 1 sigaltstack: 1 clone: 1 exit: 1 lseek: 1 rt_sigprocmask: 1 openat: 1 write: 1 nanosleep: 1 setpriority: 1 set_tid_address: 1 getdents64: 1 readlinkat: 1 read: 1 pread64: 1 gettimeofday: 1 faccessat: 1 exit_group: 1 restart_syscall: 1 rt_sigreturn: 1 getrandom: 1 madvise: 1