diff options
author | Tao Bao <tbao@google.com> | 2019-07-09 03:07:22 +0200 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2019-07-17 05:10:07 +0200 |
commit | 793e8943eb1f1c968923de51b18403e717a05c79 (patch) | |
tree | 11049890be096b1f457b7189d81942bd67310dc1 /minadbd | |
parent | Snap for 5674462 from cdbd84de26bb213fee6d8560976d9b99eea75f77 to qt-release (diff) | |
download | android_bootable_recovery-793e8943eb1f1c968923de51b18403e717a05c79.tar android_bootable_recovery-793e8943eb1f1c968923de51b18403e717a05c79.tar.gz android_bootable_recovery-793e8943eb1f1c968923de51b18403e717a05c79.tar.bz2 android_bootable_recovery-793e8943eb1f1c968923de51b18403e717a05c79.tar.lz android_bootable_recovery-793e8943eb1f1c968923de51b18403e717a05c79.tar.xz android_bootable_recovery-793e8943eb1f1c968923de51b18403e717a05c79.tar.zst android_bootable_recovery-793e8943eb1f1c968923de51b18403e717a05c79.zip |
Diffstat (limited to 'minadbd')
-rw-r--r-- | minadbd/minadbd_services.cpp | 8 | ||||
-rw-r--r-- | minadbd/minadbd_types.h | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/minadbd/minadbd_services.cpp b/minadbd/minadbd_services.cpp index 1c4c0f494..6c10274dc 100644 --- a/minadbd/minadbd_services.cpp +++ b/minadbd/minadbd_services.cpp @@ -173,6 +173,14 @@ static void RescueGetpropHostService(unique_fd sfd, const std::string& prop) { if (!android::base::WriteFully(sfd, result.data(), result.size())) { exit(kMinadbdHostSocketIOError); } + + // Send heartbeat signal to keep the rescue service alive. + if (!WriteCommandToFd(MinadbdCommand::kNoOp, minadbd_socket)) { + exit(kMinadbdSocketIOError); + } + if (MinadbdCommandStatus status; !WaitForCommandStatus(minadbd_socket, &status)) { + exit(kMinadbdMessageFormatError); + } } // Reboots into the given target. We don't reboot directly from minadbd, but going through recovery diff --git a/minadbd/minadbd_types.h b/minadbd/minadbd_types.h index 99fd45e83..002523f1f 100644 --- a/minadbd/minadbd_types.h +++ b/minadbd/minadbd_types.h @@ -53,6 +53,7 @@ enum class MinadbdCommand : uint32_t { kRebootRescue = 6, kWipeCache = 7, kWipeData = 8, + kNoOp = 9, // Last but invalid command. kError, |