summaryrefslogtreecommitdiffstats
path: root/adbbu/libtwadbbu.cpp
diff options
context:
space:
mode:
authorbigbiff bigbiff <bigbiff@teamw.in>2017-09-25 16:51:56 +0200
committerDees Troy <dees_troy@teamw.in>2017-11-27 16:43:20 +0100
commitadcb4d8cb7ee3ace4f0ee4a8ee8968b744db56b0 (patch)
tree0a1993c0cffa55a78c6674045c0b9083c22f2db8 /adbbu/libtwadbbu.cpp
parentADB Backup: add ability for TWRP GUI to restore (diff)
downloadandroid_bootable_recovery-adcb4d8cb7ee3ace4f0ee4a8ee8968b744db56b0.tar
android_bootable_recovery-adcb4d8cb7ee3ace4f0ee4a8ee8968b744db56b0.tar.gz
android_bootable_recovery-adcb4d8cb7ee3ace4f0ee4a8ee8968b744db56b0.tar.bz2
android_bootable_recovery-adcb4d8cb7ee3ace4f0ee4a8ee8968b744db56b0.tar.lz
android_bootable_recovery-adcb4d8cb7ee3ace4f0ee4a8ee8968b744db56b0.tar.xz
android_bootable_recovery-adcb4d8cb7ee3ace4f0ee4a8ee8968b744db56b0.tar.zst
android_bootable_recovery-adcb4d8cb7ee3ace4f0ee4a8ee8968b744db56b0.zip
Diffstat (limited to 'adbbu/libtwadbbu.cpp')
-rw-r--r--adbbu/libtwadbbu.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/adbbu/libtwadbbu.cpp b/adbbu/libtwadbbu.cpp
index a13ecb2c3..0c7f355fc 100644
--- a/adbbu/libtwadbbu.cpp
+++ b/adbbu/libtwadbbu.cpp
@@ -33,6 +33,7 @@
#include "twadbstream.h"
#include "libtwadbbu.hpp"
+#include "twrpback.hpp"
bool twadbbu::Check_ADB_Backup_File(std::string fname) {
struct AdbBackupStreamHeader adbbuhdr;
@@ -290,3 +291,16 @@ bool twadbbu::Write_TWENDADB() {
close(adb_control_bu_fd);
return true;
}
+
+bool twadbbu::Write_TWDATA(FILE* adbd_fp) {
+ struct AdbBackupControlType data_block;
+ memset(&data_block, 0, sizeof(data_block));
+ strncpy(data_block.start_of_header, TWRP, sizeof(data_block.start_of_header));
+ strncpy(data_block.type, TWDATA, sizeof(data_block.type));
+ data_block.crc = crc32(0L, Z_NULL, 0);
+ data_block.crc = crc32(data_block.crc, (const unsigned char*) &data_block, sizeof(data_block));
+ if (fwrite(&data_block, 1, sizeof(data_block), adbd_fp) != sizeof(data_block)) {
+ return false;
+ }
+ return true;
+}