summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Yifan Hong <elsk@google.com> 2021-11-18 05:34:46 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2021-11-18 05:34:46 +0000
commit3a5c775df96a6d2bbf65e619e74d94b649164bec (patch)
treeaf43ed815131da4b60a831bd24ab9c6abee8f914
parentbcc98984b537066ec148f8e6afa1dfdce95732d5 (diff)
parent83aa6dabeabb752e395eaa96c37f30ed12cd4201 (diff)
Merge "servicemanager: make recovery_available." am: f364c8d8f6 am: c9212ec27c am: 83aa6dabea
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1891077 Change-Id: Ie0d101d289fdabbcb9a567e2b359fdeba503eac4
-rw-r--r--cmds/servicemanager/Android.bp9
-rw-r--r--cmds/servicemanager/main.cpp4
-rw-r--r--cmds/servicemanager/servicemanager.recovery.rc4
3 files changed, 17 insertions, 0 deletions
diff --git a/cmds/servicemanager/Android.bp b/cmds/servicemanager/Android.bp
index 3ebdeee7aa..80c0548fca 100644
--- a/cmds/servicemanager/Android.bp
+++ b/cmds/servicemanager/Android.bp
@@ -47,6 +47,15 @@ cc_binary {
}
cc_binary {
+ name: "servicemanager.recovery",
+ stem: "servicemanager",
+ recovery: true,
+ defaults: ["servicemanager_defaults"],
+ init_rc: ["servicemanager.recovery.rc"],
+ srcs: ["main.cpp"],
+}
+
+cc_binary {
name: "vndservicemanager",
defaults: ["servicemanager_defaults"],
init_rc: ["vndservicemanager.rc"],
diff --git a/cmds/servicemanager/main.cpp b/cmds/servicemanager/main.cpp
index 8c1beaca20..2fb9c2bc9a 100644
--- a/cmds/servicemanager/main.cpp
+++ b/cmds/servicemanager/main.cpp
@@ -111,6 +111,10 @@ private:
};
int main(int argc, char** argv) {
+#ifdef __ANDROID_RECOVERY__
+ android::base::InitLogging(argv, android::base::KernelLogger);
+#endif
+
if (argc > 2) {
LOG(FATAL) << "usage: " << argv[0] << " [binder driver]";
}
diff --git a/cmds/servicemanager/servicemanager.recovery.rc b/cmds/servicemanager/servicemanager.recovery.rc
new file mode 100644
index 0000000000..067faf9c8f
--- /dev/null
+++ b/cmds/servicemanager/servicemanager.recovery.rc
@@ -0,0 +1,4 @@
+service servicemanager /system/bin/servicemanager
+ disabled
+ group system readproc
+ seclabel u:r:servicemanager:s0