Add checkpointing support for A/B updates

This adds implicit rollback support during A/B style updates.
If you explicitly start a checkpoint with -1, needsRollback will
trigger if the update fails, and should be used if any additional
cleanup is needed that is not covered by A/B itself.

Test: All Checkpoint tests pass
Bug: 111020314
Change-Id: I88b4a1098c6bac4dc1438a54c8a8f59577a6c17b
diff --git a/VoldNativeService.h b/VoldNativeService.h
index 9a05b45..594c002 100644
--- a/VoldNativeService.h
+++ b/VoldNativeService.h
@@ -116,6 +116,7 @@
 
     binder::Status startCheckpoint(int32_t retry, bool* _aidl_return);
     binder::Status needsCheckpoint(bool* _aidl_return);
+    binder::Status needsRollback(bool* _aidl_return);
     binder::Status commitChanges(bool* _aidl_return);
     binder::Status prepareDriveForCheckpoint(const std::string& mountPoint, bool* _aidl_return);
     binder::Status restoreCheckpoint(const std::string& mountPoint, bool* _aidl_return);