Loading run-as/Android.bp 0 → 100644 +28 −0 Original line number Diff line number Diff line // // Copyright (C) 2018 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. // cc_binary { name: "run-as", srcs: [ "run-as.cpp", ], shared_libs: [ "libbase", "libselinux", "libpackagelistparser", "libminijail", ], } run-as/Android.mkdeleted 100644 → 0 +0 −8 Original line number Diff line number Diff line LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_CFLAGS := -Wall -Werror LOCAL_MODULE := run-as LOCAL_SHARED_LIBRARIES := libselinux libpackagelistparser libminijail LOCAL_SRC_FILES := run-as.cpp include $(BUILD_EXECUTABLE) run-as/run-as.cpp +8 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ #include <libminijail.h> #include <scoped_minijail.h> #include <android-base/properties.h> #include <packagelistparser/packagelistparser.h> #include <private/android_filesystem_config.h> #include <selinux/android.h> Loading @@ -40,6 +41,7 @@ // The 'run-as' binary is installed with CAP_SETUID and CAP_SETGID file // capabilities, but will check the following: // // - that the ro.boot.disable_runas property is not set // - that it is invoked from the 'shell' or 'root' user (abort otherwise) // - that '<package-name>' is the name of an installed and debuggable package // - that the package's data directory is well-formed Loading Loading @@ -139,6 +141,12 @@ int main(int argc, char* argv[]) { error(1, 0, "only 'shell' or 'root' users can run this program"); } // Some devices can disable running run-as, such as Chrome OS when running in // non-developer mode. if (android::base::GetBoolProperty("ro.boot.disable_runas", false)) { error(1, 0, "run-as is disabled from the kernel commandline"); } char* pkgname = argv[1]; int cmd_argv_offset = 2; Loading Loading
run-as/Android.bp 0 → 100644 +28 −0 Original line number Diff line number Diff line // // Copyright (C) 2018 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. // cc_binary { name: "run-as", srcs: [ "run-as.cpp", ], shared_libs: [ "libbase", "libselinux", "libpackagelistparser", "libminijail", ], }
run-as/Android.mkdeleted 100644 → 0 +0 −8 Original line number Diff line number Diff line LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_CFLAGS := -Wall -Werror LOCAL_MODULE := run-as LOCAL_SHARED_LIBRARIES := libselinux libpackagelistparser libminijail LOCAL_SRC_FILES := run-as.cpp include $(BUILD_EXECUTABLE)
run-as/run-as.cpp +8 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ #include <libminijail.h> #include <scoped_minijail.h> #include <android-base/properties.h> #include <packagelistparser/packagelistparser.h> #include <private/android_filesystem_config.h> #include <selinux/android.h> Loading @@ -40,6 +41,7 @@ // The 'run-as' binary is installed with CAP_SETUID and CAP_SETGID file // capabilities, but will check the following: // // - that the ro.boot.disable_runas property is not set // - that it is invoked from the 'shell' or 'root' user (abort otherwise) // - that '<package-name>' is the name of an installed and debuggable package // - that the package's data directory is well-formed Loading Loading @@ -139,6 +141,12 @@ int main(int argc, char* argv[]) { error(1, 0, "only 'shell' or 'root' users can run this program"); } // Some devices can disable running run-as, such as Chrome OS when running in // non-developer mode. if (android::base::GetBoolProperty("ro.boot.disable_runas", false)) { error(1, 0, "run-as is disabled from the kernel commandline"); } char* pkgname = argv[1]; int cmd_argv_offset = 2; Loading